Skip to content
Snippets Groups Projects
Commit 188ed74c authored by jurgenhaas's avatar jurgenhaas
Browse files

Add support for files root not being outside Drupal root, mainly required for D7 sites

parent e2cdeace
Branches
No related tags found
No related merge requests found
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
- name: Set facts - name: Set facts
set_fact: set_fact:
dir: '{{ webRoot }}/files/{{ drupal_domain.0.shortname|default("default") }}/{{ drupal_domain.1 }}' dir: '{{ filesRoot }}/{{ drupal_domain.0.shortname|default("default") }}/{{ drupal_domain.1 }}'
src: '{{ relativeRoot }}/files/{{ drupal_domain.0.shortname|default("default") }}/{{ drupal_domain.1 }}' src: '{{ relativeRoot }}/files/{{ drupal_domain.0.shortname|default("default") }}/{{ drupal_domain.1 }}'
dest: '{{ drupalRoot }}/sites/{{ drupal_domain.0.shortname|default("default") }}/{{ drupal_domain.1 }}' dest: '{{ drupalRoot }}/sites/{{ drupal_domain.0.shortname|default("default") }}/{{ drupal_domain.1 }}'
...@@ -20,15 +20,17 @@ ...@@ -20,15 +20,17 @@
group: '{{ apacheUser }}' group: '{{ apacheUser }}'
mode: 0755 mode: 0755
ignore_errors: yes ignore_errors: yes
when: drupal.files_outside_root|default(true)
- name: Check the status of the File Directory - name: Check the status of the File Directory
stat: stat:
path: '{{ dest }}' path: '{{ dest }}'
register: directory register: directory
when: drupal.files_outside_root|default(true)
- name: Move existing File Directory - name: Move existing File Directory
shell: rm -rf {{ dir }} && mv {{ dest }} {{ dir }} shell: rm -rf {{ dir }} && mv {{ dest }} {{ dir }}
when: directory.stat.exists and directory.stat.isdir when: drupal.files_outside_root|default(true) and directory.stat.exists and directory.stat.isdir
- name: Link Site Directory to File Directory - name: Link Site Directory to File Directory
file: file:
...@@ -38,6 +40,7 @@ ...@@ -38,6 +40,7 @@
owner: '{{ apacheUser }}' owner: '{{ apacheUser }}'
group: '{{ apacheUser }}' group: '{{ apacheUser }}'
mode: 0755 mode: 0755
when: drupal.files_outside_root|default(true)
- name: Ensure .htaccess - name: Ensure .htaccess
template: template:
......
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
- name: Link webroot to mounted directory - name: Link webroot to mounted directory
file: file:
src: '{{ drupal_domain.0.mountpoint }}/{{ drupal.id }}/{{ drupal_domain.0.shortname|default("default") }}' src: '{{ drupal_domain.0.mountpoint }}/{{ drupal.id }}/{{ drupal_domain.0.shortname|default("default") }}'
dest: '{{ webRoot }}/files/{{ drupal_domain.0.shortname|default("default") }}' dest: '{{ filesRoot }}/{{ drupal_domain.0.shortname|default("default") }}'
state: link state: link
owner: '{{ apacheUser }}' owner: '{{ apacheUser }}'
group: '{{ apacheUser }}' group: '{{ apacheUser }}'
......
...@@ -26,6 +26,17 @@ ...@@ -26,6 +26,17 @@
relativeRoot: '{{ drupal.relativeRoot|default(drupal_links_relative_root) }}' relativeRoot: '{{ drupal.relativeRoot|default(drupal_links_relative_root) }}'
drupalRoot: '{{ webRoot }}{{ drupal.root|default("") }}' drupalRoot: '{{ webRoot }}{{ drupal.root|default("") }}'
docRoot: '{{ webRoot }}{{ drupal.docroot|default(drupal.root|default("")) }}' docRoot: '{{ webRoot }}{{ drupal.docroot|default(drupal.root|default("")) }}'
- name: Set files facts
set_fact:
configRoot: '{{ webRoot }}/config'
filesRoot: '{{ webRoot }}/files'
settingsRoot: '{{ webRoot }}/settings'
- name: Set files facts when files not outside root
set_fact:
configRoot: '{{ drupalRoot }}/sites'
filesRoot: '{{ drupalRoot }}/sites'
settingsRoot: '{{ drupalRoot }}/sites'
when: not drupal.files_outside_root|default(true)
tags: tags:
- always - always
...@@ -143,7 +154,7 @@ ...@@ -143,7 +154,7 @@
- name: Ensure Files Directory - name: Ensure Files Directory
file: file:
path: '{{ webRoot }}/files' path: '{{ filesRoot }}'
state: directory state: directory
owner: '{{ apacheUser }}' owner: '{{ apacheUser }}'
group: '{{ apacheUser }}' group: '{{ apacheUser }}'
...@@ -180,7 +191,7 @@ ...@@ -180,7 +191,7 @@
- name: Create the settings.php files - name: Create the settings.php files
template: template:
src: '{{ drupal.template_dir|default("") }}{{ drupal.version|default("d7") }}_settings.php.jinja2' src: '{{ drupal.template_dir|default("") }}{{ drupal.version|default("d7") }}_settings.php.jinja2'
dest: '{{ webRoot }}/settings/{{ item.shortname|default("default") }}/settings.php' dest: '{{ settingsRoot }}/{{ item.shortname|default("default") }}/settings.php'
backup: yes backup: yes
with_items: '{{ drupal.domains }}' with_items: '{{ drupal.domains }}'
tags: tags:
...@@ -190,7 +201,7 @@ ...@@ -190,7 +201,7 @@
- name: Add deploy info to settings.local.php files - name: Add deploy info to settings.local.php files
lineinfile: lineinfile:
path: '{{ webRoot }}/settings/{{ item.0.shortname|default("default") }}/settings.local.php' path: '{{ settingsRoot }}/{{ item.0.shortname|default("default") }}/settings.local.php'
create: yes create: yes
regex: '{{ item.1.regex }}' regex: '{{ item.1.regex }}'
line: '{{ item.1.line }}' line: '{{ item.1.line }}'
...@@ -219,14 +230,14 @@ ...@@ -219,14 +230,14 @@
state: link state: link
force: yes force: yes
with_items: '{{ drupal.domains }}' with_items: '{{ drupal.domains }}'
when: item.install|default(true) when: drupal.files_outside_root|default(true) and item.install|default(true)
- block: - block:
- name: Create the drush.yml files - name: Create the drush.yml files
template: template:
src: drush-9.yml.jinja2 src: drush-9.yml.jinja2
dest: '{{ webRoot }}/settings/{{ item.shortname|default("default") }}/drush.yml' dest: '{{ settingsRoot }}/{{ item.shortname|default("default") }}/drush.yml'
with_items: '{{ drupal.domains }}' with_items: '{{ drupal.domains }}'
when: item.install|default(true) when: item.install|default(true)
...@@ -237,7 +248,7 @@ ...@@ -237,7 +248,7 @@
state: link state: link
force: yes force: yes
with_items: '{{ drupal.domains }}' with_items: '{{ drupal.domains }}'
when: item.install|default(true) when: drupal.files_outside_root|default(true) and item.install|default(true)
tags: tags:
- deploy - deploy
...@@ -259,9 +270,9 @@ ...@@ -259,9 +270,9 @@
follow: no follow: no
with_items: with_items:
- '{{ docRoot }}' - '{{ docRoot }}'
- '{{ webRoot }}/config' - '{{ configRoot }}'
- '{{ webRoot }}/files' - '{{ filesRoot }}'
- '{{ webRoot }}/settings' - '{{ settingsRoot }}'
tags: tags:
- deploy - deploy
- SetPermissions - SetPermissions
...@@ -275,8 +286,8 @@ ...@@ -275,8 +286,8 @@
recurse: yes recurse: yes
follow: no follow: no
with_items: with_items:
- '{{ webRoot }}/config' - '{{ configRoot }}'
- '{{ webRoot }}/files' - '{{ filesRoot }}'
tags: tags:
- deploy - deploy
- SetPermissions - SetPermissions
...@@ -315,14 +326,14 @@ ...@@ -315,14 +326,14 @@
when: item.0.install|default(true) when: item.0.install|default(true)
- name: Set Extended Default Permissions - name: Set Extended Default Permissions
command: 'setfacl -dRm u:{{ apacheUser }}:rwX,g:{{ apacheUser }}:rwX,o::rX {{ webRoot }}/files' command: 'setfacl -dRm u:{{ apacheUser }}:rwX,g:{{ apacheUser }}:rwX,o::rX {{ filesRoot }}'
tags: tags:
- deploy - deploy
- SetPermissions - SetPermissions
when: drupal.install_extra_dirs|default(true) when: drupal.install_extra_dirs|default(true)
- name: Set Extended Permissions - name: Set Extended Permissions
command: 'setfacl -Rm u:{{ apacheUser }}:rwX,g:{{ apacheUser }}:rwX,o::rX {{ webRoot }}/files' command: 'setfacl -Rm u:{{ apacheUser }}:rwX,g:{{ apacheUser }}:rwX,o::rX {{ filesRoot }}'
tags: tags:
- deploy - deploy
- SetPermissions - SetPermissions
...@@ -330,7 +341,7 @@ ...@@ -330,7 +341,7 @@
- name: Make htaccess read-only - name: Make htaccess read-only
file: file:
path: '{{ webRoot }}/files/{{ drupal_domain.0.shortname|default("default") }}/{{ drupal_domain.1 }}/.htaccess' path: '{{ filesRoot }}/{{ drupal_domain.0.shortname|default("default") }}/{{ drupal_domain.1 }}/.htaccess'
mode: 0444 mode: 0444
with_nested: with_nested:
- '{{ drupal.domains }}' - '{{ drupal.domains }}'
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment