Files
home-cluster/.taskfiles/Sops/Taskfile.yaml
T

35 lines
908 B
YAML

---
# yaml-language-server: $schema=https://taskfile.dev/schema.json
version: "3"
tasks:
age-keygen:
desc: Initialize Age Key for Sops
cmd: age-keygen --output {{.ROOT_DIR}}/age.key
status:
- test -f "{{.ROOT_DIR}}/age.key"
encrypt:
desc: Encrypt a secret
summary: |
Args:
file: Path to file to encrypt (required)
cmd: sops --encrypt --in-place {{.file}}
vars:
claim: '{{ or .file (fail "Argument (file) is required") }}'
preconditions:
- { msg: "Sops config not found", sh: "test -f {{.ROOT_DIR}}/.sops.yaml" }
- { msg: "Age key not found", sh: "test -f {{.ROOT_DIR}}/age.key" }
encrypt:all:
desc: Encrypt all Kubernetes SOPS secrets
cmds:
- for: { var: file }
task: encrypt
vars:
file: '{{.ITEM}}'
vars:
file:
sh: find {{.KUBERNETES_DIR}} -type f -name "*.sops.*"