env: CI_ALLOW_ROOT: '1' CI_CONFIG: ./ci.nix CI_PLATFORM: gh-actions jobs: ci-check: name: gw2buttplug-rs check runs-on: ubuntu-latest steps: - id: checkout name: git clone uses: actions/checkout@v4 with: submodules: true - id: nix-install name: nix install uses: arcnmx/ci/actions/nix/install@v0.7 - id: ci-action-build name: nix build ci.gh-actions.configFile uses: arcnmx/ci/actions/nix/build@v0.7 with: attrs: ci.gh-actions.configFile out-link: .ci/workflow.yml - id: ci-action-compare name: gh-actions compare uses: arcnmx/ci/actions/nix/run@v0.7 with: args: -u .github/workflows/gw2buttplug-rs.yml .ci/workflow.yml attrs: nixpkgs.diffutils command: diff main: name: gw2buttplug-rs-main permissions: contents: write runs-on: ubuntu-latest steps: - id: checkout name: git clone uses: actions/checkout@v4 with: submodules: true - id: nix-install name: nix install uses: arcnmx/ci/actions/nix/install@v0.7 - id: ci-setup name: nix setup uses: arcnmx/ci/actions/nix/run@v0.7 with: attrs: ci.job.main.run.bootstrap quiet: false - id: ci-dirty name: nix test dirty uses: arcnmx/ci/actions/nix/run@v0.7 with: attrs: ci.job.main.run.test command: ci-build-dirty quiet: false stdout: ${{ runner.temp }}/ci.build.dirty - id: ci-test name: nix test build uses: arcnmx/ci/actions/nix/run@v0.7 with: attrs: ci.job.main.run.test command: ci-build-realise ignore-exit-code: true quiet: false stdin: ${{ runner.temp }}/ci.build.dirty - env: CI_EXIT_CODE: ${{ steps.ci-test.outputs.exit-code }} id: ci-summary name: nix test results uses: arcnmx/ci/actions/nix/run@v0.7 with: attrs: ci.job.main.run.test command: ci-build-summarise quiet: false stdin: ${{ runner.temp }}/ci.build.dirty stdout: ${{ runner.temp }}/ci.build.cache - env: CACHIX_SIGNING_KEY: ${{ secrets.CACHIX_SIGNING_KEY }} id: ci-cache if: always() name: nix test cache uses: arcnmx/ci/actions/nix/run@v0.7 with: attrs: ci.job.main.run.test command: ci-build-cache quiet: false stdin: ${{ runner.temp }}/ci.build.cache - id: artifact-build name: artifact build uses: arcnmx/ci/actions/nix/build@v0.7 with: attrs: config.jobs.main.artifactPackage file: out-link: .ci/artifacts - id: artifact-upload name: artifact upload uses: actions/upload-artifact@v4 with: name: gw2buttplug-rs path: .ci/artifacts/lib/*.dll - id: release-upload if: startsWith(github.ref, 'refs/tags/') name: release uses: softprops/action-gh-release@v1 with: files: .ci/artifacts/lib/gw2buttplug-rs.dll name: gw2buttplug-rs 'on': - push - pull_request