mirror of
https://github.com/daylinmorgan/oizys.git
synced 2024-12-22 10:10:45 -06:00
65 lines
1.5 KiB
YAML
65 lines
1.5 KiB
YAML
name: Build NixOS (on demand)
|
|
|
|
# TODO: accept , style sep in hwylcli
|
|
on:
|
|
workflow_dispatch:
|
|
inputs:
|
|
hosts:
|
|
description: 'list of hosts to build'
|
|
required: true
|
|
default: ',othalan,algiz'
|
|
type: string
|
|
lockFile:
|
|
description: 'flake.lock file'
|
|
type: string
|
|
|
|
workflow_call:
|
|
inputs:
|
|
hosts:
|
|
description: 'list of hosts to build'
|
|
default: ',othalan,algiz'
|
|
type: string
|
|
|
|
# concurrency:
|
|
# group: ${{ github.workflow }}-${{ github.ref }}-${{ inputs.host }}
|
|
# cancel-in-progress: true
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
# needed to access ghostty repo for now
|
|
- name: Setup SSH
|
|
uses: MrSquaare/ssh-setup-action@v3
|
|
with:
|
|
host: github.com
|
|
private-key: ${{ secrets.SSH_PRIVATE_KEY }}
|
|
|
|
- uses: ./.github/actions/nix
|
|
with:
|
|
attic_token: ${{ secrets.ATTIC_TOKEN }}
|
|
# clean: true
|
|
btrfs: true
|
|
|
|
- name: write lock file
|
|
if: "${{ inputs.lockFile != '' }}"
|
|
run: |
|
|
echo '${{ inputs.lockFile }}' > flake.lock
|
|
git diff
|
|
|
|
- name: Pre-build Oizys
|
|
run: nix build . --print-build-logs
|
|
|
|
- name: Build
|
|
run: >
|
|
nix run .
|
|
--
|
|
cache
|
|
--host,="${{ inputs.hosts }}"
|
|
--flake .
|
|
--debug
|
|
--
|
|
--keep-going
|