From 60d28e22dcdc52750837f818898d898852ba845f Mon Sep 17 00:00:00 2001 From: Anton Vakhrushev Date: Fri, 14 Jun 2019 15:10:43 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D1=8B=20=D1=82=D0=B5=D0=B3=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Makefile | 13 ++++++++--- ansible/amber.yml | 31 +++++++++++++------------ ansible/roles/docker-app/tasks/main.yml | 2 +- ansible/roles/owner/tasks/main.yml | 6 +++++ ansible/vars/apps.yml | 12 ---------- 5 files changed, 33 insertions(+), 31 deletions(-) delete mode 100644 ansible/vars/apps.yml diff --git a/Makefile b/Makefile index 43e208f..9805931 100644 --- a/Makefile +++ b/Makefile @@ -36,9 +36,16 @@ dry-run: configure-test: ANSIBLE_HOST_KEY_CHECKING=False \ ansible-playbook \ - --inventory "ansible/hosts_vagrant" \ - --extra-vars 'ansible_python_interpreter=/usr/bin/python3' \ - --user root \ + --inventory="ansible/hosts_vagrant" \ + --extra-vars="ansible_python_interpreter=/usr/bin/python3" \ + --user="root" \ + ansible/amber.yml + +configure-test-list-tags: + ANSIBLE_HOST_KEY_CHECKING=False \ + ansible-playbook \ + --inventory="ansible/hosts_vagrant" \ + --list-tags \ ansible/amber.yml lint: diff --git a/ansible/amber.yml b/ansible/amber.yml index e7b6fb5..3c8edf9 100644 --- a/ansible/amber.yml +++ b/ansible/amber.yml @@ -1,9 +1,6 @@ --- - hosts: all - vars_files: - - vars/apps.yml - tasks: - name: 'Install additional packages.' @@ -14,12 +11,12 @@ packages: - python3-pip - - include_role: + - import_role: name: yatesr.timezone vars: timezone: UTC - - include_role: + - import_role: name: geerlingguy.security vars: security_ssh_permit_root_login: "yes" @@ -30,22 +27,26 @@ pip: name: docker - - include_role: + - import_role: name: geerlingguy.docker vars: - docker_users: '{{ apps | map(attribute="username") | list }}' + docker_users: + - homepage - - include_role: + - import_role: name: antoiner77.caddy vars: caddy_config: '{{ lookup("template", "templates/Caddyfile.j2") }}' + tags: + - webserver - - include_role: + # Applications + + - import_role: name: docker-app vars: - username: '{{ app_item.username }}' - ssh_keys: '{{ app_item.ssh_keys | default([]) }}' - env: '{{ app_item.env | default({}) }}' - with_items: '{{ apps }}' - loop_control: - loop_var: app_item + username: homepage + ssh_keys: + - '{{ lookup("file", "files/av_id_rsa.pub") }}' + env: + DOCKER_PREFIX: homepage diff --git a/ansible/roles/docker-app/tasks/main.yml b/ansible/roles/docker-app/tasks/main.yml index 38bd521..5b3f7ea 100644 --- a/ansible/roles/docker-app/tasks/main.yml +++ b/ansible/roles/docker-app/tasks/main.yml @@ -1,6 +1,6 @@ --- - name: Create owner. - include_role: + import_role: name: owner vars: owner_name: '{{ username }}' diff --git a/ansible/roles/owner/tasks/main.yml b/ansible/roles/owner/tasks/main.yml index 72702c5..1a95507 100644 --- a/ansible/roles/owner/tasks/main.yml +++ b/ansible/roles/owner/tasks/main.yml @@ -29,6 +29,8 @@ dest: '/home/{{ owner_name }}/.env' owner: '{{ owner_name }}' group: '{{ owner_group }}' + tags: + - env - name: 'Remove absent environment variables for user "{{ owner_name }}" from bashrc.' lineinfile: @@ -36,9 +38,13 @@ regexp: '^export {{ item.key }}=' state: absent with_dict: '{{ owner_env }}' + tags: + - env - name: 'Include environment variables for user "{{ owner_name }}" in bashrc.' lineinfile: path: '/home/{{ owner_name }}/.bashrc' regexp: '^export \$\(grep -v' line: 'export $(grep -v "^#" "$HOME"/.env | xargs)' + tags: + - env diff --git a/ansible/vars/apps.yml b/ansible/vars/apps.yml deleted file mode 100644 index 85c87e4..0000000 --- a/ansible/vars/apps.yml +++ /dev/null @@ -1,12 +0,0 @@ ---- - -# Приложения -# Описывают конфигурации приложений, секретные данные - -apps: - - name: homepage - username: homepage - ssh_keys: - - '{{ lookup("file", "av_id_rsa.pub") }}' - env: - DOCKER_PREFIX: homepage