summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAhmed Abdelhalim <[email protected]>2026-06-26 14:32:03 +0200
committerAhmed Abdelhalim <[email protected]>2026-06-26 14:59:04 +0200
commitd12f6ad362487451dfe807d206104091bae0982c (patch)
treef280cd89270c9ef948e5c9d52534fa7afdb1701c
parentb7881f1bec99505415f7e748c2a60c20aeb83972 (diff)
Merge configuration tasks using loops and update defaults
-rw-r--r--roles/garage/defaults/main.yml2
-rw-r--r--roles/garage/tasks/main.yml52
-rw-r--r--roles/garage/templates/garage.service.j23
3 files changed, 20 insertions, 37 deletions
diff --git a/roles/garage/defaults/main.yml b/roles/garage/defaults/main.yml
index ff9e38c8..40e7610a 100644
--- a/roles/garage/defaults/main.yml
+++ b/roles/garage/defaults/main.yml
@@ -7,6 +7,6 @@ garage_rpc_secret: "{{ 'changeme' | hash('sha256') }}"
garage_s3_port: "3900"
garage_admin_port: "3903"
garage_rpc_bind_addr: "127.0.0.1:3901"
-garage_bucket: "restic"
+garage_bucket: "default-bucket"
garage_access_key_id: "{{ ('changeme' | hash('sha256'))[:20] | upper }}"
garage_secret_access_key: "{{ ('changeme' | hash('sha256'))[:40] }}"
diff --git a/roles/garage/tasks/main.yml b/roles/garage/tasks/main.yml
index 5ab27b49..087343b8 100644
--- a/roles/garage/tasks/main.yml
+++ b/roles/garage/tasks/main.yml
@@ -35,48 +35,30 @@
shell: "/usr/sbin/nologin"
create_home: false
- - name: "Create garage config directory"
+ - name: "Create garage directories"
ansible.builtin.file:
- path: "/etc/garage"
+ path: "{{ item.path }}"
state: "directory"
- owner: "root"
+ owner: "{{ item.owner }}"
group: "garage"
mode: "0750"
+ loop:
+ - { path: "/etc/garage", owner: "root" }
+ - { path: "{{ garage_data_dir }}", owner: "garage" }
+ - { path: "{{ garage_meta_dir }}", owner: "garage" }
- - name: "Create garage data directory"
- ansible.builtin.file:
- path: "{{ garage_data_dir }}"
- state: "directory"
- owner: "garage"
- group: "garage"
- mode: "0750"
-
- - name: "Create garage meta directory"
- ansible.builtin.file:
- path: "{{ garage_meta_dir }}"
- state: "directory"
- owner: "garage"
- group: "garage"
- mode: "0750"
-
- - name: "Create garage configuration file"
- ansible.builtin.template:
- src: "garage.toml.j2"
- dest: "/etc/garage/garage.toml"
- owner: "root"
- group: "garage"
- mode: "0640"
- no_log: true
- notify: "Restart garage"
-
- - name: "Create garage systemd service"
+ - name: "Configure garage"
ansible.builtin.template:
- src: "garage.service.j2"
- dest: "/etc/systemd/system/garage.service"
+ src: "{{ item.src }}"
+ dest: "{{ item.dest }}"
owner: "root"
- group: "root"
- mode: "0644"
- notify: "Restart garage"
+ group: "{{ item.group }}"
+ mode: "{{ item.mode }}"
+ no_log: true
+ notify: "Restart garage"
+ loop:
+ - { src: "grage.toml.j2", dest: "/etc/garage/garage.toml", group: "garage", mode: "0640" }
+ - { src: "garage.service.j2", dest: "/etc/systemd/system/garage.service", group: "root", mode: "0644" }
- name: "Start and enable garage"
ansible.builtin.systemd_service:
diff --git a/roles/garage/templates/garage.service.j2 b/roles/garage/templates/garage.service.j2
index 994f6ac9..f3257e21 100644
--- a/roles/garage/templates/garage.service.j2
+++ b/roles/garage/templates/garage.service.j2
@@ -1,6 +1,7 @@
[Unit]
Description=Garage S3-compatible object store
-After=network.target
+Wants=network-online.target
+After=network-online.target
[Service]
Type=simple