I want to use some variables to set values in GitHub actions steps.
Environment variables tells us that we can set custom environment variables in your workflow file.
By default, Linux runners use the bash shell, so you must use the syntax
$NAME.
So I try
name: Workflow
on:
push:
branches:
- main
pull_request:
env:
General_Timeout_Minutes: 15
jobs:
test:
name: Test
runs-on: ubuntu-latest
env:
Setup_Timeout_Minutes: 10
Lint_Timeout_Minutes: $General_Timeout_Minutes
Unit_Test_Timeout_Minutes: $General_Timeout_Minutes
E2E_Timeout_Minutes: $General_Timeout_Minutes
steps:
- uses: actions/checkout@v2
- name: Setup
timeout-minutes: $Setup_Timeout_Minutes
run: npm install
- name: Lint JavaScript
timeout-minutes: $Lint_Timeout_Minutes
run: npm run lint
- name: Run JavaScript tests
timeout-minutes: $Unit_Test_Timeout_Minutes
run: npm run unit-test
- name: Run end-to-end browser tests
timeout-minutes: $E2E_Timeout_Minutes
run: npm run e2e-test
deploy:
...
However, GitHub actions starts fail with
The workflow is not valid. .github/workflows/test.yml: Unexpected value '$Setup_Timeout_Minutes' .github/workflows/test.yml: Unexpected value '$Lint_Timeout_Minutes'
How to use variables in timeout-minutes syntax?