# This is a basic workflow to help you get started with Actions name: CI # Controls when the workflow will run on: # Triggers the workflow on push or pull request events but only for the master branch push: branches: [ master ] pull_request: branches: [ master ] # Allows you to run this workflow manually from the Actions tab workflow_dispatch: # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: # This workflow contains a single job called "build" build: # The type of runner that the job will run on runs-on: ubuntu-latest steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v2 # attempt to cache nix store - run: | # Create with liberal rights, otherwise cache action will complain # about permission errors. sudo mkdir -p /nix/store sudo chmod -R 777 /nix - name: Cache nix env take N+1 uses: actions/cache@v2 with: path: | # See https://github.com/actions/cache/pull/726 /nix/store/** # Missing something? /nix/var/nix/*/* /nix/var/nix/db/* /nix/var/nix/db/*/** !/nix/var/nix/daemon-socket/socket !/nix/var/nix/userpool/* !/nix/var/nix/gc.lock !/nix/var/nix/db/big-lock !/nix/var/nix/db/reserved key: ${{ runner.os }}-nix-store - uses: cachix/install-nix-action@v15 with: extra_nix_config: | access-tokens = github.com=${{ secrets.GITHUB_TOKEN }} # Runs a set of commands using the runners shell - name: Run a multi-line script run: | mkdir out nix develop -c zig build -Dtarget=aarch64-linux-gnu && mv zig-out/bin/sigexec out/sigexec-aarch64-linux-gnu nix develop -c zig build -Dtarget=aarch64-linux-musl && mv zig-out/bin/sigexec out/sigexec-aarch64-linux-musl nix develop -c zig build -Dtarget=aarch64-macos-gnu && mv zig-out/bin/sigexec out/sigexec-aarch64-macos-gnu nix develop -c zig build -Dtarget=aarch64_be-linux-gnu && mv zig-out/bin/sigexec out/sigexec-aarch64_be-linux-gnu nix develop -c zig build -Dtarget=arm-linux-gnueabi && mv zig-out/bin/sigexec out/sigexec-arm-linux-gnueabi nix develop -c zig build -Dtarget=arm-linux-gnueabihf && mv zig-out/bin/sigexec out/sigexec-arm-linux-gnueabihf nix develop -c zig build -Dtarget=arm-linux-musleabi && mv zig-out/bin/sigexec out/sigexec-arm-linux-musleabi nix develop -c zig build -Dtarget=arm-linux-musleabihf && mv zig-out/bin/sigexec out/sigexec-arm-linux-musleabihf nix develop -c zig build -Dtarget=i386-linux-gnu && mv zig-out/bin/sigexec out/sigexec-i386-linux-gnu nix develop -c zig build -Dtarget=i386-linux-musl && mv zig-out/bin/sigexec out/sigexec-i386-linux-musl nix develop -c zig build -Dtarget=mips-linux-gnueabi && mv zig-out/bin/sigexec out/sigexec-mips-linux-gnueabi nix develop -c zig build -Dtarget=mips-linux-gnueabihf && mv zig-out/bin/sigexec out/sigexec-mips-linux-gnueabihf nix develop -c zig build -Dtarget=mips-linux-musl && mv zig-out/bin/sigexec out/sigexec-mips-linux-musl nix develop -c zig build -Dtarget=mipsel-linux-gnueabi && mv zig-out/bin/sigexec out/sigexec-mipsel-linux-gnueabi nix develop -c zig build -Dtarget=mipsel-linux-gnueabihf && mv zig-out/bin/sigexec out/sigexec-mipsel-linux-gnueabihf nix develop -c zig build -Dtarget=mipsel-linux-musl && mv zig-out/bin/sigexec out/sigexec-mipsel-linux-musl nix develop -c zig build -Dtarget=powerpc-linux-gnueabi && mv zig-out/bin/sigexec out/sigexec-powerpc-linux-gnueabi nix develop -c zig build -Dtarget=powerpc-linux-gnueabihf && mv zig-out/bin/sigexec out/sigexec-powerpc-linux-gnueabihf nix develop -c zig build -Dtarget=powerpc-linux-musl && mv zig-out/bin/sigexec out/sigexec-powerpc-linux-musl nix develop -c zig build -Dtarget=riscv64-linux-gnu && mv zig-out/bin/sigexec out/sigexec-riscv64-linux-gnu nix develop -c zig build -Dtarget=riscv64-linux-musl && mv zig-out/bin/sigexec out/sigexec-riscv64-linux-musl nix develop -c zig build -Dtarget=sparcv9-linux-gnu && mv zig-out/bin/sigexec out/sigexec-sparcv9-linux-gnu nix develop -c zig build -Dtarget=thumb-linux-gnueabi && mv zig-out/bin/sigexec out/sigexec-thumb-linux-gnueabi nix develop -c zig build -Dtarget=thumb-linux-gnueabihf && mv zig-out/bin/sigexec out/sigexec-thumb-linux-gnueabihf nix develop -c zig build -Dtarget=thumb-linux-musleabi && mv zig-out/bin/sigexec out/sigexec-thumb-linux-musleabi nix develop -c zig build -Dtarget=thumb-linux-musleabihf && mv zig-out/bin/sigexec out/sigexec-thumb-linux-musleabihf nix develop -c zig build -Dtarget=x86_64-linux-gnu && mv zig-out/bin/sigexec out/sigexec-x86_64-linux-gnu nix develop -c zig build -Dtarget=x86_64-linux-musl && mv zig-out/bin/sigexec out/sigexec-x86_64-linux-musl nix develop -c zig build -Dtarget=x86_64-macos-gnu && mv zig-out/bin/sigexec out/sigexec-x86_64-macos-gnu - uses: actions/upload-artifact@v3 with: name: executables path: | out/sigexec-*