courgette/WORKFLOW_SUPPORT.md

55 lines
1.6 KiB
Markdown

# Workflow support
Using [Github Actions workflow
syntax](https://docs.github.com/en/actions/writing-workflows/workflow-syntax-for-github-actions) as a guide, here is an overview of the feature support / parity of Courgette:
## Schema keys
- [ ] name
- [ ] run-name
- [ ] on
- [ ] permissions
- [ ] env
- [ ] defaults
- [x] jobs
- [x] jobs.<job_id>.name
- [ ] jobs.<job_id>.permissions
- [x] jobs.<job_id>.needs (ordering, not success)
- [ ] jobs.<job_id>.if
- [x] jobs.<job_id>.runs-on
- [ ] jobs.<job_id>.environment
- [ ] jobs.<job_id>.concurrency
- [ ] jobs.<job_id>.outputs
- [ ] jobs.<job_id>.env
- [x] jobs.<job_id>.defaults
- [ ] jobs.<job_id>.run.shell
- [x] jobs.<job_id>.run.working-directory
- [ ] jobs.<job_id>.timeout-minutes
- [ ] jobs.<job_id>.strategy
- [ ] jobs.<job_id>.container
- [x] jobs.<job_id>.continue-on-error
- [ ] jobs.<job_id>.services
- [ ] jobs.<job_id>.uses
- [ ] jobs.<job_id>.with
- [ ] jobs.<job_id>.secrets
- [ ] jobs.<job_id>.def
- [x] jobs.<job_id>.steps
- [ ] jobs.<job_id>.steps[*].id
- [ ] jobs.<job_id>.steps[*].if
- [ ] jobs.<job_id>.steps[*].name
- [ ] jobs.<job_id>.steps[*].uses
- [x] jobs.<job_id>.steps[*].run
- [x] jobs.<job_id>.steps[*].working-directory
- [ ] jobs.<job_id>.steps[*].shell
- [ ] jobs.<job_id>.steps[*].with
- [ ] jobs.<job_id>.steps[*].env
- [X] jobs.<job_id>.steps[*].continue-on-error
- [ ] jobs.<job_id>.steps[*].timeout-minutes
## Behaviours
- [x] Job concurrency
- [ ] Logging to files
- [ ] Support Actions
- [ ] Support built-in functions
- [ ] Replay jobs from workflow