2024-03-17 05:44:51 -05:00
|
|
|
---
|
2024-03-25 04:12:45 -05:00
|
|
|
# yaml-language-server: $schema=https://taskfile.dev/schema.json
|
2024-03-17 05:44:51 -05:00
|
|
|
version: "3"
|
|
|
|
|
|
|
|
vars:
|
2024-04-10 03:00:25 -05:00
|
|
|
hostname: $HOSTNAME
|
|
|
|
host: '{{ or .host .hostname }}'
|
|
|
|
|
2024-03-17 05:44:51 -05:00
|
|
|
|
|
|
|
tasks:
|
2024-03-25 01:06:14 -05:00
|
|
|
switch:
|
2024-03-17 05:44:51 -05:00
|
|
|
desc: Build and apply nix configuration
|
|
|
|
silent: true
|
|
|
|
requires:
|
|
|
|
vars:
|
|
|
|
- host
|
|
|
|
cmds:
|
2024-03-25 01:06:14 -05:00
|
|
|
- echo "This will switch your config."
|
2024-03-17 05:44:51 -05:00
|
|
|
- task: .prompt_to_continue
|
2024-03-30 23:02:26 -05:00
|
|
|
- git add .
|
2024-04-10 03:00:25 -05:00
|
|
|
- sudo nixos-rebuild switch --flake "{{.ROOT_DIR}}/#{{.hostname}}" --impure
|
2024-03-17 05:44:51 -05:00
|
|
|
preconditions:
|
|
|
|
- sh: which nix
|
|
|
|
msg: "nix not found"
|
|
|
|
- sh: which nixos-rebuild
|
|
|
|
msg: "nixos-rebuild not found"
|
2024-04-10 03:00:25 -05:00
|
|
|
|
|
|
|
deploy-single:
|
|
|
|
desc: Deploy flake to single node
|
|
|
|
# silent: true
|
|
|
|
requires:
|
|
|
|
vars:
|
|
|
|
- host
|
|
|
|
cmds:
|
|
|
|
- echo "This will deploy the local flake to host {{ .host }}."
|
|
|
|
- task: .prompt_to_continue
|
|
|
|
- .taskfiles/nix/update-single-machine.sh {{.host}}
|
|
|
|
preconditions:
|
|
|
|
- sh: which nix
|
|
|
|
msg: "nix not found"
|
|
|
|
- sh: which nixos-rebuild
|
|
|
|
msg: "nixos-rebuild not found"
|
|
|
|
|
|
|
|
deploy-all:
|
|
|
|
desc: Deploy flake to all nodes
|
|
|
|
# silent: true
|
|
|
|
requires:
|
|
|
|
vars:
|
|
|
|
- host
|
|
|
|
cmds:
|
|
|
|
- echo "This will deploy the local flake to all whitelisted hosts."
|
|
|
|
- task: .prompt_to_continue
|
|
|
|
- .taskfiles/nix/update-all.sh
|
|
|
|
preconditions:
|
|
|
|
- sh: which nix
|
|
|
|
msg: "nix not found"
|
|
|
|
- sh: which nixos-rebuild
|
|
|
|
msg: "nixos-rebuild not found"
|
|
|
|
|
|
|
|
|
2024-03-17 05:44:51 -05:00
|
|
|
|
2024-03-25 01:06:14 -05:00
|
|
|
test:
|
|
|
|
desc: Build and apply nix configuration
|
|
|
|
silent: true
|
|
|
|
requires:
|
|
|
|
vars:
|
|
|
|
- host
|
|
|
|
cmds:
|
|
|
|
- echo "This will test your config."
|
|
|
|
- task: .prompt_to_continue
|
|
|
|
- sudo nixos-rebuild test --flake "{{.ROOT_DIR}}/#{{.host}}" --impure
|
|
|
|
preconditions:
|
|
|
|
- sh: which nix
|
|
|
|
msg: "nix not found"
|
|
|
|
- sh: which nixos-rebuild
|
|
|
|
msg: "nixos-rebuild not found"
|
|
|
|
|
|
|
|
dry-run:
|
|
|
|
desc: Build and apply nix configuration
|
|
|
|
silent: true
|
|
|
|
requires:
|
|
|
|
vars:
|
|
|
|
- host
|
|
|
|
cmds:
|
2024-03-26 05:11:56 -05:00
|
|
|
- echo "This will dry-run your config and add your untracked git files."
|
|
|
|
- git add .
|
2024-03-25 01:06:14 -05:00
|
|
|
- nixos-rebuild dry-run --flake "{{.ROOT_DIR}}/#{{.host}}" --impure
|
|
|
|
preconditions:
|
|
|
|
- sh: which nix
|
|
|
|
msg: "nix not found"
|
|
|
|
- sh: which nixos-rebuild
|
|
|
|
msg: "nixos-rebuild not found"
|
|
|
|
|
|
|
|
|
2024-03-17 05:44:51 -05:00
|
|
|
build:
|
|
|
|
desc: Build nix configuration
|
|
|
|
silent: true
|
|
|
|
requires:
|
|
|
|
vars:
|
|
|
|
- host
|
|
|
|
cmds:
|
2024-03-26 05:11:56 -05:00
|
|
|
- git add .
|
2024-03-30 19:37:57 -05:00
|
|
|
- nixos-rebuild build --flake "{{.ROOT_DIR}}/#{{.host}}" --impure --fast
|
2024-03-26 05:11:56 -05:00
|
|
|
- nvd diff /run/current-system result
|
2024-03-17 05:44:51 -05:00
|
|
|
preconditions:
|
|
|
|
- sh: which nix
|
|
|
|
msg: "nix not found"
|
|
|
|
- sh: which nixos-rebuild
|
|
|
|
msg: "nixos-rebuild not found"
|
|
|
|
- sh: which nvd
|
|
|
|
msg: "nvd not found"
|
2024-03-17 15:42:52 -05:00
|
|
|
|
2024-03-17 05:44:51 -05:00
|
|
|
.prompt_to_continue:
|
|
|
|
internal: true
|
2024-03-17 15:42:52 -05:00
|
|
|
prompt: Do you want to continue applying this configuration?
|
2024-03-18 16:16:39 -05:00
|
|
|
|
|
|
|
build-image-rpi4:
|
|
|
|
desc: Build basic machine build-image
|
|
|
|
silent: true
|
|
|
|
cmds:
|
|
|
|
- nix build .#images.rpi4
|