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
on
configuration), 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).