53 lines
1.7 KiB
YAML
53 lines
1.7 KiB
YAML
---
|
|
# yaml-language-server: $schema=https://taskfile.dev/schema.json
|
|
version: "3"
|
|
|
|
vars:
|
|
BOOTSTRAP_DIR: "{{.ROOT_DIR}}/bootstrap"
|
|
ANSIBLE_DIR: "{{.ROOT_DIR}}/ansible"
|
|
KUBERNETES_DIR: "{{.ROOT_DIR}}/kubernetes"
|
|
|
|
env:
|
|
KUBECONFIG: "{{.ROOT_DIR}}/kubeconfig"
|
|
|
|
includes:
|
|
ansible: .taskfiles/Ansible/Taskfile.yaml
|
|
kubernetes:
|
|
aliases: ["k8s"]
|
|
taskfile: .taskfiles/Kubernetes/Taskfile.yaml
|
|
flux: .taskfiles/Flux/Taskfile.yaml
|
|
k0s: .taskfiles/K0s/Taskfile.yaml
|
|
repo: .taskfiles/Repo/Taskfile.yaml
|
|
sops: .taskfiles/Sops/Taskfile.yaml
|
|
workstation: .taskfiles/Workstation/Taskfile.yaml
|
|
|
|
tasks:
|
|
|
|
default: task -l
|
|
|
|
init:
|
|
desc: Initialize configuration files
|
|
cmds:
|
|
- cp -n {{.BOOTSTRAP_DIR}}/vars/addons.sample.yaml {{.BOOTSTRAP_DIR}}/vars/addons.yaml
|
|
- cp -n {{.BOOTSTRAP_DIR}}/vars/config.sample.yaml {{.BOOTSTRAP_DIR}}/vars/config.yaml
|
|
- cmd: echo "=== Configuration files copied ==="
|
|
silent: true
|
|
- cmd: echo "Proceed with updating the configuration files..."
|
|
silent: true
|
|
- cmd: echo "{{.BOOTSTRAP_DIR}}/vars/config.yaml"
|
|
silent: true
|
|
- cmd: echo "{{.BOOTSTRAP_DIR}}/vars/addons.yaml"
|
|
silent: true
|
|
status:
|
|
- test -f "{{.BOOTSTRAP_DIR}}/vars/addons.yaml"
|
|
- test -f "{{.BOOTSTRAP_DIR}}/vars/config.yaml"
|
|
|
|
# TODO: Only prompt when generated directories exist
|
|
# https://github.com/go-task/task/issues/1330
|
|
configure:
|
|
desc: Configure repository from Ansible vars
|
|
prompt: Any conflicting config in the root kubernetes and ansible directories will be overwritten... continue?
|
|
cmd: ./.venv/bin/ansible-playbook {{.BOOTSTRAP_DIR}}/configure.yaml
|
|
env:
|
|
ANSIBLE_DISPLAY_SKIPPED_HOSTS: "false"
|