summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAhmed Abdelhalim <[email protected]>2025-09-12 21:31:20 +0200
committerAhmed Abdelhalim <[email protected]>2025-09-12 21:35:41 +0200
commit2aa105e6cc8255e07867ed2efb025814d952c1d2 (patch)
tree7db8b6a2704efef2091348d1e537662266547dd1
parent49820eba76df9e93f54cb9ed699d9c5a351ad103 (diff)
Split the playbooks into bootstrap and configure
This is to allow the ansible-distro-install to safely call the bootstrap playbook without getting validation errors about the other configure roles (especially if they are not configured yet, or if running on CI)
-rw-r--r--bootstrap.yml15
-rw-r--r--configure.yml29
-rw-r--r--site.yml55
3 files changed, 48 insertions, 51 deletions
diff --git a/bootstrap.yml b/bootstrap.yml
new file mode 100644
index 00000000..184906e8
--- /dev/null
+++ b/bootstrap.yml
@@ -0,0 +1,15 @@
+---
+- name: "Dev machines bootstrap"
+ gather_facts: true
+ tags: ["required_for_boot"]
+ hosts:
+ - archlinux.local
+ - ubuntu.local
+ - rpi5.local
+ roles:
+ - role: "package_cache"
+ - role: "hostname"
+ - role: "network"
+ - role: "user"
+ - role: "ssh"
+ - role: "password_policy"
diff --git a/configure.yml b/configure.yml
new file mode 100644
index 00000000..e4e8c4d6
--- /dev/null
+++ b/configure.yml
@@ -0,0 +1,29 @@
+---
+- name: "Dev machines configure"
+ gather_facts: true
+ hosts:
+ - archlinux.local
+ - ubuntu.local
+ roles:
+ - role: "locales"
+ - role: "timezone"
+ - role: "wireguard"
+ - role: "homebrew"
+ - role: "python"
+ - role: "go"
+ - role: "docker"
+ - role: "podman"
+ - role: "ansible"
+
+- name: "Raspberry Pi configure"
+ gather_facts: true
+ hosts:
+ - rpi5.local
+ become: true
+ roles:
+ - role: "locales"
+ - role: "timezone"
+ - role: "wireguard"
+ - role: "gateway"
+ - role: "wg_portal"
+ - role: "pihole"
diff --git a/site.yml b/site.yml
index bf2136f0..f2140ce6 100644
--- a/site.yml
+++ b/site.yml
@@ -1,53 +1,6 @@
---
-- name: "Dev machines configure"
- gather_facts: true
- hosts:
- - archlinux.local
- - ubuntu.local
- roles:
- - role: "package_cache"
- tags: ["required_for_boot"]
- - role: "hostname"
- tags: ["required_for_boot"]
- - role: "network"
- tags: ["required_for_boot"]
- - role: "user"
- tags: ["required_for_boot"]
- - role: "ssh"
- tags: ["required_for_boot"]
- - role: "password_policy"
- tags: ["required_for_boot"]
- - role: "locales"
- - role: "timezone"
- - role: "wireguard"
- - role: "homebrew"
- - role: "python"
- - role: "go"
- - role: "docker"
- - role: "podman"
- - role: "ansible"
+- name: "Bootstrap"
+ ansible.builtin.import_playbook: "bootstrap.yml"
-- name: "Raspberry Pi configure"
- gather_facts: true
- hosts:
- - rpi5.local
- become: true
- roles:
- - role: "package_cache"
- tags: ["required_for_boot"]
- - role: "hostname"
- tags: ["required_for_boot"]
- - role: "network"
- tags: ["required_for_boot"]
- - role: "user"
- tags: ["required_for_boot"]
- - role: "ssh"
- tags: ["required_for_boot"]
- - role: "password_policy"
- tags: ["required_for_boot"]
- - role: "locales"
- - role: "timezone"
- - role: "wireguard"
- - role: "gateway"
- - role: "wg_portal"
- - role: "pihole"
+- name: "Configure"
+ ansible.builtin.import_playbook: "configure.yml"