testcase:
jobs:
job1:
env: &env_vars NODE_ENV: production
DATABASE_URL: ${{ secrets.DATABASE_URL }}
steps:
- run: echo "Using production settings"
job2:
env: *env_vars steps:
- run: echo "Same environment variables here"
job3:
env: &env_vars
NODE_ENV: staging
DATABASE_URL: ${{ secrets.STAGING_DB }}
steps:
- run: echo "Staging environment"
job4:
matrix: [&ver v1, *ver, &ver v2, *ver]
env: *env_vars steps:
- run: echo "Also staging"
queries:
- query: [jobs, job2, env, DATABASE_URL]
mode: exact
expected: "${{ secrets.DATABASE_URL }}"
- query: [jobs, job2, env, DATABASE_URL]
mode: key-only
expected: " DATABASE_URL"
- query: [jobs, job2, env, NODE_ENV]
mode: exact
expected: "production"
- query: [jobs, job4, env, NODE_ENV]
mode: exact
expected: "staging"
- query: [jobs, job4, env, DATABASE_URL]
mode: exact
expected: "${{ secrets.STAGING_DB }}"
- query: [jobs, job4, matrix, 0]
mode: exact
expected: "v1"
- query: [jobs, job4, matrix, 1]
mode: exact
expected: "v1"
- query: [jobs, job4, matrix, 2]
mode: exact
expected: "v2"
- query: [jobs, job4, matrix, 3]
mode: exact
expected: "v2"