aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows
diff options
context:
space:
mode:
authorDomen Kožar <domen@dev.si>2021-02-15 10:20:54 +0000
committerDomen Kožar <domen@dev.si>2021-02-21 15:51:49 +0000
commitae4260f0a79c5cbb7c88ddbef1f512e0771f7414 (patch)
treef633afa81a85e8e982aed73f2b686e7e78c86cc8 /.github/workflows
parent4e98f0345c144b9d85bed1f6b0bc509bf7ddc000 (diff)
Generate installer script for each PR/push
This works by using Cachix feature of serving a file from a store path.
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/test.yml44
1 files changed, 43 insertions, 1 deletions
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 021642f4c..bde6106e0 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -8,10 +8,52 @@ jobs:
matrix:
os: [ubuntu-latest, macos-latest]
runs-on: ${{ matrix.os }}
+ env:
+ CACHIX_NAME: nix-ci
steps:
- - uses: actions/checkout@v2
+ - uses: actions/checkout@v2.3.4
with:
fetch-depth: 0
- uses: cachix/install-nix-action@v12
+ - uses: cachix/cachix-action@v8
+ with:
+ name: '${{ env.CACHIX_NAME }}'
+ signingKey: '${{ secrets.CACHIX_SIGNING_KEY }}'
#- run: nix flake check
- run: nix-build -A checks.$(if [[ `uname` = Linux ]]; then echo x86_64-linux; else echo x86_64-darwin; fi)
+ installer:
+ if: github.event_name == 'push'
+ needs: tests
+ runs-on: ubuntu-latest
+ env:
+ CACHIX_NAME: nix-ci
+ outputs:
+ installerURL: ${{ steps.prepare-installer.outputs.installerURL }}
+ steps:
+ - uses: actions/checkout@v2.3.4
+ with:
+ fetch-depth: 0
+ - uses: cachix/install-nix-action@v12
+ - uses: cachix/cachix-action@v8
+ with:
+ name: '${{ env.CACHIX_NAME }}'
+ signingKey: '${{ secrets.CACHIX_SIGNING_KEY }}'
+ - id: prepare-installer
+ run: scripts/prepare-installer-for-github-actions
+ installer_test:
+ if: github.event_name == 'push'
+ needs: installer
+ strategy:
+ matrix:
+ os: [ubuntu-latest, macos-latest]
+ runs-on: ${{ matrix.os }}
+ env:
+ CACHIX_NAME: nix-ci
+ steps:
+ - uses: actions/checkout@v2.3.4
+ - uses: cachix/install-nix-action@master
+ with:
+ install_url: '${{needs.installer.outputs.installerURL}}'
+ install_options: '--tarball-url-prefix https://${{ env.CACHIX_NAME }}.cachix.org/serve'
+ - run: nix-instantiate -E 'builtins.currentTime' --eval
+ \ No newline at end of file