Add P Extension #300
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: scala-CI | |
on: | |
push: | |
pull_request: | |
permissions: | |
contents: read | |
concurrency: | |
group: ${{ github.head_ref || github.run_id }} | |
cancel-in-progress: true | |
jobs: | |
cache-nix: | |
name: nix依存関係のキャッシュ | |
timeout-minutes: 30 | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: setup nix | |
uses: cachix/install-nix-action@v25 | |
- name: setup cachix | |
uses: cachix/cachix-action@v14 | |
with: | |
name: b4smt | |
authToken: "${{ secrets.CACHIX_AUTH_TOKEN }}" | |
- name: make all | |
run: make | |
- name: make develop environment | |
run: nix develop --profile develop-profile -c true | |
- name: upload artifacts to cache | |
run: | | |
nix derivation show -r ./processor | jq '.[].outputs[].path' -r | while IFS= read -r line; do [ -e "$line" ] && echo "$line"; done | cachix push b4smt | |
nix derivation show -r ./programs | jq '.[].outputs[].path' -r | while IFS= read -r line; do [ -e "$line" ] && echo "$line"; done | cachix push b4smt | |
nix derivation show -r ./develop-profile | jq '.[].outputs[].path' -r | while IFS= read -r line; do [ -e "$line" ] && echo "$line"; done | cachix push b4smt | |
- name: upload processor source as artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: processor | |
path: processor | |
format: | |
name: ソースコードのフォーマット確認 | |
timeout-minutes: 5 | |
needs: [cache-nix] | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: setup nix | |
uses: cachix/install-nix-action@v25 | |
- name: setup cachix | |
uses: cachix/cachix-action@v14 | |
with: | |
name: b4smt | |
authToken: "${{ secrets.CACHIX_AUTH_TOKEN }}" | |
- name: check format | |
run: make check-format | |
- name: upload check cache | |
run: | | |
nix derivation show -r ./result | jq '.[].outputs[].path' -r | while IFS= read -r line; do [ -e "$line" ] && echo "$line"; done | cachix push b4smt | |
test-all: | |
name: B4プロセッサのテスト | |
timeout-minutes: 60 | |
needs: [cache-nix] | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: setup nix | |
uses: cachix/install-nix-action@v25 | |
- name: setup cachix | |
uses: cachix/cachix-action@v14 | |
with: | |
name: b4smt | |
authToken: "${{ secrets.CACHIX_AUTH_TOKEN }}" | |
- name: test all | |
run: make check-artifacts | |
- name: upload check cache | |
run: | | |
nix derivation show -r ./result | jq '.[].outputs.[].path' -r | while IFS= read -r line; do [ -e "$line" ] && echo "$line"; done | cachix push b4smt |