Page:
Getting-Started
No results
1
Getting-Started
dxtr edited this page 2026-10-11 16:41:49 +02:00
Getting Started
Referencing the actions
Reference the actions with the owner/repo/path@ref form:
- uses: fakehacker/actions/checkout@v1.0.0
Versions
| Ref | Meaning |
|---|---|
@v1.0.0 |
A fixed release. Recommended, so your CI only changes when you bump the tag. |
@main |
Latest development state. It can change under you at any time. |
@<commit sha> |
Fully immutable. Use it if you don't trust tags to stay put. |
Releases are listed on the repository's tags page.
Runners and containers
A composite action can't choose its own runner or container. runs-on, container and any strategy.matrix all belong in your workflow.
These actions are made for jobs that run inside a job container:
jobs:
test:
runs-on: ubuntu-latest # a runner label that is backed by Docker
container:
image: debian:forky # the image the steps actually run in
Notes:
- The runner label must be Docker-backed.
container:only works if the runner runs that label through Docker or Podman. A label registered in host mode (label:host) ignorescontainer:or fails. Check your runner'slabelsconfiguration. - Steps run as root in most images.
lisp-cirelies on that forapt-get installand for writing to/usr/localand/opt, and nothing callssudo. - No Node.js needed. Do not mix in
actions/checkoutor other JavaScript actions unless your image hasnode. - Choosing a Debian release:
debian:forkyis Debian testing. It has fresh packages, but they change often and can break for a while.debian:trixieis the current stable and works the same way with these actions.
Full example workflow
name: CI
on: [push, pull_request]
jobs:
erlang:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
otp: ['27', '28', '29']
container:
image: erlang:${{ matrix.otp }}
steps:
- uses: fakehacker/actions/checkout@v1.0.0
- uses: fakehacker/actions/rebar3-ci@v1.0.0
lisp:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sbcl: ['2.5.0', '2.6.9']
container:
image: debian:forky
steps:
- uses: fakehacker/actions/checkout@v1.0.0
- uses: fakehacker/actions/lisp-ci@v1.0.0
with:
system: cl-ft2
lisps: sbcl
sbcl-version: ${{ matrix.sbcl }}
lisp-ccl:
runs-on: ubuntu-latest
container:
image: debian:forky
steps:
- uses: fakehacker/actions/checkout@v1.0.0
- uses: fakehacker/actions/lisp-ci@v1.0.0
with:
system: cl-ft2
lisps: ccl
Always run checkout first
rebar3-ci and lisp-ci work on the files in the workspace, so put checkout before them in the job.