feat(repo): IaaS baseline

This commit is contained in:
il
2026-06-17 13:17:24 +09:00
parent a6bba986a5
commit 927b5b4934
250 changed files with 1074 additions and 28750 deletions
@@ -22,7 +22,7 @@
path: "{{ node['home_path'] }}/.config/systemd/user"
state: "directory"
owner: "{{ ansible_user }}"
group: "svadmins"
group: "{{ node['group'] }}"
mode: "0700"
- name: Create quadlet directory
@@ -30,5 +30,14 @@
path: "{{ node['home_path'] }}/.config/containers/systemd"
state: "directory"
owner: "{{ ansible_user }}"
group: "svadmins"
group: "{{ node['group'] }}"
mode: "0700"
- name: Set data volume path
ansible.builtin.file:
path: "{{ node['home_path'] }}/data"
state: "directory"
owner: "{{ ansible_user }}"
group: "{{ node['group'] }}"
mode: "0770"
when: node['name'] in ["infra", "app"]
@@ -11,7 +11,7 @@
- name: Deploy networkd files
ansible.builtin.template:
src: "{{ item }}"
dest: "/etc/systemd/network/{{ item | basename }}"
dest: "/etc/systemd/network/{{ item | basename | replace('.j2', '') }}"
owner: "root"
group: "systemd-network"
mode: "0640"
@@ -1,5 +1,5 @@
---
- name: Gather system facts (hardware)
- name: Gather ystem facts (hardware)
ansible.builtin.setup:
gather_subset:
- hardware
@@ -67,6 +67,19 @@
become: true
notify: "notification_restart_alloy"
- name: Set ACL for data directory
ansible.posix.acl:
path: "{{ item }}"
entity: "alloy"
etype: "user"
permissions: "x"
state: "present"
loop:
- "{{ node['home_path'] }}"
- "{{ node['home_path'] }}/data"
become: true
when: node['name'] == "app"
- name: Enable alloy service
ansible.builtin.systemd:
name: "alloy.service"
@@ -4,7 +4,7 @@
ansible.builtin.file:
path: "{{ node['home_path'] }}/containers/{{ item }}"
owner: "{{ ansible_user }}"
group: "svadmins"
group: "{{ node['group'] }}"
state: "directory"
mode: "0770"
loop:
@@ -18,7 +18,7 @@
ansible.builtin.file:
path: /var/log/caddy
owner: "{{ ansible_user }}"
group: "svadmins"
group: "{{ node['group'] }}"
state: "directory"
mode: "0755"
become: true
@@ -48,7 +48,7 @@
src: "{{ hostvars['console']['node']['config_path'] }}/services/containers/common/caddy/build/caddy.containerfile.j2"
dest: "{{ node['home_path'] }}/containers/caddy/build/Containerfile"
owner: "{{ ansible_user }}"
group: "svadmins"
group: "{{ node['group'] }}"
mode: "0640"
- name: Deploy root crt for build
@@ -56,7 +56,7 @@
content: "{{ hostvars['console']['ca']['root']['crt'] }}"
dest: "{{ node['home_path'] }}/containers/caddy/build/{{ root_cert_filename }}"
owner: "{{ ansible_user }}"
group: "svadmins"
group: "{{ node['group'] }}"
mode: "0640"
no_log: true
@@ -77,7 +77,7 @@
src: "{{ hostvars['console']['node']['config_path'] }}/services/containers/common/caddy/etc/{{ node['name'] }}/Caddyfile.j2"
dest: "{{ node['home_path'] }}/containers/caddy/etc/Caddyfile"
owner: "{{ ansible_user }}"
group: "svadmins"
group: "{{ node['group'] }}"
mode: "0600"
notify: "notification_restart_caddy"
@@ -86,7 +86,7 @@
src: "{{ hostvars['console']['node']['config_path'] }}/services/containers/common/caddy/caddy.container.j2"
dest: "{{ node['home_path'] }}/.config/containers/systemd/caddy.container"
owner: "{{ ansible_user }}"
group: "svadmins"
group: "{{ node['group'] }}"
mode: "0644"
notify: "notification_restart_caddy"
@@ -315,7 +315,3 @@
enabled: true
daemon_reload: true
become: true
# cscli bouncers list
# cscli machines list
# cscli metrics
@@ -14,7 +14,7 @@
kopia_{{ version['packages']['kopia'] }}_linux_{{ item }}.deb"
dest: "{{ node['data_path'] }}/bin/kopia-{{ version['packages']['kopia'] }}-{{ item }}.deb"
owner: "{{ ansible_user }}"
group: "svadmins"
group: "{{ node['group'] }}"
mode: "0600"
loop:
- "amd64"
@@ -36,7 +36,7 @@
- name: Connect console kopia server
environment:
KOPIA_PASSWORD: "{{ hostvars['console']['kopia']['user']['console'] }}"
KOPIA_PASSWORD: "{{ hostvars['console']['kopia']['users']['console'] }}"
ansible.builtin.shell: |
/usr/bin/kopia repository connect server \
--url=https://{{ services['kopia']['domain'] }}.{{ domain['internal'] }}:{{ services['kopia']['ports']['https'] }} \
@@ -11,7 +11,7 @@
ansible.builtin.file:
path: "{{ node['home_path'] }}/containers"
owner: "{{ ansible_user }}"
group: "svadmins"
group: "{{ node['group'] }}"
state: "directory"
mode: "0700"
@@ -19,7 +19,7 @@
ansible.builtin.file:
path: "{{ node['home_path'] }}/data/containers"
owner: "{{ ansible_user }}"
group: "svadmins"
group: "{{ node['group'] }}"
state: "directory"
mode: "0770"
when: node['name'] == "app"
@@ -28,7 +28,7 @@
ansible.builtin.file:
path: "{{ item }}"
owner: "{{ ansible_user }}"
group: "svadmins"
group: "{{ node['group'] }}"
state: "directory"
mode: "0700"
loop: