Development
If you are interested in Action Development, these resources may help.
Unpublished Actions
These are actions I have not published. Some of which I use internally.
| Unpublished - 7 | Updated | Language | |||
|---|---|---|---|---|---|
| create-files-action | |||||
| draft-release-action | |||||
| env-json-action | |||||
| push-artifacts-action | |||||
| validate-outputs-action | |||||
| update-release-notes-action | |||||
| combine-release-notes-action |
Template Actions
These are actions I use as starting points for creating new actions.
| Template - 4 | Updated | Language | |||
|---|---|---|---|---|---|
| js-test-action | |||||
| py-test-action | |||||
| ts-test-action | |||||
| docker-test-action |
Get Started
Running Locally nektos/act
The most important tool for developing actions is nektos/act.
Run from source
Instead of using a watcher you can change the runs: in your action.yml to your source file and run act with --use-gitignore=false so the node_modules folder is copied with your files.
act -j test --use-gitignore=falseSecrets, env, event
For secrets and environment variables you can just create a .secrets and .env file.
To customize the github event add an event.json file and run act with -e event.json.
act -j test -e event.jsonevent.json
This lets you skip workflow steps with this if: ${{ !github.event.act }}
{
"act": true
}Debug logging
The best way to see all log output is to enable RUNNER_DEBUG and show secrets.
Because of everything covered, this is the command I usually run.
act -j test -e event.json --use-gitignore=false --insecure-secrets --env RUNNER_DEBUG=1