summaryrefslogtreecommitdiff
path: root/roles/whawty/auth/app/tasks
diff options
context:
space:
mode:
Diffstat (limited to 'roles/whawty/auth/app/tasks')
-rw-r--r--roles/whawty/auth/app/tasks/listeners.yml18
-rw-r--r--roles/whawty/auth/app/tasks/main.yml18
2 files changed, 35 insertions, 1 deletions
diff --git a/roles/whawty/auth/app/tasks/listeners.yml b/roles/whawty/auth/app/tasks/listeners.yml
new file mode 100644
index 00000000..82944222
--- /dev/null
+++ b/roles/whawty/auth/app/tasks/listeners.yml
@@ -0,0 +1,18 @@
+---
+- name: generate systemd socket units
+ loop: "{{ whawty_auth_app.config.listeners | dict2items }}"
+ loop_control:
+ label: "{{ item.key }}"
+ template:
+ src: systemd.socket.j2
+ dest: "/etc/systemd/system/whawty-auth-{{ whawty_auth_app.name }}_{{ item.key }}.socket"
+
+- name: make sure systemd socket units are enabled and started
+ loop: "{{ whawty_auth_app.config.listeners | dict2items }}"
+ loop_control:
+ label: "{{ item.key }}"
+ systemd:
+ daemon_reload: yes
+ name: "whawty-auth-{{ whawty_auth_app.name }}_{{ item.key }}.socket"
+ state: started
+ enabled: yes
diff --git a/roles/whawty/auth/app/tasks/main.yml b/roles/whawty/auth/app/tasks/main.yml
index 00a02c7e..cc19fd2e 100644
--- a/roles/whawty/auth/app/tasks/main.yml
+++ b/roles/whawty/auth/app/tasks/main.yml
@@ -1,5 +1,21 @@
---
- name: install whawty app
apt:
- name: "{{ ['whawty-auth'] | union(whawty_auth_install_pam_module | ternary(['libpam-whawty'], [])) }}"
+ name: "{{ ['whawty-auth'] | union(whawty_auth_app_install_pam_module | ternary(['libpam-whawty'], [])) }}"
state: present
+
+- name: generate systemd service units
+ loop: "{{ whawty_auth_app_instances | dict2items(key_name='name', value_name='config') }}"
+ loop_control:
+ loop_var: whawty_auth_app
+ label: "{{ whawty_auth_app.name }}"
+ template:
+ src: systemd.service.j2
+ dest: "/etc/systemd/system/whawty-auth-{{ whawty_auth_app.name }}.service"
+
+- name: generate, start and enable systemd socket units
+ loop: "{{ whawty_auth_app_instances | dict2items(key_name='name', value_name='config') }}"
+ loop_control:
+ loop_var: whawty_auth_app
+ label: "{{ whawty_auth_app.name }}"
+ include_tasks: listeners.yml