nova versió de wordpress si s'actualitza via Ansible

This commit is contained in:
2026-05-21 17:18:56 +02:00
parent ebed31a657
commit 4c633d8001

View File

@@ -1,5 +1,5 @@
---
- name: Crear directori d'instal·lació de WordPress
- name: Crear directori d'instal·lació de WordPress si no existeix
ansible.builtin.file:
path: "{{ wp_install_dir }}"
state: directory
@@ -7,21 +7,54 @@
group: www-data
mode: '0755'
- name: Descarregar WordPress
ansible.builtin.get_url:
url: "https://wordpress.org/wordpress-{{ wp_version }}.tar.gz"
dest: /tmp/wordpress.tar.gz
- name: Comprovar la versió actual de WordPress instal·lada
ansible.builtin.slurp:
src: "{{ wp_install_dir }}/.wp_version"
register: wp_current_version_encoded
failed_when: false
- name: Extreure WordPress
ansible.builtin.unarchive:
src: /tmp/wordpress.tar.gz
dest: /var/www/html/
remote_src: yes
owner: www-data
group: www-data
creates: "{{ wp_install_dir }}/wp-login.php"
- name: Definir la versió actual com a variable
ansible.builtin.set_fact:
wp_current_version: "{{ (wp_current_version_encoded.content | b64decode | trim) if wp_current_version_encoded.content is defined else '0.0.0' }}"
- name: Copiar wp-config.php
- name: Bloc d'actualització (S'executa només si canvia la versió)
block:
- name: Trobar fitxers de WordPress anteriors per netejar (mantenint wp-content i wp-config)
ansible.builtin.find:
paths: "{{ wp_install_dir }}"
excludes:
- 'wp-content'
- 'wp-config.php'
- '.wp_version'
file_type: any
hidden: true
register: files_to_delete
- name: Eliminar fitxers de la versió antiga
ansible.builtin.file:
path: "{{ item.path }}"
state: absent
loop: "{{ files_to_delete.files }}"
- name: Descarregar i extreure la nova versió de WordPress directament
ansible.builtin.unarchive:
src: "https://wordpress.org/wordpress-{{ wp_version }}.tar.gz"
dest: "{{ wp_install_dir }}"
remote_src: yes
owner: www-data
group: www-data
extra_opts: [--strip-components=1]
- name: Desar el registre de la nova versió instal·lada
ansible.builtin.copy:
content: "{{ wp_version }}"
dest: "{{ wp_install_dir }}/.wp_version"
owner: www-data
group: www-data
mode: '0644'
when: wp_version != wp_current_version
- name: Copiar o actualitzar wp-config.php (S'executa sempre per seguretat)
ansible.builtin.template:
src: wp-config.php.j2
dest: "{{ wp_install_dir }}/wp-config.php"