Repository navigation
test(WO80/A4): rulings for contexts, maybe, and capture #469
Workflow file for this run
This file contains hidden or 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: rake | |
| on: | |
| push: | |
| branches: [ main, v*, ci-check ] | |
| tags: [ v* ] | |
| pull_request: | |
| jobs: | |
| rspec: | |
| name: Test on Ruby ${{ matrix.ruby }} / ${{ matrix.os }} | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| ruby: ["3.3", "3.4"] | |
| os: [ubuntu-latest, windows-latest, macos-latest] | |
| env: | |
| BUNDLE_WITHOUT: "secryst" | |
| SKIP_JS: "1" | |
| SKIP_PYTHON: "1" | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: ${{ matrix.ruby }} | |
| bundler-cache: true | |
| - name: RSpec | |
| run: bundle exec rspec | |
| standard: | |
| name: StandardRB | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: "3.4" | |
| bundler-cache: true | |
| - run: bundle exec standardrb | |
| conformance-matrix: | |
| name: Conformance matrix (frozen fixtures) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: "3.3" | |
| bundler-cache: true | |
| - name: Download fixtures (Releases via the API -- bypasses the asset-redirect CDN) | |
| env: | |
| GH_TOKEN: ${{ github.token }} | |
| run: | | |
| mkdir -p fixtures && cd fixtures | |
| dl() { # dl <tag> <asset-name> <out> | |
| local id=$(gh api repos/interscript/interscript-models/releases/tags/$1 --jq ".assets[] | select(.name==\"$2\") | .id") | |
| gh api -H "Accept: application/octet-stream" repos/interscript/interscript-models/releases/assets/$id > "$3" | |
| } | |
| dl index-v12 models-index.yaml models-index.yaml | |
| dl index-v12 models-index.yaml.sha256 models-index.yaml.sha256 | |
| sha256sum -c models-index.yaml.sha256 | |
| for v in urd-diac-base fas-diac-base urd-g2p-base; do | |
| dl index-v12 $v-vectors.json $v-vectors.json | |
| done | |
| # the two single-zip models; urd-g2p (split parts) resolves | |
| # via the runtime resolver in a later matrix pass | |
| for m in urd-diac-base-1.0 fas-diac-base-1.0; do | |
| dl $m $m-fp16.zip $m.zip | |
| done | |
| - name: Run the matrix | |
| run: | | |
| for pair in "urd-diac-base-1.0 urd-diac-base" "fas-diac-base-1.0 fas-diac-base"; do | |
| set -- $pair | |
| echo "::group::$1" | |
| SECRYST_E2E_ZIP="$PWD/fixtures/$1.zip" \ | |
| CONFORMANCE_VECTORS="$PWD/fixtures/$2-vectors.json" \ | |
| bundle exec rspec spec/interscript/ml/conformance_spec.rb | |
| echo "::endgroup::" | |
| done |