🦀 vergen 🦀 #1224
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
| on: | |
| workflow_dispatch: | |
| push: | |
| branches: | |
| - master | |
| - legacy/* | |
| tags-ignore: | |
| - "*" | |
| pull_request: | |
| schedule: | |
| - cron: "13 4 * * *" | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
| cancel-in-progress: true | |
| env: | |
| GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} | |
| name: 🦀 vergen 🦀 | |
| jobs: | |
| rustfmt: | |
| name: 📌 Formatting 📌 | |
| # main | |
| uses: rustyhorde/workflows/.github/workflows/rustfmt.yml@7a073ab416038755f63ff549d1331c9644d37cd7 | |
| lints-linux: | |
| name: 🕳️ Clippy (Linux) 🕳️ | |
| needs: rustfmt | |
| # main | |
| uses: rustyhorde/workflows/.github/workflows/clippy-all-features.yml@7a073ab416038755f63ff549d1331c9644d37cd7 | |
| with: | |
| os: ubuntu-latest | |
| channel: nightly | |
| target: x86_64-unknown-linux-gnu | |
| update: true | |
| project: vergen | |
| lints-macos: | |
| name: 🕳️ Clippy (MacOS) 🕳️ | |
| needs: rustfmt | |
| # main | |
| uses: rustyhorde/workflows/.github/workflows/clippy-all-features.yml@7a073ab416038755f63ff549d1331c9644d37cd7 | |
| with: | |
| os: macos-latest | |
| channel: nightly | |
| target: apple-darwin | |
| update: true | |
| project: vergen | |
| lints-windows: | |
| name: 🕳️ Clippy (Windows) 🕳️ | |
| needs: rustfmt | |
| # main | |
| uses: rustyhorde/workflows/.github/workflows/clippy-all-features.yml@7a073ab416038755f63ff549d1331c9644d37cd7 | |
| with: | |
| os: windows-latest | |
| channel: nightly | |
| target: x86_64-pc-windows-gnu | |
| update: true | |
| project: vergen | |
| test-linux: | |
| name: 🧪 Test (Linux) 🧪 | |
| needs: lints-linux | |
| strategy: | |
| matrix: | |
| os: [ubuntu-latest] | |
| channel: ["1.95.0", "stable", "beta", "nightly"] | |
| target: [x86_64-unknown-linux-gnu] | |
| # main | |
| uses: rustyhorde/workflows/.github/workflows/test-all-features.yml@7a073ab416038755f63ff549d1331c9644d37cd7 | |
| with: | |
| os: ${{ matrix.os }} | |
| channel: ${{ matrix.channel }} | |
| target: ${{ matrix.target }} | |
| update: true | |
| project: vergen | |
| test-macos: | |
| name: 🧪 Test (MacOS) 🧪 | |
| needs: lints-macos | |
| strategy: | |
| matrix: | |
| os: [macos-latest] | |
| channel: ["1.95.0", "nightly"] | |
| target: [apple-darwin] | |
| # main | |
| uses: rustyhorde/workflows/.github/workflows/test-all-features.yml@7a073ab416038755f63ff549d1331c9644d37cd7 | |
| with: | |
| os: ${{ matrix.os }} | |
| channel: ${{ matrix.channel }} | |
| target: ${{ matrix.target }} | |
| update: true | |
| project: vergen | |
| test-windows-gnu: | |
| name: 🧪 Test (Windows - GNU) 🧪 | |
| needs: lints-windows | |
| strategy: | |
| matrix: | |
| os: [windows-latest] | |
| channel: ["1.95.0", "nightly"] | |
| target: [x86_64-pc-windows-gnu] | |
| # main | |
| uses: rustyhorde/workflows/.github/workflows/test-all-features.yml@7a073ab416038755f63ff549d1331c9644d37cd7 | |
| with: | |
| os: ${{ matrix.os }} | |
| channel: ${{ matrix.channel }} | |
| target: ${{ matrix.target }} | |
| update: true | |
| project: vergen | |
| test-windows-msvc: | |
| name: 🧪 Test (Windows - MSVC) 🧪 | |
| needs: lints-windows | |
| strategy: | |
| matrix: | |
| os: [windows-latest] | |
| channel: ["1.95.0", "nightly"] | |
| target: [x86_64-pc-windows-msvc] | |
| # main | |
| uses: rustyhorde/workflows/.github/workflows/test-all-features.yml@7a073ab416038755f63ff549d1331c9644d37cd7 | |
| with: | |
| os: ${{ matrix.os }} | |
| channel: ${{ matrix.channel }} | |
| target: ${{ matrix.target }} | |
| update: true | |
| project: vergen | |
| coverage-linux: | |
| name: 🧱 Coverage (Linux) 🧱 | |
| if: ${{ github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository }} | |
| needs: test-linux | |
| # main | |
| uses: rustyhorde/workflows/.github/workflows/coverage.yml@7a073ab416038755f63ff549d1331c9644d37cd7 | |
| with: | |
| os: ubuntu-latest | |
| channel: nightly | |
| target: x86_64-unknown-linux-gnu | |
| lcov: true | |
| html: true | |
| run_cmd: ${{ vars.VERGEN_RUN_CMD }} | |
| secrets: inherit | |
| coverage-macos: | |
| name: 🧱 Coverage (MacOS) 🧱 | |
| if: ${{ github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository }} | |
| needs: test-macos | |
| # main | |
| uses: rustyhorde/workflows/.github/workflows/coverage.yml@7a073ab416038755f63ff549d1331c9644d37cd7 | |
| with: | |
| os: macos-latest | |
| channel: nightly | |
| target: apple-darwin | |
| lcov: true | |
| html: true | |
| run_cmd: ${{ vars.VERGEN_RUN_CMD }} | |
| secrets: inherit | |
| coverage-windows: | |
| name: 🧱 Coverage (Wndows) 🧱 | |
| if: ${{ github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository }} | |
| needs: [test-windows-gnu, test-windows-msvc] | |
| strategy: | |
| matrix: | |
| target: [x86_64-pc-windows-gnu, x86_64-pc-windows-msvc] | |
| # main | |
| uses: rustyhorde/workflows/.github/workflows/coverage.yml@7a073ab416038755f63ff549d1331c9644d37cd7 | |
| with: | |
| os: windows-latest | |
| channel: nightly | |
| target: ${{ matrix.target }} | |
| lcov: true | |
| html: true | |
| run_cmd: ${{ vars.VERGEN_RUN_CMD }} | |
| secrets: inherit | |
| call-vergen-lib: | |
| name: vergen-lib | |
| uses: ./.github/workflows/vergen_lib.yml | |
| secrets: inherit | |
| call-vergen-git2: | |
| name: vergen-git2 | |
| uses: ./.github/workflows/vergen_git2.yml | |
| secrets: inherit | |
| call-vergen-gitcl: | |
| name: vergen-gitcl | |
| uses: ./.github/workflows/vergen_gitcl.yml | |
| secrets: inherit | |
| call-vergen-gix: | |
| name: vergen-gix | |
| uses: ./.github/workflows/vergen_gix.yml | |
| secrets: inherit | |
| call-vergen-pretty: | |
| name: vergen-pretty | |
| uses: ./.github/workflows/vergen_pretty.yml | |
| secrets: inherit | |
| semver-checks: | |
| name: 🔍 Semver Checks 🔍 | |
| # Informational during the 10.0 beta: there is no stable 10.0 baseline on | |
| # crates.io yet, so the intentional major-version breaks are expected to be | |
| # reported. Drop `continue-on-error` and add this as a required status check | |
| # once 10.0.0 ships. See issue #478. | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: ✅ Checkout ✅ | |
| uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 | |
| - name: 💾 Install (cargo-binstall) 💾 | |
| uses: cargo-bins/cargo-binstall@30b5ca8b54e1dcffd9548bc87ede1531310fdc67 # v1.20.0 | |
| - name: 💾 Install (cargo-semver-checks) 💾 | |
| env: | |
| BINSTALL_MAXIMUM_RESOLUTION_TIMEOUT: "20" | |
| run: cargo binstall --no-confirm --no-symlinks cargo-semver-checks | |
| - name: 🔍 Semver Checks 🔍 | |
| run: >- | |
| cargo semver-checks | |
| --package vergen-lib | |
| --package vergen | |
| --package vergen-git2 | |
| --package vergen-gitcl | |
| --package vergen-gix | |
| --package vergen-pretty |