diff --git a/Makefile b/Makefile index 48fcd6a..2fe589d 100644 --- a/Makefile +++ b/Makefile @@ -39,7 +39,7 @@ configure-test: --inventory="ansible/hosts_vagrant" \ --extra-vars="ansible_python_interpreter=/usr/bin/python3" \ --user="root" \ - --tags="monitoring" \ + --tags="webserver,apps" \ ansible/amber.yml configure-test-list-tags: diff --git a/ansible/amber.yml b/ansible/amber.yml index 42b4f69..c113741 100644 --- a/ansible/amber.yml +++ b/ansible/amber.yml @@ -37,6 +37,9 @@ name: antoiner77.caddy vars: caddy_config: '{{ lookup("template", "templates/Caddyfile.j2") }}' + caddy_setcap: True + caddy_systemd_capabilities_enabled: True + caddy_systemd_capabilities: "CAP_NET_BIND_SERVICE" tags: - webserver @@ -51,7 +54,11 @@ name: docker-app vars: username: homepage + extra_groups: + - www-data ssh_keys: - '{{ lookup("file", "files/av_id_rsa.pub") }}' env: DOCKER_PREFIX: homepage + tags: + - apps diff --git a/ansible/roles/docker-app/tasks/main.yml b/ansible/roles/docker-app/tasks/main.yml index 5b3f7ea..068eb67 100644 --- a/ansible/roles/docker-app/tasks/main.yml +++ b/ansible/roles/docker-app/tasks/main.yml @@ -1,9 +1,18 @@ --- -- name: Create owner. +- name: 'Create owner.' import_role: name: owner vars: owner_name: '{{ username }}' owner_group: '{{ username }}' + owner_extra_groups: '{{ extra_groups | default([]) }}' owner_ssh_keys: '{{ ssh_keys | default([]) }}' owner_env: '{{ env | default({}) }}' + +- name: 'Create web dir.' + file: + path: '/var/www/{{ username }}' + state: directory + owner: '{{ username }}' + group: '{{ username }}' + recurse: True diff --git a/ansible/roles/owner/tasks/main.yml b/ansible/roles/owner/tasks/main.yml index 1a95507..3cd6156 100644 --- a/ansible/roles/owner/tasks/main.yml +++ b/ansible/roles/owner/tasks/main.yml @@ -13,6 +13,7 @@ user: name: '{{ owner_name }}' group: '{{ owner_group }}' + groups: '{{ owner_extra_groups }}' shell: /bin/bash - name: 'Set up user ssh keys for user "{{ owner_name }}".' diff --git a/ansible/templates/Caddyfile.j2 b/ansible/templates/Caddyfile.j2 index da77bf7..4363c0b 100644 --- a/ansible/templates/Caddyfile.j2 +++ b/ansible/templates/Caddyfile.j2 @@ -4,3 +4,8 @@ transparent } } + +# Homepage +:80 { + root /var/www/homepage/current +}