8e6eb4f6d8
* lint and action updates * add custom image tag action * remove publish infra bloat * replace cancel action with native concurrency control * ignore all docs changes for release trigger * image action updates * update publish trigger paths * simplify semver checks * make it possible to call publish * add tests for custom action * rename publish workflows * call publish after successful package release * fix inputs and published package parsing * clarify image tag action errors * move test action * add test events * add changesets action mock * add docs checks * add github action test readme * fix docs check on push * update action versions in docs * cache npm for docs check * pretend to fix bad docs link * fix docs link * Revert "fix docs link" This reverts commita7508f5d55. * Revert "Revert "fix docs link"" This reverts commitec642af3dc. * improve caching * disable automatic publishing after release * limit docs checks to pushes to main and PRs * fix broken links * prevent word splitting and globbing * use latest checkout action everywhere * correctly detect prereleases as valid semver * update to latest cache action
GitHub Action Tests
This directory contains necessary files to allow local testing of GitHub Actions workflows, composite actions, etc. You will need to install act to perform tests.
Workflow tests
Trigger specific workflow files by specifying their full path:
act -W .github/workflow/release.yml
You will likely need to override any custom runners we use, e.g. buildjet. For example:
override=catthehacker/ubuntu:act-latest
act -W .github/workflow/release.yml \
-P buildjet-8vcpu-ubuntu-2204=$override
# override multiple images at the same time
act -W .github/workflow/release.yml \
-P buildjet-8vcpu-ubuntu-2204=$override \
-P buildjet-16vcpu-ubuntu-2204=$override
Trigger with specific event payloads to test pushing to branches or tags:
override=catthehacker/ubuntu:act-latest
# simulate push to main
act -W .github/workflow/publish.yml \
-P buildjet-8vcpu-ubuntu-2204=$override \
-P buildjet-16vcpu-ubuntu-2204=$override \
-e .github/events/push-tag-main.json
# simulate a `build-` prefixed tag
act -W .github/workflow/publish.yml \
-P buildjet-8vcpu-ubuntu-2204=$override \
-P buildjet-16vcpu-ubuntu-2204=$override \
-e .github/events/push-tag-buld.json
By default, act will send a push event. To trigger a different event:
# basic syntax
act <EVENT> ...
# simulate a pull request
act pull_request
# only trigger a specific workflow
act pull_request -W .github/workflow/pr_checks.yml
Composite action tests
The composite (custom) action tests can be run by triggering the test-actions workflow:
act -W .github/test/test-actions.yml
Helpful flags
--pull=false- perform fully offline tests if all images are already present-j <job_name>- run the specified job only-l push- list all workflows with push triggers