2019-10-05 04:44:40 -06:00
# setup-zig
2020-11-11 04:17:26 -07:00
Use the zig compiler in your Github Actions workflows
2019-10-05 04:44:40 -06:00
2019-10-05 05:16:38 -06:00
[Usage ](#usage ) - [License: Apache-2.0 ](#license )
2019-10-05 04:44:40 -06:00
2019-10-05 05:16:38 -06:00
## Usage
2019-10-05 04:44:40 -06:00
2019-10-05 05:16:38 -06:00
In a Github Actions workflow file, do something like:
```yaml
jobs:
test:
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
runs-on: ${{matrix.os}}
steps:
2020-02-17 07:03:25 -07:00
- uses: actions/checkout@v2
- uses: goto-bus-stop/setup-zig@v1
2019-10-05 05:16:38 -06:00
- run: zig build test
2019-10-05 05:30:05 -06:00
lint:
runs-on: ubuntu-latest
steps:
2020-02-17 07:03:25 -07:00
- uses: actions/checkout@v2
- uses: goto-bus-stop/setup-zig@v1
2019-10-05 05:30:05 -06:00
- run: zig fmt --check src/*.zig
2019-10-05 04:44:40 -06:00
```
2019-10-05 05:16:38 -06:00
Optionally set a Zig version:
```yaml
2020-02-17 07:03:25 -07:00
- uses: goto-bus-stop/setup-zig@v1
2019-10-05 05:16:38 -06:00
with:
2020-11-11 04:40:03 -07:00
version: 0.7.0 # The default is 0.5.0
2019-10-05 05:16:38 -06:00
```
2019-10-05 04:44:40 -06:00
2020-01-23 02:55:01 -07:00
To use the nightly builds, set:
```yaml
2020-02-17 07:03:25 -07:00
- uses: goto-bus-stop/setup-zig@v1
2020-01-23 02:55:01 -07:00
with:
version: master
```
2020-11-11 04:17:26 -07:00
Or [pin to a specific commit ](https://github.com/goto-bus-stop/setup-zig/issues/13 ) using `version+commithash` syntax:
```yaml
- uses: goto-bus-stop/setup-zig@v1
with:
version: 0.6.0+4b48fccad
```
If you are running Zig on Windows machines, you need to make sure that your .zig files use \n line endings and not \r\n. The `actions/checkout` action auto-converts line endings to `\r\n` on Windows runners, so add a `.gitattributes` file:
2019-10-05 05:16:38 -06:00
```
*.zig text eol=lf
2019-10-05 04:44:40 -06:00
```
## License
[Apache-2.0 ](LICENSE.md )