forked from ISTI-ansible-roles/ansible-roles
83 lines
4.3 KiB
YAML
83 lines
4.3 KiB
YAML
---
|
|
- block:
|
|
- name: Remove the Thredds webapp directory
|
|
file: path={{ item.instance_path }}/webapps/{{ thredds_app_name | lower }} state=absent
|
|
with_items: '{{ tomcat_m_instances }}'
|
|
notify: tomcat instances restart
|
|
|
|
when: not thredds_install or thredds_upgrade
|
|
tags: [ 'thredds', 'tomcat' ]
|
|
|
|
- block:
|
|
- name: Create the Thredds webapp directory
|
|
file: path={{ item.instance_path }}/webapps/{{ thredds_app_name | lower }} state=directory owner={{ item.user }} group={{ item.user }}
|
|
with_items: '{{ tomcat_m_instances }}'
|
|
|
|
- name: Create the Thredds data directory
|
|
file: path={{ thredds_data_content_dir }} state=directory owner={{ item.user }} group={{ item.user }}
|
|
with_items: '{{ tomcat_m_instances }}'
|
|
|
|
- name: Check if the configuration files were already initialized with our versions
|
|
stat: path={{ thredds_data_content_dir }}/thredds/.conf_initialized
|
|
register: thredds_skip_conf
|
|
tags: [ 'thredds', 'tomcat', 'thredds_conf' ]
|
|
|
|
- name: Install the Thredds data configuration files
|
|
template: src={{ item[1] }}.j2 dest={{ thredds_data_content_dir }}/thredds/{{ item[1] }} owner={{ item.0.user }} group={{ item.0.user }} mode=644
|
|
with_nested:
|
|
- '{{ tomcat_m_instances }}'
|
|
- [ 'threddsConfig.xml', 'catalog.xml', 'wmsConfig.xml' ]
|
|
notify: tomcat instances restart
|
|
when: not thredds_skip_conf.stat.exists
|
|
tags: [ 'thredds', 'tomcat', 'thredds_conf' ]
|
|
|
|
- name: Create the file that states that the thredds instance has been configured
|
|
copy: content="initialized by ansible" dest={{ thredds_data_content_dir }}/thredds/.conf_initialized mode=0400
|
|
register: thredds_skip_conf
|
|
tags: [ 'thredds', 'tomcat', 'thredds_conf' ]
|
|
|
|
- name: Create the custom palettes directory
|
|
file: dest={{ thredds_data_content_dir }}/thredds/customPalettes state=directory owner={{ item.user }} group={{ item.user }}
|
|
when: thredds_palettes_customisation
|
|
with_items: '{{ tomcat_m_instances }}'
|
|
tags: [ 'thredds', 'tomcat', 'thredds_custom_palettes' ]
|
|
|
|
- name: Install the custom palettes
|
|
unarchive: src=customPalettes.tar.gz dest={{ thredds_data_content_dir }}/thredds/customPalettes/ remote_src=no owner={{ item.user }} group={{ item.user }}
|
|
args:
|
|
creates: '{{ thredds_data_content_dir }}/thredds/customPalettes/occam.pal'
|
|
with_items: '{{ tomcat_m_instances }}'
|
|
notify: tomcat instances restart
|
|
when: thredds_palettes_customisation
|
|
tags: [ 'thredds', 'tomcat', 'thredds_custom_palettes' ]
|
|
|
|
- name: Get the thredds war file
|
|
maven_artifact: artifact_id={{ thredds_name }} version={{ thredds_version | default(omit) }} group_id={{ thredds_group_id }} extension={{ thredds_extension | default('war') }} repository_url={{ thredds_repository_url }} dest={{ thredds_download_directory }}/{{ thredds_file }}
|
|
|
|
- name: Add the netcdf nschloe ppa
|
|
apt_repository: repo='ppa:nschloe/netcdf-backports' update_cache=yes
|
|
|
|
- name: Install the NetCDF
|
|
apt: name={{ item }} state=latest update_cache=yes cache_valid_time=3600
|
|
with_items: 'netcdf-bin'
|
|
|
|
- name: Unarchive the thredds war
|
|
unarchive: copy=no src={{ thredds_download_directory }}/{{ thredds_file }} dest={{ item.instance_path }}/webapps/{{ thredds_app_name | lower }} creates={{ item.instance_path }}/webapps/{{ thredds_app_name | lower }}/WEB-INF/lib owner={{ item.user }} group={{ item.user }}
|
|
with_items: '{{ tomcat_m_instances }}'
|
|
notify: tomcat instances restart
|
|
|
|
- name: Install the Thredds webapp configuration files
|
|
template: src=web.xml.j2 dest={{ item.instance_path }}/webapps/{{ thredds_app_name | lower }}/WEB-INF/web.xml owner={{ item.user }} group={{ item.user }} mode=644
|
|
with_items: '{{ tomcat_m_instances }}'
|
|
notify: tomcat instances restart
|
|
tags: [ 'thredds', 'tomcat', 'thredds_conf', 'thredds_webxml' ]
|
|
|
|
- name: Install the Thredds log4j configuration file
|
|
template: src=log4j2.xml.j2 dest={{ item.instance_path }}/webapps/{{ thredds_app_name | lower }}/WEB-INF/classes/log4j2.xml owner=root group=root mode=0444
|
|
with_items: '{{ tomcat_m_instances }}'
|
|
tags: [ 'thredds', 'tomcat', 'thredds_conf', 'thredds_log4j' ]
|
|
|
|
when: thredds_install
|
|
tags: [ 'thredds', 'tomcat' ]
|
|
|