From 0c691cdefb5a74364585a23f6ffdfd55a89dd9f7 Mon Sep 17 00:00:00 2001 From: Anton Franzluebbers Date: Wed, 26 Jul 2023 12:17:37 -0400 Subject: [PATCH 1/7] simplify deploy actions, make static velconnect url available, smaller bugs --- ...deploy_oracle_v3.yml => deploy_oracle.yml} | 2 +- .github/workflows/deploy_oracle_v2.yml | 20 ------------------- .github/workflows/publish_cloudflare.yml | 1 - unity_package/Runtime/VELConnectManager.cs | 1 + unity_package/package.json | 2 +- velconnect-svelte-npm/package.json | 2 +- velconnect-svelte-npm/src/index.ts | 4 +++- 7 files changed, 7 insertions(+), 25 deletions(-) rename .github/workflows/{deploy_oracle_v3.yml => deploy_oracle.yml} (93%) delete mode 100644 .github/workflows/deploy_oracle_v2.yml diff --git a/.github/workflows/deploy_oracle_v3.yml b/.github/workflows/deploy_oracle.yml similarity index 93% rename from .github/workflows/deploy_oracle_v3.yml rename to .github/workflows/deploy_oracle.yml index 9a8de9d..9ebbf0c 100644 --- a/.github/workflows/deploy_oracle_v3.yml +++ b/.github/workflows/deploy_oracle.yml @@ -2,7 +2,7 @@ name: Deploy to VelNet Oracle server (Pocketbase edition) on: push: - branches: ["feature/pocketbase-server"] + branches: ["main"] paths: ["velconnect/**"] jobs: run_pull: diff --git a/.github/workflows/deploy_oracle_v2.yml b/.github/workflows/deploy_oracle_v2.yml deleted file mode 100644 index bfcb029..0000000 --- a/.github/workflows/deploy_oracle_v2.yml +++ /dev/null @@ -1,20 +0,0 @@ -name: Deploy to VelNet Oracle server - -on: - push: - branches: ["main"] - paths: ["velconnect/**"] -jobs: - run_pull: - name: Pull new version - runs-on: ubuntu-latest - steps: - - name: install ssh keys - run: | - install -m 600 -D /dev/null ~/.ssh/id_rsa - echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_rsa - ssh-keyscan -H ${{ secrets.SSH_HOST }} > ~/.ssh/known_hosts - - name: connect and pull - run: ssh ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }} "cd /home/ubuntu/VEL-Connect-v2/velconnect && git pull && docker compose up -d --build && exit" - - name: cleanup - run: rm -rf ~/.ssh diff --git a/.github/workflows/publish_cloudflare.yml b/.github/workflows/publish_cloudflare.yml index 27fc5a6..a69f7c5 100644 --- a/.github/workflows/publish_cloudflare.yml +++ b/.github/workflows/publish_cloudflare.yml @@ -3,7 +3,6 @@ env: on: push: - branches: ["feature/pocketbase-server"] paths: ["example_dashboard/**"] jobs: diff --git a/unity_package/Runtime/VELConnectManager.cs b/unity_package/Runtime/VELConnectManager.cs index dfa319a..2bdab21 100644 --- a/unity_package/Runtime/VELConnectManager.cs +++ b/unity_package/Runtime/VELConnectManager.cs @@ -19,6 +19,7 @@ namespace VELConnect public class VELConnectManager : MonoBehaviour { public string velConnectUrl = "http://localhost"; + public static string VelConnectUrl => instance.velConnectUrl; private static VELConnectManager instance; public class State diff --git a/unity_package/package.json b/unity_package/package.json index c0f94a6..bbf7a92 100644 --- a/unity_package/package.json +++ b/unity_package/package.json @@ -1,7 +1,7 @@ { "name": "edu.uga.engr.vel.vel-connect", "displayName": "VEL-Connect", - "version": "2.0.2", + "version": "2.0.3", "unity": "2019.1", "description": "Web-based configuration for VR applications", "keywords": [], diff --git a/velconnect-svelte-npm/package.json b/velconnect-svelte-npm/package.json index 3b9eb18..81d8484 100644 --- a/velconnect-svelte-npm/package.json +++ b/velconnect-svelte-npm/package.json @@ -1,6 +1,6 @@ { "name": "@velaboratory/velconnect-svelte", - "version": "1.0.3", + "version": "1.0.4", "description": "Use VEL-Connect with a Svelte dashboard", "main": "src/index.js", "files": [ diff --git a/velconnect-svelte-npm/src/index.ts b/velconnect-svelte-npm/src/index.ts index 27e814a..9d446d5 100644 --- a/velconnect-svelte-npm/src/index.ts +++ b/velconnect-svelte-npm/src/index.ts @@ -29,6 +29,7 @@ export interface Device extends Record { current_room: string; current_app: string; pairing_code: string; + last_online: string; data: string; expand: { data?: DataBlock }; } @@ -229,7 +230,6 @@ export async function pair(pairingCode: string) { .getFirstListItem(`pairing_code="${pairingCode}"`)) as Device; // add it to the local data - currentDeviceId.set(device.id); if (!get(pairedDevices).includes(device.id)) { pairedDevices.set([...get(pairedDevices), device.id]); } @@ -262,6 +262,8 @@ export async function pair(pairingCode: string) { await pb.collection("Users").update(u.id, u); } + currentDeviceId.set(device.id); + return { error: null }; } catch (e) { console.error("Not found: " + e); From ae2d13026be7c3b127c469cd06beef3cd2cee4b1 Mon Sep 17 00:00:00 2001 From: Anton Franzluebbers Date: Wed, 26 Jul 2023 12:34:52 -0400 Subject: [PATCH 2/7] add velconnect url to env var in example dashboard --- example_dashboard/package-lock.json | 43 +++++++++++++++++++---- example_dashboard/package.json | 4 ++- example_dashboard/src/app.d.ts | 2 +- example_dashboard/src/routes/+page.svelte | 5 +-- 4 files changed, 43 insertions(+), 11 deletions(-) diff --git a/example_dashboard/package-lock.json b/example_dashboard/package-lock.json index ab0b47b..5dd8fe8 100644 --- a/example_dashboard/package-lock.json +++ b/example_dashboard/package-lock.json @@ -8,7 +8,7 @@ "name": "example-dashboard", "version": "0.0.1", "dependencies": { - "@velaboratory/velconnect-svelte": "^1.0.2" + "@velaboratory/velconnect-svelte": "^1.0.3" }, "devDependencies": { "@sveltejs/adapter-cloudflare": "^2.3.1", @@ -18,6 +18,8 @@ "eslint": "^8.28.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-svelte": "^2.30.0", + "humanize-duration": "^3.29.0", + "luxon": "^3.3.0", "prettier": "^2.8.0", "prettier-plugin-svelte": "^2.10.1", "sass": "^1.63.6", @@ -898,9 +900,9 @@ } }, "node_modules/@velaboratory/velconnect-svelte": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@velaboratory/velconnect-svelte/-/velconnect-svelte-1.0.2.tgz", - "integrity": "sha512-vcoMjyqg+FBfhZami68G0+ewP4spzno8U9uiRuzqd9wIWBiE8FV3Zs5dbw5pXFU87uUv495fZrPkYeL7tsH+Mw==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@velaboratory/velconnect-svelte/-/velconnect-svelte-1.0.3.tgz", + "integrity": "sha512-EDyUnfx5Ovubu2W2dY16XQYgAyt4i+osEqxUAB92KiKxZFZge8LB4RvsMRyZiKw9maIesPWCZVPxEfTJ1v14OA==", "dependencies": { "pocketbase": "^0.15.3", "svelte": "^4.0.5" @@ -1814,6 +1816,12 @@ "node": ">=8" } }, + "node_modules/humanize-duration": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/humanize-duration/-/humanize-duration-3.29.0.tgz", + "integrity": "sha512-G5wZGwYTLaQAmYqhfK91aw3xt6wNbJW1RnWDh4qP1PvF4T/jnkjx2RVhG5kzB2PGsYGTn+oSDBQp+dMdILLxcg==", + "dev": true + }, "node_modules/ignore": { "version": "5.2.4", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", @@ -2034,6 +2042,15 @@ "node": ">=10" } }, + "node_modules/luxon": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/luxon/-/luxon-3.3.0.tgz", + "integrity": "sha512-An0UCfG/rSiqtAIiBPO0Y9/zAnHUZxAMiCpTd5h2smgsj7GGmcenvrvww2cqNA8/4A5ZrD1gJpHN2mIHZQF+Mg==", + "dev": true, + "engines": { + "node": ">=12" + } + }, "node_modules/magic-string": { "version": "0.30.1", "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.1.tgz", @@ -3715,9 +3732,9 @@ } }, "@velaboratory/velconnect-svelte": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@velaboratory/velconnect-svelte/-/velconnect-svelte-1.0.2.tgz", - "integrity": "sha512-vcoMjyqg+FBfhZami68G0+ewP4spzno8U9uiRuzqd9wIWBiE8FV3Zs5dbw5pXFU87uUv495fZrPkYeL7tsH+Mw==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@velaboratory/velconnect-svelte/-/velconnect-svelte-1.0.3.tgz", + "integrity": "sha512-EDyUnfx5Ovubu2W2dY16XQYgAyt4i+osEqxUAB92KiKxZFZge8LB4RvsMRyZiKw9maIesPWCZVPxEfTJ1v14OA==", "requires": { "pocketbase": "^0.15.3", "svelte": "^4.0.5" @@ -4402,6 +4419,12 @@ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, + "humanize-duration": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/humanize-duration/-/humanize-duration-3.29.0.tgz", + "integrity": "sha512-G5wZGwYTLaQAmYqhfK91aw3xt6wNbJW1RnWDh4qP1PvF4T/jnkjx2RVhG5kzB2PGsYGTn+oSDBQp+dMdILLxcg==", + "dev": true + }, "ignore": { "version": "5.2.4", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", @@ -4574,6 +4597,12 @@ "yallist": "^4.0.0" } }, + "luxon": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/luxon/-/luxon-3.3.0.tgz", + "integrity": "sha512-An0UCfG/rSiqtAIiBPO0Y9/zAnHUZxAMiCpTd5h2smgsj7GGmcenvrvww2cqNA8/4A5ZrD1gJpHN2mIHZQF+Mg==", + "dev": true + }, "magic-string": { "version": "0.30.1", "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.1.tgz", diff --git a/example_dashboard/package.json b/example_dashboard/package.json index e1dda5d..99ace48 100644 --- a/example_dashboard/package.json +++ b/example_dashboard/package.json @@ -19,6 +19,8 @@ "eslint": "^8.28.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-svelte": "^2.30.0", + "humanize-duration": "^3.29.0", + "luxon": "^3.3.0", "prettier": "^2.8.0", "prettier-plugin-svelte": "^2.10.1", "sass": "^1.63.6", @@ -31,6 +33,6 @@ }, "type": "module", "dependencies": { - "@velaboratory/velconnect-svelte": "^1.0.2" + "@velaboratory/velconnect-svelte": "^1.0.3" } } diff --git a/example_dashboard/src/app.d.ts b/example_dashboard/src/app.d.ts index f59b884..50f31d2 100644 --- a/example_dashboard/src/app.d.ts +++ b/example_dashboard/src/app.d.ts @@ -9,4 +9,4 @@ declare global { } } -export {}; +export { }; diff --git a/example_dashboard/src/routes/+page.svelte b/example_dashboard/src/routes/+page.svelte index 4b7a56b..cb58bc8 100644 --- a/example_dashboard/src/routes/+page.svelte +++ b/example_dashboard/src/routes/+page.svelte @@ -16,9 +16,10 @@ import Pair from '$lib/components/Pair.svelte'; import { prettyDate } from '$lib/js/util'; import { onDestroy, onMount } from 'svelte'; + import { PUBLIC_VELCONNECT_URL } from '$env/static/public'; onMount(async () => { - await startListening('http://localhost:8090'); + await startListening(PUBLIC_VELCONNECT_URL); }); onDestroy(() => { stopListening(); @@ -104,7 +105,7 @@ on:input={delayedSend} /> - +