| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- ---
- - name: Vérifier si WordPress existe sous /var/www/wordpress
- stat:
- path: /var/www/wordpress
- register: wordpress_dir
- # Si /var/www/wordpress n'existe pas, alors télécharger WordPress
- - name: Télécharger l'archive WordPress en utilisant curl
- command: curl -o /tmp/wordpress.tar.gz https://wordpress.org/latest.tar.gz
- args:
- creates: /tmp/wordpress.tar.gz
- when: wordpress_dir.stat.exists == False
- # Si /var/www/wordpress n'existe pas, alors décompresser WordPress
- - name: Décompacter l'archive WordPress
- ansible.builtin.unarchive:
- src: /tmp/wordpress.tar.gz
- dest: /var/www
- remote_src: yes
- owner: www-data
- group: www-data
- when: wordpress_dir.stat.exists == False
- # Vérifier si /var/www/wordpress/wp-config.php existe
- - name: Vérifier si wp-config.php existe sous /var/www/wordpress
- stat:
- path: /var/www/wordpress/wp-config.php
- register: wp_config
- # Télécharger des clés secrètes WordPress
- - name: Télécharger config wp salt
- command: curl https://api.wordpress.org/secret-key/1.1/salt/
- register: wp_salt
- when: wp_config.stat.exists == False
- # Créer wp-config.php s'il n'existe pas
- - name: Create wp-config.php
- ansible.builtin.template:
- src: templates/wp-config-sample.php.j2
- dest: /var/www/wordpress/wp-config.php
- owner: www-data
- group: www-data
- mode: "0440"
- when: wp_config.stat.exists == False
- # Vérifier si WordPress CLI existe
- - name: Vérifier si wp-cli existe
- ansible.builtin.stat:
- path: /usr/local/bin/wp
- register: wp_cli
- # Télécharger WordPress CLI
- - name: Télécharger wp-cli
- command: curl -o /usr/local/bin/wp https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
- args:
- creates: /usr/local/bin/wp
- when: wp_cli.stat.exists == False
- # Rendre WordPress CLI exécutable
- - name: Rendre WordPress CLI exécutable
- command: chmod +x /usr/local/bin/wp
- # Vérifier si WordPress est installé (tables de la base de données initialisées)
- - name: Vérifier si WordPress est installé
- command: sudo -u www-data wp core is-installed --path=/var/www/wordpress
- register: wp_installed
- ignore_errors: yes
- # Installer Wordpress avec wp core install (cwd: /var/www/wordpress)
- - name: Installer WordPress
- command: sudo -u www-data wp core install --url={{ wp_site_url }} --title="{{ wp_site_title }}" --admin_user={{ wp_username }} --admin_password={{ wp_password }} --admin_email={{ wp_admin_email }}
- # WP-CLI complains if we run it as root, so we become a regular user
- become: no
- # Shou
- args:
- chdir: /var/www/wordpress
- when: wp_installed.rc != 0
|