# "Emergency" reinstalls (from /opt/iiab/downloads/wordpress.tar.gz # to /library/wordpress) should also work offline... # # ONLINE OR OFFLINE, IF YOU NEED A CLEAN REINSTALL OF WORDPRESS DURING YOUR # NEXT RUN OF "./runrole wordpress" OR "./iiab-install" PLEASE FIRST DO: # # - "mv /library/wordpress /library/wordpress.old" # - back up WordPress's database then drop it # # REASON: "keep_newer: yes" below tries to preserve WordPress's self-upgrades # and security enhancements using timestamps under /library/wordpress, as these # can arise without warning when WordPress is online, since WordPress ~4.8 - name: Download {{ wordpress_download_base_url }}/{{ wordpress_src }} to {{ downloads_dir }} get_url: url: "{{ wordpress_download_base_url }}/{{ wordpress_src }}" dest: "{{ downloads_dir }}" timeout: "{{ download_timeout }}" # force: yes # backup: yes register: wp_download_output when: internet_available | bool - name: Symlink {{ downloads_dir }}/wordpress.tar.gz -> {{ wp_download_output.dest }} file: src: "{{ wp_download_output.dest }}" path: "{{ downloads_dir }}/wordpress.tar.gz" # /opt/iiab/downloads state: link when: wp_download_output.dest is defined - name: Does {{ downloads_dir }}/wordpress.tar.gz link exist? stat: path: "{{ downloads_dir }}/wordpress.tar.gz" # /opt/iiab/downloads register: wp_link - name: FAIL (force Ansible to exit) IF {{ downloads_dir }}/wordpress.tar.gz doesn't exist fail: msg: "{{ downloads_dir }}/wordpress.tar.gz is REQUIRED in order to install WordPress." when: not wp_link.stat.exists - name: "Unpack /opt/iiab/downloads/wordpress.tar.gz to permanent location /library/wordpress - owner: root, group: {{ apache_user }}, mode: 0664, keep_newer: yes" unarchive: src: "{{ downloads_dir }}/wordpress.tar.gz" dest: "{{ wp_install_path }}" # owner: root group: "{{ apache_user }}" # DO WE REALLY STILL WANT THIS FOR NGINX? mode: '0664' keep_newer: yes - name: Make /library/wordpress directories 775 so Apache can traverse and write (most files remain 0664) command: "/usr/bin/find {{ wp_abs_path }} -type d -exec chmod 775 {} +" - name: Install {{ wp_abs_path }}/wp-keys.php.BAK copy: src: wp-keys.php.BAK dest: "{{ wp_abs_path }}/wp-keys.php.BAK" # owner: root group: "{{ apache_user }}" # DO WE REALLY STILL WANT THIS FOR NGINX? mode: '0640' # Fetch random salts for WordPress config into wp-keys.php file by generating script and running - name: Install script /tmp/get-iiab-wp-salts from template template: src: get-iiab-wp-salts.j2 dest: /tmp/get-iiab-wp-salts # owner: root # group: root mode: '0700' - name: Run /tmp/get-iiab-wp-salts to create /library/wordpress/wp-keys.php command: /tmp/get-iiab-wp-salts - name: Remove script /tmp/get-iiab-wp-salts file: path: /tmp/get-iiab-wp-salts state: absent - name: Install {{ wp_abs_path }}/wp-config.php template: src: wp-config.php.j2 dest: "{{ wp_abs_path }}/wp-config.php" # owner: root group: "{{ apache_user }}" # DO WE REALLY STILL WANT THIS FOR NGINX? mode: '0660' - name: Install etc/{{ apache_config_dir }}/wordpress.conf from template, for http://box{{ wp_url }} template: src: wordpress.conf.j2 dest: "/etc/{{ apache_config_dir }}/wordpress.conf" when: apache_enabled | bool - name: "Add 'wordpress_installed: True' to {{ iiab_state_file }}" # /etc/iiab/iiab_state.yml lineinfile: dest: "{{ iiab_state_file }}" regexp: '^wordpress_installed' line: 'wordpress_installed: True' state: present