agaric-coop/provisioning/box/post-tasks/10-drupal.yml

84 lines
2.6 KiB
YAML

---
- name: determine status of settings location
stat:
path: "{{ drupal_core_path }}/sites/default"
register: stat_result
- name: ensure settings location is writable
file:
path: "{{ drupal_core_path }}/sites/default"
mode: 0775
state: directory
owner: vagrant
group: vagrant
when: stat_result.stat.exists == true and stat_result.stat.writeable == false
become: yes
- name: ensure settings file is still writable
file:
path: "{{ drupal_core_path }}/sites/default/settings.php"
mode: 0664
state: file
owner: vagrant
group: vagrant
when: stat_result.stat.exists == true and stat_result.stat.writeable == false
become: yes
- name: Run composer install.
command: "composer install"
args:
chdir: "{{ drupal_composer_install_dir }}"
- name: install default settings.php
copy:
src: "{{ drupal_core_path }}/sites/default/default.settings.php"
dest: "{{ drupal_core_path }}/sites/default/settings.php"
remote_src: true
- name: enable settings.local.php include_tasks
blockinfile:
path: "{{ drupal_core_path }}/sites/default/settings.php"
marker: "/* {mark} ANSIBLE MANAGED BLOCK: LOCAL INCLUDE */"
insertafter: EOF
content: |1+
if (file_exists($app_root . '/' . $site_path . '/settings.local.php')) {
include $app_root . '/' . $site_path . '/settings.local.php';
}
- name: create settings.local.php
template:
src: "settings.local.php.j2"
dest: "{{ drupal_core_path }}/sites/default/settings.local.php"
- name: Check if site is already installed.
command: "{{ drupal_composer_install_dir }}/vendor/bin/drush --root={{ drupal_core_path}}/ status bootstrap"
args:
chdir: "{{ drupal_core_path }}"
register: drupal_site_installed
failed_when: "drupal_site_installed.stdout is undefined"
changed_when: false
become: no
- name: Install Drupal with drush.
command: >
{{ drupal_composer_install_dir }}/vendor/bin/drush site-install -y
--root={{ drupal_core_path }}
--site-name={{ drupal_site_name }}
--account-name={{ drupal_account_name }}
--account-pass={{ drupal_account_pass }}
--site-mail={{ drupal_account_email }}
args:
chdir: "{{ drupal_core_path }}"
become: no
when: "force_reinstall|default(false) or 'Drupal bootstrap' not in drupal_site_installed.stdout"
- name: Install theme build dependencies
npm:
path: "{{ drupal_core_path }}/themes/custom/agarica/patternlibrary"
state: present
- name: Build theme artifacts
command: grunt kss
args:
chdir: "{{ drupal_core_path }}/themes/custom/agarica/patternlibrary"
ignore_errors: yes