From 538b05abb214e129bbd84332bb0d8d8d64a94fec Mon Sep 17 00:00:00 2001 From: Andrea Dell'Amico Date: Mon, 19 Mar 2018 20:10:05 +0100 Subject: [PATCH] geoserver role: fix the upgrade scenario. --- geoserver/geoserver/tasks/geoserver.yml | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/geoserver/geoserver/tasks/geoserver.yml b/geoserver/geoserver/tasks/geoserver.yml index 0b3ff53c..d3380b6a 100644 --- a/geoserver/geoserver/tasks/geoserver.yml +++ b/geoserver/geoserver/tasks/geoserver.yml @@ -17,16 +17,29 @@ with_items: '{{ tomcat_m_instances }}' - name: Download the Geoserver file distribution - unarchive: copy=no src={{ geoserver_download_url }} dest={{ geoserver_download_directory }} creates={{ geoserver_download_directory }}/geoserver-{{ geoserver_version }}.war validate_certs=False + get_url: url={{ geoserver_download_url }} dest={{ geoserver_download_directory }} validate_certs=False register: geoserver_download - - name: Remove the old geoserver instance if there's any - file: dest=dest={{ item.instance_path }}/webapps/{{ geoserver_app_name | lower }} state=absent + - name: Remove the old geoserver war files + file: dest={{ geoserver_download_directory }}/{{ item }} state=absent + with_items: + - geoserver.war + - target + when: geoserver_download is changed + + - name: Unpack the Geoserver zip file + unarchive: copy=no src={{ geoserver_download_directory }}/geoserver-{{ geoserver_version }}-war.zip dest={{ geoserver_download_directory }} creates={{ geoserver_download_directory }}/geoserver.war + + - name: Remove the old geoserver instance if it is present + file: dest={{ item.instance_path }}/webapps/{{ geoserver_app_name | lower }} state=absent + with_items: '{{ tomcat_m_instances }}' + when: geoserver_download is changed + + - name: Create the Geoserver webapp directory + file: path={{ item.instance_path }}/webapps/{{ geoserver_app_name | lower }} state=directory owner={{ item.user }} group={{ item.user }} with_items: '{{ tomcat_m_instances }}' - when: ( geoserver_download | changed ) - name: Unpack the Geoserver war file - #unarchive: copy=no src={{ geoserver_download_directory }}/geoserver-{{ geoserver_version }}.war dest={{ item.instance_path }}/webapps/{{ geoserver_app_name | lower }} creates={{ item.instance_path }}/webapps/{{ geoserver_app_name | lower }}/WEB-INF/lib owner={{ item.user }} group={{ item.user }} unarchive: copy=no src={{ geoserver_download_directory }}/geoserver.war dest={{ item.instance_path }}/webapps/{{ geoserver_app_name | lower }} creates={{ item.instance_path }}/webapps/{{ geoserver_app_name | lower }}/WEB-INF/lib owner={{ item.user }} group={{ item.user }} with_items: '{{ tomcat_m_instances }}' notify: tomcat instances restart