36 lines
1.1 KiB
YAML
36 lines
1.1 KiB
YAML
name: build and publish containers
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
schedule:
|
|
- cron: "0 0 * * 1,3,5"
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: nixos-latest
|
|
strategy: &strategy
|
|
matrix:
|
|
container: [ nixos ]
|
|
version: [ "24.11", "unstable" ]
|
|
steps:
|
|
- name: pre-requisites
|
|
run: |
|
|
nix-env -iA nixpkgs.docker nixpkgs.nodejs_20 nixpkgs.gnused nixpkgs.coreutils && mkdir -p ~/.config/nix && echo "experimental-features = nix-command flakes" > ~/.config/nix/nix.conf
|
|
- name: checkout
|
|
uses: actions/checkout@v4
|
|
with:
|
|
ref: 'main'
|
|
- name: nix package names
|
|
id: pkgs
|
|
run: |
|
|
echo "pkgs-name=${{ matrix.container }}-${{ matrix.version }}" | tr -d . >>"${GITHUB_OUTPUT}""
|
|
- name: build
|
|
uses: git.flyinggecko.org/actions/nix/build@main
|
|
with:
|
|
package: ${{ steps.pkgs.outputs.pkgs-name }}
|
|
out-link: ${{ steps.pkgs.outputs.pkgs-name }}
|
|
- name: load image into docker
|
|
run: |
|
|
docker load < ${{ steps.pkg.outputs.pkg-name }}
|