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
No related branches found
No related tags found
No related merge requests found
......@@ -5,7 +5,7 @@
- name: Set facts
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 }}'
dest: '{{ drupalRoot }}/sites/{{ drupal_domain.0.shortname|default("default") }}/{{ drupal_domain.1 }}'
......@@ -20,15 +20,17 @@
group: '{{ apacheUser }}'
mode: 0755
ignore_errors: yes
when: drupal.files_outside_root|default(true)
- name: Check the status of the File Directory
stat:
path: '{{ dest }}'
register: directory
when: drupal.files_outside_root|default(true)
- name: Move existing File Directory
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
file:
......@@ -38,6 +40,7 @@
owner: '{{ apacheUser }}'
group: '{{ apacheUser }}'
mode: 0755
when: drupal.files_outside_root|default(true)
- name: Ensure .htaccess
template:
......
......@@ -14,7 +14,7 @@
- name: Link webroot to mounted directory
file:
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
owner: '{{ apacheUser }}'
group: '{{ apacheUser }}'
......
......@@ -26,6 +26,17 @@
relativeRoot: '{{ drupal.relativeRoot|default(drupal_links_relative_root) }}'
drupalRoot: '{{ webRoot }}{{ 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:
- always
......@@ -143,7 +154,7 @@
- name: Ensure Files Directory
file:
path: '{{ webRoot }}/files'
path: '{{ filesRoot }}'
state: directory
owner: '{{ apacheUser }}'
group: '{{ apacheUser }}'
......@@ -180,7 +191,7 @@
- name: Create the settings.php files
template:
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
with_items: '{{ drupal.domains }}'
tags:
......@@ -190,7 +201,7 @@
- name: Add deploy info to settings.local.php files
lineinfile:
path: '{{ webRoot }}/settings/{{ item.0.shortname|default("default") }}/settings.local.php'
path: '{{ settingsRoot }}/{{ item.0.shortname|default("default") }}/settings.local.php'
create: yes
regex: '{{ item.1.regex }}'
line: '{{ item.1.line }}'
......@@ -219,14 +230,14 @@
state: link
force: yes
with_items: '{{ drupal.domains }}'
when: item.install|default(true)
when: drupal.files_outside_root|default(true) and item.install|default(true)
- block:
- name: Create the drush.yml files
template:
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 }}'
when: item.install|default(true)
......@@ -237,7 +248,7 @@
state: link
force: yes
with_items: '{{ drupal.domains }}'
when: item.install|default(true)
when: drupal.files_outside_root|default(true) and item.install|default(true)
tags:
- deploy
......@@ -259,9 +270,9 @@
follow: no
with_items:
- '{{ docRoot }}'
- '{{ webRoot }}/config'
- '{{ webRoot }}/files'
- '{{ webRoot }}/settings'
- '{{ configRoot }}'
- '{{ filesRoot }}'
- '{{ settingsRoot }}'
tags:
- deploy
- SetPermissions
......@@ -275,8 +286,8 @@
recurse: yes
follow: no
with_items:
- '{{ webRoot }}/config'
- '{{ webRoot }}/files'
- '{{ configRoot }}'
- '{{ filesRoot }}'
tags:
- deploy
- SetPermissions
......@@ -315,14 +326,14 @@
when: item.0.install|default(true)
- 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:
- deploy
- SetPermissions
when: drupal.install_extra_dirs|default(true)
- 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:
- deploy
- SetPermissions
......@@ -330,7 +341,7 @@
- name: Make htaccess read-only
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
with_nested:
- '{{ drupal.domains }}'
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment