mirror of
https://github.com/cachix/install-nix-action.git
synced 2024-11-23 17:10:53 +00:00
5c557495d0
Done with pin-github-action <https://github.com/mheap/pin-github-action> 1.8.0 using `npx pin-github-action .github/workflows/*.yml`, and then manually bumping the version tag to the relevant number. This fixes the issue that it is common practice for GitHub Actions authors to move major tags when releasing new minor versions. Dependabot supports updating in the same fashion, bumping the version tag when updating the hash.
136 lines
3.8 KiB
YAML
136 lines
3.8 KiB
YAML
name: "install-nix-action test"
|
|
on:
|
|
pull_request:
|
|
push:
|
|
branches:
|
|
- master
|
|
|
|
env:
|
|
nixpkgs_channel: nixpkgs=channel:nixos-23.11
|
|
oldest_supported_installer: nix-2.8.0
|
|
# Fetch new versions from the Nix CI run: https://github.com/NixOS/nix/blob/master/.github/workflows/ci.yml
|
|
# TODO: add pinning upstream or rethink this
|
|
pinned_installer_hash: zfzfrbb59jsqrfkldwj8drcr9nhhc49k
|
|
|
|
jobs:
|
|
simple-build:
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-latest
|
|
- macos-latest
|
|
- macos-13
|
|
runs-on: ${{ matrix.os }}
|
|
steps:
|
|
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
|
|
- name: Install Nix
|
|
uses: ./
|
|
with:
|
|
nix_path: ${{ env.nixpkgs_channel }}
|
|
- run: nix-env -iA cachix -f https://cachix.org/api/v1/install
|
|
- run: cat /etc/nix/nix.conf
|
|
# cachix should be available and be able to configure a cache
|
|
- run: cachix use cachix
|
|
- run: nix-build test.nix
|
|
|
|
custom-nix-path:
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-latest
|
|
- macos-latest
|
|
- macos-13
|
|
runs-on: ${{ matrix.os }}
|
|
steps:
|
|
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
|
|
- name: Install Nix
|
|
uses: ./
|
|
with:
|
|
nix_path: ${{ env.nixpkgs_channel }}
|
|
- run: test $NIX_PATH == '${{ env.nixpkgs_channel }}'
|
|
- run: nix-build test.nix
|
|
|
|
extra-nix-config:
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-latest
|
|
- macos-latest
|
|
- macos-13
|
|
runs-on: ${{ matrix.os }}
|
|
steps:
|
|
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
|
|
- name: Install Nix
|
|
uses: ./
|
|
with:
|
|
nix_path: ${{ env.nixpkgs_channel }}
|
|
extra_nix_config: |
|
|
sandbox = relaxed
|
|
- run: cat /etc/nix/nix.conf
|
|
- run: nix-build test.nix --arg noChroot true
|
|
|
|
flakes:
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-latest
|
|
- macos-latest
|
|
- macos-13
|
|
runs-on: ${{ matrix.os }}
|
|
steps:
|
|
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
|
|
- name: Install Nix
|
|
uses: ./
|
|
- run: nix flake show github:NixOS/nixpkgs
|
|
|
|
installer-options:
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-latest
|
|
# - macos-latest missing installer for aarch64-darwin
|
|
- macos-13
|
|
runs-on: ${{ matrix.os }}
|
|
steps:
|
|
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
|
|
- name: Install Nix
|
|
uses: ./
|
|
with:
|
|
nix_path: ${{ env.nixpkgs_channel }}
|
|
install_options: --tarball-url-prefix https://nixos-nix-install-tests.cachix.org/serve
|
|
install_url: https://nixos-nix-install-tests.cachix.org/serve/${{ env.pinned_installer_hash }}/install
|
|
- run: nix-build test.nix
|
|
|
|
oldest-supported-installer:
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-latest
|
|
- macos-latest
|
|
- macos-13
|
|
runs-on: ${{ matrix.os }}
|
|
steps:
|
|
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
|
|
- name: Install Nix
|
|
uses: ./
|
|
with:
|
|
nix_path: ${{ env.nixpkgs_channel }}
|
|
install_url: https://releases.nixos.org/nix/${{ env.oldest_supported_installer }}/install
|
|
- run: nix-build test.nix
|
|
|
|
act-support:
|
|
strategy:
|
|
matrix:
|
|
os: [ubuntu-latest]
|
|
runs-on: ${{ matrix.os }}
|
|
steps:
|
|
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
|
|
- run: curl https://raw.githubusercontent.com/nektos/act/master/install.sh | sudo bash
|
|
- run: docker pull ghcr.io/catthehacker/ubuntu:js-20.04
|
|
- run: ./bin/act -P ubuntu-latest=ghcr.io/catthehacker/ubuntu:js-20.04 push -j simple-build
|