Merge d86279d64bdd19c34bbd8d5dcaeeef80654a6efc into 5cfd5166ea7680b784fd8cf556c6d07a9ecce260
This commit is contained in:
commit
2388010f09
19
.github/dependabot.yml
vendored
19
.github/dependabot.yml
vendored
@ -1,13 +1,12 @@
|
||||
version: 2
|
||||
updates:
|
||||
|
||||
- package-ecosystem: github-actions
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: daily
|
||||
time: '00:00'
|
||||
timezone: UTC
|
||||
open-pull-requests-limit: 10
|
||||
commit-message:
|
||||
- package-ecosystem: github-actions
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: daily
|
||||
time: "00:00"
|
||||
timezone: UTC
|
||||
open-pull-requests-limit: 10
|
||||
commit-message:
|
||||
prefix: "chore"
|
||||
include: "scope"
|
||||
include: "scope"
|
||||
|
116
.github/workflows/test.yml
vendored
116
.github/workflows/test.yml
vendored
@ -12,29 +12,29 @@ jobs:
|
||||
os: [ubuntu-latest, macos-latest]
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Install Nix
|
||||
uses: ./
|
||||
with:
|
||||
nix_path: nixpkgs=channel:nixos-22.11
|
||||
- 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
|
||||
- uses: actions/checkout@v3
|
||||
- name: Install Nix
|
||||
uses: ./
|
||||
with:
|
||||
nix_path: nixpkgs=channel:nixos-22.11
|
||||
- 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:
|
||||
matrix:
|
||||
os: [ubuntu-latest, macos-latest]
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Install Nix
|
||||
uses: ./
|
||||
with:
|
||||
nix_path: nixpkgs=channel:nixos-20.03
|
||||
- run: test $NIX_PATH == "nixpkgs=channel:nixos-20.03"
|
||||
- run: nix-build test.nix
|
||||
- uses: actions/checkout@v3
|
||||
- name: Install Nix
|
||||
uses: ./
|
||||
with:
|
||||
nix_path: nixpkgs=channel:nixos-20.03
|
||||
- run: test $NIX_PATH == "nixpkgs=channel:nixos-20.03"
|
||||
- run: nix-build test.nix
|
||||
|
||||
extra-nix-config:
|
||||
strategy:
|
||||
@ -42,15 +42,15 @@ jobs:
|
||||
os: [ubuntu-latest, macos-latest]
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Install Nix
|
||||
uses: ./
|
||||
with:
|
||||
nix_path: nixpkgs=channel:nixos-22.11
|
||||
extra_nix_config: |
|
||||
sandbox = relaxed
|
||||
- run: cat /etc/nix/nix.conf
|
||||
- run: nix-build test.nix --arg noChroot true
|
||||
- uses: actions/checkout@v3
|
||||
- name: Install Nix
|
||||
uses: ./
|
||||
with:
|
||||
nix_path: nixpkgs=channel:nixos-22.11
|
||||
extra_nix_config: |
|
||||
sandbox = relaxed
|
||||
- run: cat /etc/nix/nix.conf
|
||||
- run: nix-build test.nix --arg noChroot true
|
||||
|
||||
flakes:
|
||||
strategy:
|
||||
@ -58,10 +58,10 @@ jobs:
|
||||
os: [ubuntu-latest, macos-latest]
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Install Nix
|
||||
uses: ./
|
||||
- run: nix flake show github:NixOS/nixpkgs
|
||||
- uses: actions/checkout@v3
|
||||
- name: Install Nix
|
||||
uses: ./
|
||||
- run: nix flake show github:NixOS/nixpkgs
|
||||
|
||||
installer-options:
|
||||
strategy:
|
||||
@ -69,36 +69,46 @@ jobs:
|
||||
os: [ubuntu-latest, macos-latest]
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Install Nix
|
||||
uses: ./
|
||||
with:
|
||||
nix_path: nixpkgs=channel:nixos-22.11
|
||||
install_options: --tarball-url-prefix https://nixos-nix-install-tests.cachix.org/serve
|
||||
install_url: https://nixos-nix-install-tests.cachix.org/serve/s62m7lc0q0mz2mxxm9q0kkrcg90njzhq/install
|
||||
- run: nix-build test.nix
|
||||
- uses: actions/checkout@v3
|
||||
- name: Install Nix
|
||||
uses: ./
|
||||
with:
|
||||
nix_path: nixpkgs=channel:nixos-22.11
|
||||
install_options: --tarball-url-prefix https://nixos-nix-install-tests.cachix.org/serve
|
||||
install_url: https://nixos-nix-install-tests.cachix.org/serve/s62m7lc0q0mz2mxxm9q0kkrcg90njzhq/install
|
||||
- run: nix-build test.nix
|
||||
|
||||
oldest-supported-installer:
|
||||
strategy:
|
||||
matrix:
|
||||
os: [ubuntu-latest, macos-latest]
|
||||
matrix:
|
||||
os: [ubuntu-latest, macos-latest]
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Install Nix
|
||||
uses: ./
|
||||
with:
|
||||
nix_path: nixpkgs=channel:nixos-22.11
|
||||
install_url: https://releases.nixos.org/nix/nix-2.8.0/install
|
||||
- run: nix-build test.nix
|
||||
- uses: actions/checkout@v3
|
||||
- name: Install Nix
|
||||
uses: ./
|
||||
with:
|
||||
nix_path: nixpkgs=channel:nixos-22.11
|
||||
install_url: https://releases.nixos.org/nix/nix-2.8.0/install
|
||||
- run: nix-build test.nix
|
||||
|
||||
act-support:
|
||||
strategy:
|
||||
matrix:
|
||||
os: [ubuntu-latest]
|
||||
matrix:
|
||||
os: [ubuntu-latest]
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- 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
|
||||
- uses: actions/checkout@v3
|
||||
- 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
|
||||
|
||||
lint:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Install Nix
|
||||
uses: ./
|
||||
with:
|
||||
nix_path: nixpkgs=channel:nixos-22.11
|
||||
- run: nix-shell --packages cacert git nix nodejs pre-commit --pure --run 'pre-commit run --all-files'
|
||||
|
3
.gitignore
vendored
3
.gitignore
vendored
@ -91,3 +91,6 @@ typings/
|
||||
|
||||
# DynamoDB Local files
|
||||
.dynamodb/
|
||||
|
||||
# JetBrains IDEA configuration
|
||||
/.idea/
|
||||
|
14
.pre-commit-config.yaml
Normal file
14
.pre-commit-config.yaml
Normal file
@ -0,0 +1,14 @@
|
||||
# Configuration file for pre-commit (https://pre-commit.com/).
|
||||
# Please run `pre-commit run --all-files` when adding or changing entries.
|
||||
|
||||
repos:
|
||||
- repo: https://github.com/kamadorueda/alejandra
|
||||
rev: bb7f2ad3f176aa8e9e2944a10061f7989c8fef17 # frozen: 1.3.0
|
||||
hooks:
|
||||
- id: alejandra
|
||||
|
||||
- repo: https://github.com/pre-commit/mirrors-prettier
|
||||
rev: 6f3cb139ef36133b6f903b97facc57b07cef57c9 # frozen: v3.0.0-alpha.6
|
||||
hooks:
|
||||
- id: prettier
|
||||
stages: [commit]
|
22
README.md
22
README.md
@ -33,11 +33,11 @@ jobs:
|
||||
tests:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: cachix/install-nix-action@v22
|
||||
with:
|
||||
nix_path: nixpkgs=channel:nixos-unstable
|
||||
- run: nix-build
|
||||
- uses: actions/checkout@v3
|
||||
- uses: cachix/install-nix-action@v22
|
||||
with:
|
||||
nix_path: nixpkgs=channel:nixos-unstable
|
||||
- run: nix-build
|
||||
```
|
||||
|
||||
## Usage with Flakes
|
||||
@ -51,12 +51,12 @@ jobs:
|
||||
tests:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: cachix/install-nix-action@v22
|
||||
with:
|
||||
github_access_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
- run: nix build
|
||||
- run: nix flake check
|
||||
- uses: actions/checkout@v3
|
||||
- uses: cachix/install-nix-action@v22
|
||||
with:
|
||||
github_access_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
- run: nix build
|
||||
- run: nix flake check
|
||||
```
|
||||
|
||||
To install Nix from any commit, go to [the corresponding installer_test action](https://github.com/NixOS/nix/runs/2219534360) and click on "Run cachix/install-nix-action@XX" step and expand the first line.
|
||||
|
24
action.yml
24
action.yml
@ -1,24 +1,24 @@
|
||||
name: 'Install Nix'
|
||||
description: 'Installs Nix on GitHub Actions for the supported platforms: Linux and macOS.'
|
||||
author: 'Domen Kožar'
|
||||
name: "Install Nix"
|
||||
description: "Installs Nix on GitHub Actions for the supported platforms: Linux and macOS."
|
||||
author: "Domen Kožar"
|
||||
inputs:
|
||||
extra_nix_config:
|
||||
description: 'Gets appended to `/etc/nix/nix.conf` if passed.'
|
||||
description: "Gets appended to `/etc/nix/nix.conf` if passed."
|
||||
github_access_token:
|
||||
description: 'Configure nix to pull from github using the given github token.'
|
||||
description: "Configure nix to pull from github using the given github token."
|
||||
install_url:
|
||||
description: 'Installation URL that will contain a script to install Nix.'
|
||||
description: "Installation URL that will contain a script to install Nix."
|
||||
install_options:
|
||||
description: 'Additional installer flags passed to the installer script.'
|
||||
description: "Additional installer flags passed to the installer script."
|
||||
nix_path:
|
||||
description: 'Set NIX_PATH environment variable.'
|
||||
description: "Set NIX_PATH environment variable."
|
||||
branding:
|
||||
color: 'blue'
|
||||
icon: 'sun'
|
||||
color: "blue"
|
||||
icon: "sun"
|
||||
runs:
|
||||
using: 'composite'
|
||||
using: "composite"
|
||||
steps:
|
||||
- run : ${GITHUB_ACTION_PATH}/install-nix.sh
|
||||
- run: ${GITHUB_ACTION_PATH}/install-nix.sh
|
||||
shell: bash
|
||||
env:
|
||||
INPUT_EXTRA_NIX_CONFIG: ${{ inputs.extra_nix_config }}
|
||||
|
32
test.nix
32
test.nix
@ -1,18 +1,18 @@
|
||||
# Realizes <num>> of derivations with size of <size>MB
|
||||
{ size ? 1 # MB
|
||||
, num ? 10 # count
|
||||
, currentTime ? builtins.currentTime
|
||||
, noChroot ? false
|
||||
{
|
||||
size ? 1, # MB
|
||||
num ? 10, # count
|
||||
currentTime ? builtins.currentTime,
|
||||
noChroot ? false,
|
||||
}:
|
||||
|
||||
with import <nixpkgs> {};
|
||||
|
||||
let
|
||||
drv = i: runCommand "${toString currentTime}-${toString i}" {
|
||||
__noChroot = noChroot;
|
||||
} ''
|
||||
dd if=/dev/zero of=$out bs=${toString size}MB count=1
|
||||
'';
|
||||
in writeText "empty-${toString num}-${toString size}MB" ''
|
||||
${lib.concatMapStringsSep "" drv (lib.range 1 num)}
|
||||
''
|
||||
with import <nixpkgs> {}; let
|
||||
drv = i:
|
||||
runCommand "${toString currentTime}-${toString i}" {
|
||||
__noChroot = noChroot;
|
||||
} ''
|
||||
dd if=/dev/zero of=$out bs=${toString size}MB count=1
|
||||
'';
|
||||
in
|
||||
writeText "empty-${toString num}-${toString size}MB" ''
|
||||
${lib.concatMapStringsSep "" drv (lib.range 1 num)}
|
||||
''
|
||||
|
Loading…
x
Reference in New Issue
Block a user