Free Screenly Player with every Business or Enterprise yearly plan. How it works →

September 8, 2026

Each environment's Edge App id comes from a repository variable

An Edge App that runs in stage and production has 2 ids, and until now each one lived in its own manifest: screenly_qc.yml for stage and screenly.yml for production. A setting added to one file had to be added to the other.

With the new edge_app_id input, the id comes from the workflow instead. Keep each environment’s id in a repository variable and pass the matching one:

- uses: Screenly/edge-apps-actions/[email protected]
  with:
    screenly_api_token: ${{ secrets.SCREENLY_API_TOKEN }}
    environment: stage
    edge_app_id: ${{ vars.STAGE_EDGE_APP_ID }}

When edge_app_id is set, the action reads screenly.yml in both environments, and the id you pass wins over any id in the manifest. So 1 manifest serves stage and production, and only the variable changes between them.

Leave it out and nothing changes: stage still reads screenly_qc.yml, and production reads screenly.yml, each with its own id.