mirror of
https://github.com/phfroidmont/self-hosting.git
synced 2025-12-25 05:36:59 +01:00
42 lines
1.3 KiB
YAML
42 lines
1.3 KiB
YAML
---
|
|
- name: Copy nextcloud docker files
|
|
copy:
|
|
src: nextcloud
|
|
dest: "{{docker_compose_files_folder}}"
|
|
- name: Create .env
|
|
template:
|
|
src: nextcloud/.env
|
|
dest: "{{docker_compose_files_folder}}/nextcloud/.env"
|
|
- name: Create nextcloud config
|
|
template:
|
|
src: nextcloud/config/{{item}}
|
|
dest: "{{docker_compose_files_folder}}/nextcloud/config/{{item}}"
|
|
with_items:
|
|
- base.config.php
|
|
- database.config.php
|
|
- mail.config.php
|
|
- name: Change config folder owner to http
|
|
file:
|
|
path: "{{docker_compose_files_folder}}/nextcloud/config"
|
|
owner: 33
|
|
group: 33
|
|
recurse: yes
|
|
- name: Build and start nextcloud docker project
|
|
docker_service:
|
|
project_src: "{{docker_compose_files_folder}}/nextcloud"
|
|
build: yes
|
|
state: present
|
|
- name: Check if database tables exist
|
|
command: docker-compose exec -T db mysql -u nextcloud -p{{nextcloud_mysql_password}} nextcloud -e "show tables;"
|
|
args:
|
|
chdir: "{{docker_compose_files_folder}}/nextcloud/"
|
|
register: db_tables_exist
|
|
retries: 15
|
|
delay: 10
|
|
until: db_tables_exist.rc == 0
|
|
changed_when: no
|
|
- name: Restore Nextcloud database
|
|
command: docker-compose exec -T db sh -c "mysql -u nextcloud -p{{nextcloud_mysql_password}} nextcloud < /backups/database.dmp"
|
|
args:
|
|
chdir: "{{docker_compose_files_folder}}/nextcloud/"
|
|
when: db_tables_exist.stdout_lines|length == 0
|