Check contexts availability. Some contexts limit where they can be used. For example, jobs.<job_id>.env workflow key does not allow accessing env context, but jobs.<job_id>.steps.env allows. See the official document for the complete list of contexts availability. (#180)
...
env:
TOPLEVEL: ...
jobs:
test:
runs-on: ubuntu-latest
env:
# ERROR: 'env' context is not available here
JOB_LEVEL: ${{ env.TOPLEVEL }}
steps:
- env:
# OK: 'env' context is available here
STEP_LEVEL: ${{ env.TOPLEVEL }}
...
actionlint reports the context is not available and what contexts are available as follows:
test.yaml:11:22: context "env" is not allowed here. available contexts are "github", "inputs", "matrix", "needs", "secrets", "strategy". see https://docs.github.com/en/actions/learn-github-actions/contexts#context-availability for more details [expression]
|
11 | JOB_LEVEL: ${{ env.TOPLEVEL }}
| ^~~~~~~~~~~~
Check special functions availability. Some functions limit where they can be used. For example, status functions like success() or failure() are only available in conditions of if:. See the official document for the complete list of special functions availability. (#214)
...
steps:
ERROR: 'success()' function is not available here
run: echo 'Success? ${{ success() }}'
OK: 'success()' function is available here
if: success()
actionlint reports success() is not available and where the function is available as follows:
test.yaml:8:33: calling function "success" is not allowed here. "success" is only available in "jobs.<job_id>.if", "jobs.<job_id>.steps.if". see https://docs.github.com/en/actions/learn-github-actions/contexts#context-availability for more details [expression]
|
8 | - run: echo 'Success? ${{ success() }}'
| ^~~~~~~~~
Fix inputs context is not available in run-name: section. (#223)
Allow dynamic shell configuration like shell: ${{ env.SHELL }}.
Fix no error is reported when on: does not exist at toplevel. (#232)
Fix an error position is not correct when the error happens at root node of workflow AST.
Fix an incorrect empty event is parsed when on: section is empty.
Fix the error message when parsing an unexpected key on toplevel. (#231, thanks @norwd)
Check contexts availability. Some contexts limit where they can be used. For example, jobs.<job_id>.env workflow key does not allow accessing env context, but jobs.<job_id>.steps.env allows. See the official document for the complete list of contexts availability. (#180)
...
env:
TOPLEVEL: ...
jobs:
test:
runs-on: ubuntu-latest
env:
# ERROR: 'env' context is not available here
JOB_LEVEL: ${{ env.TOPLEVEL }}
steps:
- env:
# OK: 'env' context is available here
STEP_LEVEL: ${{ env.TOPLEVEL }}
...
actionlint reports the context is not available and what contexts are available as follows:
test.yaml:11:22: context "env" is not allowed here. available contexts are "github", "inputs", "matrix", "needs", "secrets", "strategy". see https://docs.github.com/en/actions/learn-github-actions/contexts#context-availability for more details [expression]
|
11 | JOB_LEVEL: ${{ env.TOPLEVEL }}
| ^~~~~~~~~~~~
Check special functions availability. Some functions limit where they can be used. For example, status functions like success() or failure() are only available in conditions of if:. See the official document for the complete list of special functions availability. (#214)
...
steps:
ERROR: 'success()' function is not available here
run: echo 'Success? ${{ success() }}'
OK: 'success()' function is available here
if: success()
actionlint reports success() is not available and where the function is available as follows:
test.yaml:8:33: calling function "success" is not allowed here. "success" is only available in "jobs.<job_id>.if", "jobs.<job_id>.steps.if". see https://docs.github.com/en/actions/learn-github-actions/contexts#context-availability for more details [expression]
|
8 | - run: echo 'Success? ${{ success() }}'
| ^~~~~~~~~
Fix inputs context is not available in run-name: section. (#223)
Allow dynamic shell configuration like shell: ${{ env.SHELL }}.
Fix no error is reported when on: does not exist at toplevel. (#232)
Fix an error position is not correct when the error happens at root node of workflow AST.
Fix an incorrect empty event is parsed when on: section is empty.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps github.com/rhysd/actionlint from 1.6.20 to 1.6.21.
Release notes
Sourced from github.com/rhysd/actionlint's releases.
... (truncated)
Changelog
Sourced from github.com/rhysd/actionlint's changelog.
... (truncated)
Commits
bb1cfc3
bump up version to v1.6.2179e852a
update playground dependencies28d27a9
improve example and description of contexts and special function availability...29fe73a
add test to check context availability ofrun-name
ce0f432
fix build broken by the previous merge011c6a1
Merge branch 'ctx-spfn-availability' (fixes #180, fixes #214)acac1d1
add example test for contexts and special functions availablity checks852639b
describe contexts and special function availability checks in document9fe29a4
Merge pull request #233 from rhysd/ci/320874068511b4bc3
update generated files bygo generate
on CIDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)