Initialize runs once per environment and shows the new id right away
initialize stops when the environment's id variable is already set, and puts the new Edge App's id in the job summary as soon as the app is created.
initialize is for the first deploy to an environment, and it holds to that now. Pass it the
environment's id variable, and if the variable is set, the run stops with an error that points you
to update:
- uses: Screenly/edge-apps-actions/[email protected]
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: ${{ (inputs.environment == 'production' && vars.PRODUCTION_EDGE_APP_ID) || (inputs.environment == 'stage' && vars.STAGE_EDGE_APP_ID) || '' }}
The new app's id shows up as soon as the app exists, before the build and deploy steps: as a notice in the log, and under "Edge App id" in the job summary, together with the name of the variable to set. If a later step fails, you still have the id.
To start an environment over, delete its Edge App in Screenly, clear the id variable, and run
initialize again.
If this affects you: if a workflow runs
initializewithedge_app_idset to deploy to an app that already exists, that run now fails. Move that job to theupdateaction, which takes the samescreenly_api_token,environment, andedge_app_idinputs.