ansible-roles/webapps/evoadmin-web/tasks/user.yml

125 lines
3.2 KiB
YAML
Raw Normal View History

2017-07-03 18:22:24 +02:00
---
- name: Create evoadmin account
user:
name: evoadmin
comment: "Evoadmin Web Account"
home: "{{ evoadmin_home_dir }}"
2017-07-03 18:22:24 +02:00
password: "!"
- name: Create www-evoadmin group
group:
name: www-evoadmin
state: present
2017-09-18 22:36:14 +02:00
- name: "Create www-evoadmin and add to group shadow (jessie)"
user:
name: www-evoadmin
groups: shadow
append: True
2017-09-18 22:36:14 +02:00
when: ansible_distribution_release == "jessie"
- name: "Create www-evoadmin (Debian 9 or later)"
user:
name: www-evoadmin
when: ansible_distribution_major_version is version_compare('9', '>=')
2017-09-18 22:36:14 +02:00
- name: Is /etc/aliases present?
stat:
path: /etc/aliases
register: etc_aliases
- name: Set evoadmin aliases
lineinfile:
dest: /etc/aliases
line: "{{ item.line }}"
regexp: "{{ item.regexp }}"
state: present
with_items:
- line: 'evoadmin: root'
regexp: '^evoadmin:'
- line: 'www-evoadmin: root'
regexp: '^www-evoadmin:'
notify: "newaliases"
when: etc_aliases.stat.exists
2017-10-07 23:04:47 +02:00
- name: Git is needed to clone the evoadmin repository
2017-07-03 18:22:24 +02:00
apt:
name: git
state: present
- name: "Clone evoadmin repository (jessie)"
2017-07-03 18:22:24 +02:00
git:
repo: https://forge.evolix.org/evoadmin-web.git
2018-04-20 10:22:11 +02:00
dest: "{{ evoadmin_document_root }}"
2017-08-23 04:28:21 +02:00
version: jessie
update: False
2017-08-23 04:28:21 +02:00
when: ansible_distribution_release == "jessie"
- name: "Clone evoadmin repository (Debian 9 or later)"
2017-08-23 04:28:21 +02:00
git:
repo: https://forge.evolix.org/evoadmin-web.git
2018-04-20 10:22:11 +02:00
dest: "{{ evoadmin_document_root }}"
2017-08-23 04:28:21 +02:00
version: master
update: False
when: ansible_distribution_major_version is version_compare('9', '>=')
2017-07-03 18:22:24 +02:00
- name: Change ownership on git repository
file:
2018-04-20 10:22:11 +02:00
dest: "{{ evoadmin_document_root }}"
owner: "{{ evoadmin_username }}"
group: "{{ evoadmin_username }}"
recurse: True
- name: Create evoadmin log directory
file:
name: "{{ evoadmin_log_dir }}"
owner: "{{ evoadmin_username }}"
group: "{{ evoadmin_username }}"
state: directory
- include_role:
2019-11-29 14:00:25 +01:00
name: evolix/remount-usr
2019-12-31 15:32:40 +01:00
when: evoadmin_scripts_dir is search ("/usr")
2017-08-03 22:15:27 +02:00
2017-07-03 18:22:24 +02:00
- name: "Create {{ evoadmin_scripts_dir }}"
file:
dest: "{{ evoadmin_scripts_dir }}"
# recurse: True
2017-07-03 18:22:24 +02:00
mode: "0700"
state: directory
- name: Install scripts like web-add.sh
2018-04-20 10:22:11 +02:00
shell: "cp {{ evoadmin_document_root }}/scripts/* {{ evoadmin_scripts_dir }}/"
2017-07-03 18:22:24 +02:00
args:
creates: "{{ evoadmin_scripts_dir }}/web-add.sh"
2018-09-09 23:25:53 +02:00
# we use a shell command to have a "changed" that really reflects the result.
2017-07-03 18:22:24 +02:00
- name: Fix permissions
2017-10-07 23:04:47 +02:00
command: "chmod -R --verbose u=rwX,g=rX,o= {{ evoadmin_document_root }}"
2017-07-03 18:22:24 +02:00
register: command_result
changed_when: "'changed' in command_result.stdout"
# failed_when: False
2017-10-07 23:04:47 +02:00
args:
warn: False
2017-07-03 18:22:24 +02:00
- name: Add evoadmin sudoers file
template:
src: "{{ item }}"
2017-07-03 18:22:24 +02:00
dest: /etc/sudoers.d/evoadmin
mode: "0600"
force: "{{ evoadmin_sudoers_conf_force }}"
2017-07-03 18:22:24 +02:00
validate: "visudo -cf %s"
with_first_found:
- "templates/evoadmin-web/sudoers.{{ inventory_hostname }}.j2"
- "templates/evoadmin-web/sudoers.{{ host_group }}.j2"
- "templates/evoadmin-web/sudoers.j2"
- "sudoers.j2"
register: evoadmin_sudoers_conf
2019-06-04 15:48:21 +02:00
- name: Modify bashrc skel file
lineinfile:
dest: /etc/skel/.bashrc
line: "alias php='sudo /usr/local/bin/phpContainer'"
when: evoadmin_multi_php