feat: asset canister allows configuring fallback file and status #7467
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: Check cargo (unit) test | |
| on: | |
| pull_request: | |
| push: | |
| branches: | |
| - master | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| env: | |
| # When getting Rust dependencies, retry on network error: | |
| CARGO_NET_RETRY: 10 | |
| # Use the local .curlrc | |
| CURL_HOME: . | |
| # Disable DFX telemetry | |
| DFX_TELEMETRY: 'off' | |
| jobs: | |
| changes: | |
| runs-on: ubuntu-latest | |
| permissions: | |
| pull-requests: read | |
| outputs: | |
| sources: ${{ steps.filter.outputs.sources }} | |
| steps: | |
| - uses: actions/checkout@v6 | |
| if: github.event_name == 'push' | |
| - uses: dorny/paths-filter@v4 | |
| id: filter | |
| with: | |
| filters: | | |
| sources: | |
| - .github/workflows/unit.yml | |
| - src/** | |
| - Cargo.lock | |
| - Cargo.toml | |
| - rust-toolchain.toml | |
| test: | |
| if: needs.changes.outputs.sources == 'true' | |
| needs: changes | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ ubuntu-24.04, ubuntu-24.04-arm, macos-15 ] | |
| steps: | |
| - uses: actions/checkout@v6 | |
| # Remove pre-installed stable toolchain so it doesn't pollute the | |
| # rust-cache environment hash. macOS (and sometimes Linux) runner | |
| # images ship with varying stable versions, making the hash | |
| # non-deterministic and causing constant cache misses. | |
| - name: Remove pre-installed Rust stable toolchain | |
| run: rustup toolchain remove stable 2>/dev/null || true | |
| # This step also handles Rust-specific caching | |
| - name: Install Rust toolchain | |
| uses: actions-rust-lang/setup-rust-toolchain@v1 | |
| with: | |
| cache-shared-key: debug | |
| - name: Check cargo test | |
| run: cargo test --workspace --all-features --no-fail-fast | |
| aggregate: | |
| name: unit:required | |
| if: always() && needs.changes.outputs.sources == 'true' | |
| needs: [changes, test] | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: check unit test result | |
| if: ${{ needs.test.result != 'success' }} | |
| run: exit 1 |