nextcloud: keep Mysql password if already defined

This commit is contained in:
Victor LABORIE 2018-03-26 16:08:50 +02:00
parent 48f9213589
commit fa65c4709f
2 changed files with 21 additions and 1 deletions

View file

@ -20,6 +20,15 @@
tags:
- nextcloud
- name: Configure Nextcloud Mysql password
replace:
dest: "{{ nextcloud_root }}/{{ item.key }}/config/config.php"
regexp: "'dbpassword' => '([^']*)',"
replace: "'dbpassword' => '{{ item.value.db_pass }}',"
with_dict: "{{ nextcloud_instances }}"
tags:
- nextcloud
- name: Configure Nextcloud cron
cron:
name: 'Nextcloud'

View file

@ -1,4 +1,14 @@
---
- name: Get actual Mysql password
shell: "grep password /home/{{ item }}/.my.cnf | awk '{ print $3 }'"
register: nextcloud_grep_password
check_mode: no
changed_when: False
failed_when: False
with_items: "{{ nextcloud_instances | list }}"
tags:
- nextcloud
- name: Generate Mysql password
shell: 'apg -n 1 -m 16 -M lcN'
register: nextcloud_apg_password
@ -10,9 +20,10 @@
- name: Set Mysql password
set_fact:
nextcloud_instances: "{{ nextcloud_instances | combine({ item[0]: nextcloud_instances[item[0]] | combine({ 'db_pass': item[1].stdout }) }, recursive=True) }}"
nextcloud_instances: "{{ nextcloud_instances | combine({ item[0]: nextcloud_instances[item[0]] | combine({ 'db_pass': (item[1].stdout | default(item[2].stdout, true)) }) }, recursive=True) }}"
with_together:
- "{{ nextcloud_instances | list }}"
- "{{ nextcloud_grep_password.results }}"
- "{{ nextcloud_apg_password.results }}"
tags:
- nextcloud