From 5c1451848ff5fcf9f9937b46a1ad1c6efd50e1b0 Mon Sep 17 00:00:00 2001 From: nicomiguelino Date: Thu, 3 Sep 2026 14:39:53 -0700 Subject: [PATCH 1/4] Use EDGE_APP_ID for stage and production deploys Set STAGE_EDGE_APP_ID and PRODUCTION_EDGE_APP_ID repo variables and pass them through to the initialize/update actions as edge_app_id, falling back from an EDGE_APP_ID environment secret so this upgrades cleanly once one is set. Drop the id from screenly.yml and delete screenly_qc.yml since a single manifest is now used regardless of environment. Pin the edge-apps-actions ref to a commit until v26.9.0 can be tagged. --- .env.example | 3 + .github/workflows/initialize-edge-app.yml | 3 +- .github/workflows/update-edge-app.yml | 6 +- .gitignore | 1 + screenly.yml | 1 - screenly_qc.yml | 88 ----------------------- 6 files changed, 10 insertions(+), 92 deletions(-) create mode 100644 .env.example delete mode 100644 screenly_qc.yml diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..9e0db2f --- /dev/null +++ b/.env.example @@ -0,0 +1,3 @@ +# Copy to .env and fill in to target a specific Edge App when running the +# screenly CLI locally. Takes precedence over the id in screenly.yml. +EDGE_APP_ID= diff --git a/.github/workflows/initialize-edge-app.yml b/.github/workflows/initialize-edge-app.yml index 29fce8e..46903ad 100644 --- a/.github/workflows/initialize-edge-app.yml +++ b/.github/workflows/initialize-edge-app.yml @@ -32,9 +32,10 @@ jobs: - uses: actions/checkout@v7 with: ref: ${{ inputs.environment == 'production' && 'main' || github.ref }} - - uses: Screenly/edge-apps-actions/initialize@v1 + - uses: Screenly/edge-apps-actions/initialize@f4ccd2bd50db5fb0a5147d287ac03cafe552d29b with: screenly_api_token: ${{ secrets.SCREENLY_API_TOKEN }} edge_app_name: ${{ inputs.edge_app_name }} edge_app_title: ${{ inputs.edge_app_title }} environment: ${{ inputs.environment }} + edge_app_id: ${{ secrets.EDGE_APP_ID || (inputs.environment == 'production' && vars.PRODUCTION_EDGE_APP_ID || vars.STAGE_EDGE_APP_ID) }} diff --git a/.github/workflows/update-edge-app.yml b/.github/workflows/update-edge-app.yml index 7ec2285..219c2a6 100644 --- a/.github/workflows/update-edge-app.yml +++ b/.github/workflows/update-edge-app.yml @@ -18,11 +18,12 @@ jobs: environment: stage steps: - uses: actions/checkout@v7 - - uses: Screenly/edge-apps-actions/update@v1 + - uses: Screenly/edge-apps-actions/update@f4ccd2bd50db5fb0a5147d287ac03cafe552d29b with: screenly_api_token: ${{ secrets.SCREENLY_API_TOKEN }} environment: stage delete_missing_settings: 'true' + edge_app_id: ${{ secrets.EDGE_APP_ID || vars.STAGE_EDGE_APP_ID }} deploy-production: name: Updating Clock App in production @@ -31,8 +32,9 @@ jobs: environment: production steps: - uses: actions/checkout@v7 - - uses: Screenly/edge-apps-actions/update@v1 + - uses: Screenly/edge-apps-actions/update@f4ccd2bd50db5fb0a5147d287ac03cafe552d29b with: screenly_api_token: ${{ secrets.SCREENLY_API_TOKEN }} environment: production delete_missing_settings: 'true' + edge_app_id: ${{ secrets.EDGE_APP_ID || vars.PRODUCTION_EDGE_APP_ID }} diff --git a/.gitignore b/.gitignore index 8cca084..47af923 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,4 @@ mock-data.yml static/js/*.js static/js/*.js.map screenshots/*.png +.env diff --git a/screenly.yml b/screenly.yml index 1af27d9..7e9cab8 100644 --- a/screenly.yml +++ b/screenly.yml @@ -1,6 +1,5 @@ --- syntax: manifest_v1 -id: 01HKT2K8GVE8P6RE36QFKPG5G1 description: Screenly Clock Edge App icon: https://playground.srly.io/edge-apps/icons/clock.svg author: Screenly, Inc. diff --git a/screenly_qc.yml b/screenly_qc.yml deleted file mode 100644 index 00a6039..0000000 --- a/screenly_qc.yml +++ /dev/null @@ -1,88 +0,0 @@ ---- -syntax: manifest_v1 -id: 01JZHR7YXWK81TNPY9F9JKQ5H4 -description: Screenly Clock Edge App -icon: https://playground.srly.io/edge-apps/icons/clock.svg -author: Screenly, Inc. -categories: - - Utilities -ready_signal: true -settings: - enable_analytics: - type: string - default_value: 'true' - title: Enable Analytics - optional: true - help_text: Enable or disable Sentry and Google Analytics integrations. - is_global: true - openweathermap_api_key: - type: secret - title: OpenWeatherMap API Key - optional: true - help_text: - properties: - help_text: | - Enter your OpenWeatherMap API key to access weather data. If not provided, weather information will not be displayed. - You can get your API key from https://openweathermap.org/api. - type: string - schema_version: 1 - is_global: true - override_locale: - type: string - default_value: en - title: Override Locale - optional: true - help_text: | - Override the default locale with a supported language code (e.g., en, fr, de). Defaults to English if not specified. - You can find the available locales here: https://momentjs.com/ - override_timezone: - type: string - default_value: '' - title: Override Timezone - optional: true - help_text: | - Override the default timezone with a supported timezone identifier (e.g., Europe/London, America/New_York). Defaults to the system timezone if left blank. - You can find the available timezones here: https://momentjs.com/timezone/ - style: - type: string - default_value: traditional - title: Style - optional: true - help_text: - properties: - help_text: Select the visual style for the clock. - options: - - label: Traditional - value: traditional - - label: Modern - value: modern - - label: Minimal - value: minimal - type: select - schema_version: 1 - tag_manager_id: - type: string - default_value: GTM-P98SPZ9Z - title: Google Tag Manager ID - optional: true - help_text: | - Enter your Google Tag Manager container ID to enable tracking and analytics. - is_global: true - unit: - type: string - default_value: auto - title: Measurement Unit - optional: true - help_text: - properties: - advanced: true - help_text: Select the measurement unit for temperature display. - options: - - label: Auto (based on location) - value: auto - - label: Metric (°C) - value: metric - - label: Imperial (°F) - value: imperial - type: select - schema_version: 1 From c25caacf4cdba60fe9b2e10ce172698e093ce07d Mon Sep 17 00:00:00 2001 From: nicomiguelino Date: Thu, 3 Sep 2026 15:12:21 -0700 Subject: [PATCH 2/4] fix(ci): avoid cross-environment edge_app_id fallback, drop unused .env.example - Only fall back to the stage variable when the target environment is stage - Remove .env.example since the CLI doesn't load .env files --- .env.example | 3 --- .github/workflows/initialize-edge-app.yml | 2 +- 2 files changed, 1 insertion(+), 4 deletions(-) delete mode 100644 .env.example diff --git a/.env.example b/.env.example deleted file mode 100644 index 9e0db2f..0000000 --- a/.env.example +++ /dev/null @@ -1,3 +0,0 @@ -# Copy to .env and fill in to target a specific Edge App when running the -# screenly CLI locally. Takes precedence over the id in screenly.yml. -EDGE_APP_ID= diff --git a/.github/workflows/initialize-edge-app.yml b/.github/workflows/initialize-edge-app.yml index 46903ad..48932f3 100644 --- a/.github/workflows/initialize-edge-app.yml +++ b/.github/workflows/initialize-edge-app.yml @@ -38,4 +38,4 @@ jobs: edge_app_name: ${{ inputs.edge_app_name }} edge_app_title: ${{ inputs.edge_app_title }} environment: ${{ inputs.environment }} - edge_app_id: ${{ secrets.EDGE_APP_ID || (inputs.environment == 'production' && vars.PRODUCTION_EDGE_APP_ID || vars.STAGE_EDGE_APP_ID) }} + edge_app_id: ${{ secrets.EDGE_APP_ID || (inputs.environment == 'production' && vars.PRODUCTION_EDGE_APP_ID || (inputs.environment == 'stage' && vars.STAGE_EDGE_APP_ID)) }} From 2fb616544b1575a1cd376dc3fd97829e030fe4e0 Mon Sep 17 00:00:00 2001 From: nicomiguelino Date: Thu, 3 Sep 2026 15:33:20 -0700 Subject: [PATCH 3/4] temporary: add marker header to verify deploy pipeline --- index.html | 1 + 1 file changed, 1 insertion(+) diff --git a/index.html b/index.html index bb90b18..d4bb3e7 100644 --- a/index.html +++ b/index.html @@ -7,6 +7,7 @@ +

TEMP PIPELINE TEST

Date: Thu, 3 Sep 2026 15:35:46 -0700 Subject: [PATCH 4/4] Revert "temporary: add marker header to verify deploy pipeline" This reverts commit 2fb616544b1575a1cd376dc3fd97829e030fe4e0. --- index.html | 1 - 1 file changed, 1 deletion(-) diff --git a/index.html b/index.html index d4bb3e7..bb90b18 100644 --- a/index.html +++ b/index.html @@ -7,7 +7,6 @@ -

TEMP PIPELINE TEST