--- # The seeds need to be executed as root, because www-data isn't allowed to create files in the wordpress directory - name: "๐Ÿงน Strip stale Multisite bareword constants from {{ WORDPRESS_CONFIG_FILE }}" shell: > container exec --user root {{ WORDPRESS_CONTAINER_ADDRESS }} sed -i -E "/^\s*define\(\s*'(DOMAIN_CURRENT_SITE|PATH_CURRENT_SITE)'\s*,.*\);\s*$/d" {{ WORDPRESS_DOCKER_CONF_PATH }} changed_when: true - name: ๐Ÿ”„ Update DB host in {{ WORDPRESS_CONFIG_FILE }} shell: > container exec --user root {{ WORDPRESS_CONTAINER_ADDRESS }} sed -i "s/define(\s*'DB_HOST'\s*,\s*'[^']*'\s*);/define( 'DB_HOST', '{{ lookup('database', application_id, 'host') | sed_escape('/') }}:{{ lookup('database', application_id, 'port') | sed_escape('/') }}' );/i" {{ WORDPRESS_DOCKER_CONF_PATH }} notify: compose-up - name: ๐Ÿ”„ Update DB name in {{ WORDPRESS_CONFIG_FILE }} shell: > container exec --user root {{ WORDPRESS_CONTAINER_ADDRESS }} sed -i "s/define(\s*'DB_NAME'\s*,\s*'[^']*'\s*);/define( 'DB_NAME', '{{ lookup('database', application_id, 'name') | sed_escape('/') }}' );/i" {{ WORDPRESS_DOCKER_CONF_PATH }} notify: compose-up - name: ๐Ÿ”„ Update DB user in {{ WORDPRESS_CONFIG_FILE }} shell: > container exec --user root {{ WORDPRESS_CONTAINER_ADDRESS }} sed -i "s/define(\s*'DB_USER'\s*,\s*'[^']*'\s*);/define( 'DB_USER', '{{ lookup('database', application_id, 'username') | sed_escape('/') }}' );/i" {{ WORDPRESS_DOCKER_CONF_PATH }} notify: compose-up - name: ๐Ÿ”„ Update DB password in {{ WORDPRESS_CONFIG_FILE }} shell: > container exec --user root -e PATCH_PASSWORD={{ lookup('database', application_id, 'password') | sed_escape('/') | quote }} {{ WORDPRESS_CONTAINER_ADDRESS }} sh -c "sed -i \"s/define(\\s*'DB_PASSWORD'\\s*,\\s*'[^']*'\\s*);/define( 'DB_PASSWORD', '\${PATCH_PASSWORD}' );/i\" {{ WORDPRESS_DOCKER_CONF_PATH }}" notify: compose-up no_log: "{{ MASK_CREDENTIALS_IN_LOGS | bool }}" - name: "๐Ÿšฟ Flush handlers to reinitialize new database credentials" meta: flush_handlers