feat: add basic taskfiles

This commit is contained in:
truxnell 2024-03-17 21:44:51 +11:00
parent ff8f904cf1
commit b238e6c860
3 changed files with 78 additions and 0 deletions

View file

@ -0,0 +1,45 @@
---
version: "3"
vars:
host: $HOSTNAME
tasks:
apply:
desc: Build and apply nix configuration
silent: true
requires:
vars:
- host
cmds:
- task: build
vars:
host: "{{ .host }}"
- task: .prompt_to_continue
- sudo nixos-rebuild switch --flake "{{.ROOT_DIR}}/#{{.host}}" --impure
preconditions:
- sh: which nix
msg: "nix not found"
- sh: which nixos-rebuild
msg: "nixos-rebuild not found"
build:
desc: Build nix configuration
silent: true
requires:
vars:
- host
cmds:
- nixos-rebuild build --flake "{{.ROOT_DIR}}/#{{.host}}" --impure
- nvd diff /run/current-system result
preconditions:
- sh: which nix
msg: "nix not found"
- sh: which nixos-rebuild
msg: "nixos-rebuild not found"
- sh: which nvd
msg: "nvd not found"
.prompt_to_continue:
internal: true
prompt: Do you want to continue applying this configuration?

View file

@ -0,0 +1,17 @@
---
version: "3"
tasks:
re-encrypt:
desc: Decrypt and re-encrypt all sops secrets
silent: true
dir: "{{.USER_WORKING_DIR}}"
vars:
SECRET_FILES:
sh: find . -type f -name '*.sops.yaml' ! -name ".sops.yaml"
cmds:
- for: { var: SECRET_FILES }
cmd: |
echo "Re-encrypting {{ .ITEM }}"
sops --decrypt --in-place "{{ .ITEM }}"
sops --encrypt --in-place "{{ .ITEM }}"

16
Taskfile.yaml Normal file
View file

@ -0,0 +1,16 @@
---
version: "3"
includes:
sops:
taskfile: ".taskfiles/sops"
dir: .taskfiles/sops
nix:
taskfile: ".taskfiles/nix"
dir: "{{.ROOT_DIR}}"
tasks:
default:
silent: true
cmds:
- task -l