From e9fbb88c98458ef4b65a0087c70b89fb832ea4bd Mon Sep 17 00:00:00 2001
From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
Date: Tue, 20 Sep 2016 21:46:24 +0200
Subject: [PATCH] Lay some groundwork for soyuz

---
 README.md                     |  4 ++++
 host_vars/soyuz.archlinux.org |  8 ++++++++
 hosts                         |  3 +++
 playbooks/soyuz-provision.yml | 12 ++++++++++++
 playbooks/soyuz.yml           | 15 +++++++++++++++
 playbooks/vostok.yml          |  2 +-
 6 files changed, 43 insertions(+), 1 deletion(-)
 create mode 100644 host_vars/soyuz.archlinux.org
 create mode 100644 playbooks/soyuz-provision.yml
 create mode 100644 playbooks/soyuz.yml

diff --git a/README.md b/README.md
index 4564146e4..3d73b4548 100644
--- a/README.md
+++ b/README.md
@@ -52,3 +52,7 @@ certbot certonly --email webmaster@archlinux.org --agree-tos --rsa-key-size 4096
 - build server (pkgbuild.com)
 - releng
 - torrent tracker
+- sogrep
+- /~user/ webhost
+- irc bot (phrik)
+- quassel core
diff --git a/host_vars/soyuz.archlinux.org b/host_vars/soyuz.archlinux.org
new file mode 100644
index 000000000..ce40c7495
--- /dev/null
+++ b/host_vars/soyuz.archlinux.org
@@ -0,0 +1,8 @@
+---
+ipv4_address: "TBD"
+ipv6_address: "TBD/128"
+ipv4_gateway: "TBD"
+ipv6_gateway: "fe80::1"
+filesystem: btrfs
+
+# TODO: fill in IP addresses
diff --git a/hosts b/hosts
index 4563526e2..c190d6cf7 100644
--- a/hosts
+++ b/hosts
@@ -6,3 +6,6 @@ vostok.archlinux.org
 
 [apollo]
 apollo.archlinux.org
+
+[soyuz]
+soyuz.archlinux.org
diff --git a/playbooks/soyuz-provision.yml b/playbooks/soyuz-provision.yml
new file mode 100644
index 000000000..40d7b412e
--- /dev/null
+++ b/playbooks/soyuz-provision.yml
@@ -0,0 +1,12 @@
+---
+
+# This script is for provisioning a server for first boot.
+# Care: It is not idempotent by design.
+
+- name: provision soyuz
+  hosts: soyuz
+  remote_user: root
+  vars:
+    - hostname: soyuz
+  roles:
+    - install_arch
diff --git a/playbooks/soyuz.yml b/playbooks/soyuz.yml
new file mode 100644
index 000000000..30fba9bb5
--- /dev/null
+++ b/playbooks/soyuz.yml
@@ -0,0 +1,15 @@
+---
+
+- name: setup soyuz
+  hosts: soyuz
+  remote_user: root
+  roles:
+    - { role: common, tags: ['common'] }
+    - { role: tools, tags: ['tools'] }
+    - { role: sshd, tags: ['sshd'] }
+    - { role: root_ssh, tags: ['root_ssh'] }
+    - { role: borg-client, backup_host: "borg@vostok.archlinux.org", backup_dir: "/backup/soyuz", postgres_backup_dir: None, tags: ['borg'] }
+    - { role: archusers, tags: ['archusers'] }
+    - { role: nginx, letsencrypt_validation_dir: "/var/lib/letsencrypt", tags: ["nginx"] }
+    - { role: sudo, tags: ['sudo', 'archusers'] }
+    - { role: postgres, tags: ['postgres'] }
diff --git a/playbooks/vostok.yml b/playbooks/vostok.yml
index 82d5b504a..d2d51801b 100644
--- a/playbooks/vostok.yml
+++ b/playbooks/vostok.yml
@@ -8,4 +8,4 @@
     - tools
     - sshd
     - root_ssh
-    - { role: borg-server, backup_dir: "/backup", backup_clients: ["orion", "apollo"] }
+    - { role: borg-server, backup_dir: "/backup", backup_clients: ["orion", "apollo", "soyuz"] }
-- 
GitLab