I need to run only on branches what ends with specified env variable.
Let's pretend that we are on feat/project-name branch and this is may workflow.yml:
env:
PROJECT: project-name
on:
push:
# only for branches what ends with given project name
branches:
- "**$PROJECT"
Above not work. Below, hard coded is OK:
env:
PROJECT: project-name
on:
push:
# only for branches what ends with given project name
branches:
- "**project-name"
Tried with: "**${{ env.PROJECT }}" and other configuration and nothing works.
You can configure env variables at the workflow level, but you can't use them at that level.
According to the documentation (reference 1 and reference 2):
In your example, the environment variable is used at the workflow level (in the trigger
onconfiguration), not inside a jobsteps, and the GitHub interpreter doesn't interpolate the value at that level.You would need to hardcode the value at that level, or receive it as input (
${{ inputs.value }}) from another workflow (or from the GitHub API).