3
0
forked from jakub/ansible
This commit is contained in:
martin.fencl
2025-12-24 00:37:29 +01:00
parent d53ad9a6d6
commit 0803cf3e52

View File

@@ -1,7 +1,7 @@
# nextcloud/update_nextcloud.yml # nextcloud/update_nextcloud.yml
- name: Update Nextcloud on VM via Proxmox - name: Update Nextcloud on VM via Proxmox
hosts: linux_servers hosts: proxmox_nextcloud # linux_servers
gather_facts: false gather_facts: false
become: true become: true
become_user: root become_user: root
@@ -31,9 +31,8 @@
# Docker command prefix (consistent behavior and quiet hints) # Docker command prefix (consistent behavior and quiet hints)
docker_prefix: "unalias docker 2>/dev/null || true; DOCKER_CLI_HINTS=0; command docker" docker_prefix: "unalias docker 2>/dev/null || true; DOCKER_CLI_HINTS=0; command docker"
# --- Backup phase commands (run on VM) --- # --- Backup phase commands (run on VM) ---
# Use docker_prefix everywhere to bypass aliases/functions
nextcloud_backup_commands: nextcloud_backup_commands:
- >- - >-
mkdir -p "{{ backup_dir }}" mkdir -p "{{ backup_dir }}"
@@ -44,10 +43,11 @@
- >- - >-
{{ docker_prefix }} cp nextcloud:/tmp/nextcloud_conf.tgz "{{ backup_dir }}/nextcloud_conf.tgz" {{ docker_prefix }} cp nextcloud:/tmp/nextcloud_conf.tgz "{{ backup_dir }}/nextcloud_conf.tgz"
- >- - >-
{{ docker_prefix }} exec nextcloud rm -f /tmp/nextcloud_conf.tgz {{ docker_prefix }} exec nextcloud rm /tmp/nextcloud_conf.tgz || true
- >- - >-
{{ docker_prefix }} exec nextcloud-db sh -c 'command -v mariadb-dump >/dev/null && mariadb-dump -u"$MYSQL_USER" -p"$MYSQL_PASSWORD" "$MYSQL_DATABASE" || mysqldump -u"$MYSQL_USER" -p"$MYSQL_PASSWORD" "$MYSQL_DATABASE"' > "{{ backup_dir }}/db.sql" {{ docker_prefix }} exec nextcloud-db sh -c 'command -v mariadb-dump >/dev/null && mariadb-dump -u"$MYSQL_USER" -p"$MYSQL_PASSWORD" "$MYSQL_DATABASE" || mysqldump -u"$MYSQL_USER" -p"$MYSQL_PASSWORD" "$MYSQL_DATABASE"' > "{{ backup_dir }}/db.sql"
# --- Upgrade phase commands (run on VM) ---
nextcloud_upgrade_commands: nextcloud_upgrade_commands:
- >- - >-
{{ docker_prefix }} compose -p {{ nextcloud_project }} -f {{ nextcloud_compose_file }} pull {{ nextcloud_service }} {{ docker_prefix }} compose -p {{ nextcloud_project }} -f {{ nextcloud_compose_file }} pull {{ nextcloud_service }}
@@ -56,9 +56,9 @@
- >- - >-
{{ docker_prefix }} exec -u www-data nextcloud php occ upgrade {{ docker_prefix }} exec -u www-data nextcloud php occ upgrade
- >- - >-
{{ docker_prefix }} exec -u www-data nextcloud php occ app:update --all {{ docker_prefix }} exec -u www-data nextcloud php occ app:update --all || true
- >- - >-
{{ docker_prefix }} exec -u www-data nextcloud php occ maintenance:repair --include-expensive {{ docker_prefix }} exec -u www-data nextcloud php occ maintenance:repair --include-expensive || true
tasks: tasks:
- name: Ensure sshpass is installed (for password-based SSH) - name: Ensure sshpass is installed (for password-based SSH)
@@ -197,9 +197,12 @@
- -o - -o
- ConnectTimeout=15 - ConnectTimeout=15
- "{{ vm_user }}@{{ vm_ip }}" - "{{ vm_user }}@{{ vm_ip }}"
- bash - "{{ ('sudo ' if use_sudo else '') }}docker exec -u www-data nextcloud php occ maintenance:mode --off"
- -lc environment:
- "{{ ('sudo ' if use_sudo else '') }}{{ docker_prefix }} exec -u www-data nextcloud php occ maintenance:mode --off" SSHPASS: "{{ vm_pass }}"
register: nc_maint_off
changed_when: false
no_log: "{{ DEBUG == 0 }}"
# ------------------------- # -------------------------
# Readiness check (status.php) # Readiness check (status.php)