edit
This commit is contained in:
@@ -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)
|
||||||
|
|||||||
Reference in New Issue
Block a user