44 lines
1.7 KiB
YAML
44 lines
1.7 KiB
YAML
|
---
|
||
|
- name: Check if site is already installed.
|
||
|
command: "{{ drush_path }} --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
|
||
|
|
||
|
# See: https://www.drupal.org/node/2569365#comment-11680807
|
||
|
- name: Configure database correctly if using PostgreSQL.
|
||
|
command: psql -c "ALTER DATABASE {{ drupal_db_name }} SET bytea_output = 'escape';"
|
||
|
when: "('Drupal bootstrap' not in drupal_site_installed.stdout) and (drupal_db_backend == 'pgsql')"
|
||
|
become: yes
|
||
|
become_user: "{{ postgresql_user }}"
|
||
|
# See: https://github.com/ansible/ansible/issues/16048#issuecomment-229012509
|
||
|
vars:
|
||
|
ansible_ssh_pipelining: true
|
||
|
|
||
|
- name: Install Drupal with drush.
|
||
|
command: >
|
||
|
{{ drush_path }} site-install {{ drupal_install_profile | default('standard') }} -y
|
||
|
--root={{ drupal_core_path }}
|
||
|
--site-name="{{ drupal_site_name }}"
|
||
|
--account-name={{ drupal_account_name }}
|
||
|
--account-pass={{ drupal_account_pass }}
|
||
|
--db-url={{ drupal_db_backend }}://{{ drupal_db_user }}:{{ drupal_db_password }}@{{ drupal_db_host }}/{{ drupal_db_name }}
|
||
|
{{ drupal_site_install_extra_args | join(" ") }}
|
||
|
args:
|
||
|
chdir: "{{ drupal_core_path }}"
|
||
|
notify: clear opcache
|
||
|
when: "'Drupal bootstrap' not in drupal_site_installed.stdout"
|
||
|
become: no
|
||
|
|
||
|
- name: Install configured modules with drush.
|
||
|
command: >
|
||
|
{{ drush_path }} pm-enable -y {{ drupal_enable_modules | join(" ") }}
|
||
|
--root={{ drupal_core_path }}
|
||
|
args:
|
||
|
chdir: "{{ drupal_core_path }}"
|
||
|
when: ('Drupal bootstrap' not in drupal_site_installed.stdout) and drupal_enable_modules
|
||
|
become: no
|