From 7adc338b0350cba10384823a75bd347cec2202c6 Mon Sep 17 00:00:00 2001 From: yasima-csiro Date: Fri, 14 Mar 2025 09:58:31 +1100 Subject: [PATCH 1/6] Set up logger jar --- ansible/README.md | 2 +- ansible/roles/logger-service/tasks/main.yml | 66 ++++++++++++++++++++- ansible/roles/logger-service/vars/main.yml | 6 +- 3 files changed, 69 insertions(+), 5 deletions(-) diff --git a/ansible/README.md b/ansible/README.md index 8014b8a76..f24b46ecf 100644 --- a/ansible/README.md +++ b/ansible/README.md @@ -28,7 +28,7 @@ The easiest way to use these roles is to use parameterised includes in your main - deploy }}' -- include: ../../tomcat_deploy/tasks/main.yml war_url='{{ logger_war_url }}' context_path='{{ logger_context_path }}' hostname='{{ logger_hostname }}' +- include: ../../tomcat_deploy/tasks/main.yml war_url='{{ logger_artifact_url }}' context_path='{{ logger_context_path }}' hostname='{{ logger_hostname }}' tags: - logger - apache_vhost diff --git a/ansible/roles/logger-service/tasks/main.yml b/ansible/roles/logger-service/tasks/main.yml index 7336608c5..f2aa0316d 100644 --- a/ansible/roles/logger-service/tasks/main.yml +++ b/ansible/roles/logger-service/tasks/main.yml @@ -169,10 +169,74 @@ - include_tasks: ../../tomcat_deploy/tasks/main.yml vars: - war_url: '{{ logger_war_url }}' + war_url: '{{ logger_artifact_url }}' context_path: '{{ logger_context_path }}' hostname: '{{ logger_hostname }}' tags: - logger-service - deploy - tomcat_vhost + when: not exec_jar + +- name: add logger-service jar and setup service + include_role: + name: exec-jar + vars: + service_name: 'logger-service' + jar_url: '{{ logger_artifact_url }}' + log_config_filename: "logback.xml" + java_headless: True + tags: + - deploy + - service + - logger-service + when: exec_jar + +#- name: Restart logger service +# service: +# name: 'logger-service' +# state: restarted +# enabled: yes +# tags: +# - logger-service +# - properties +# when: exec_jar + +- name: ensure target directories exist [data subdirectories etc.] + file: path={{item}} state=directory owner="logger-service" group="logger-service" + with_items: + - "{{data_dir}}/logger-service/config" + - "/var/log/atlas/logger-service" + notify: + - restart logger-service + tags: + - logger-service + - properties + when: exec_jar + +- name: set data ownership for {{data_dir}}/logger + file: path={{data_dir}}/logger owner="logger-service" group="logger-service" + notify: + - restart logger-service + tags: + - logger-service + - properties + when: exec_jar + +- name: set data ownership for /opt/atlas/logger-service + file: path=/opt/atlas/logger-service owner="logger-service" group="logger-service" recurse=true + notify: + - restart logger-service + tags: + - logger-service + - properties + when: exec_jar + +- name: set data ownership for /var/log/atlas/logger-service + file: path=/var/log/atlas/logger-service owner="logger-service" group="logger-service" recurse=true + notify: + - restart logger-service + tags: + - logger-service + - properties + when: exec_jar diff --git a/ansible/roles/logger-service/vars/main.yml b/ansible/roles/logger-service/vars/main.yml index 037c24090..e68d77e74 100644 --- a/ansible/roles/logger-service/vars/main.yml +++ b/ansible/roles/logger-service/vars/main.yml @@ -2,7 +2,7 @@ version: "{{ logger_version | default('LATEST') }}" artifactId: "logger-service" groupId: "au.org.ala" -classifier: '' -packaging: "war" -logger_war_url: "{{maven_repo_ws_url}}" +classifier: "{{ logger_classifier | default('') }}" +packaging: "{{ logger_packaging | default('war') }}" +logger_artifact_url: "{{maven_repo_ws_url}}" content_type_options_header: "{{ logger_content_type_options_header | default(false) }}" From 25bd424ee38390819da8bc71d3bde08891f3a7fc Mon Sep 17 00:00:00 2001 From: yasima-csiro Date: Tue, 18 Mar 2025 10:23:34 +1100 Subject: [PATCH 2/6] Update logger jar tomcat permissions --- ansible/roles/logger-service/tasks/main.yml | 43 ++++++++++----------- 1 file changed, 21 insertions(+), 22 deletions(-) diff --git a/ansible/roles/logger-service/tasks/main.yml b/ansible/roles/logger-service/tasks/main.yml index f2aa0316d..5f9b7c123 100644 --- a/ansible/roles/logger-service/tasks/main.yml +++ b/ansible/roles/logger-service/tasks/main.yml @@ -48,13 +48,13 @@ - name: ensure target directories exist [data subdirectories etc.] file: path={{item}} state=directory owner={{tomcat_user}} group={{tomcat_user}} with_items: - - "{{data_dir}}/logger/config" + - "{{data_dir}}/{{config_directory | default('logger')}}/config" tags: - logger-service - properties - name: copy all config.properties - template: src=logger-config.properties dest={{data_dir}}/logger/config/logger-config.properties output_encoding=iso-8859-1 + template: src=logger-config.properties dest={{data_dir}}/{{config_directory | default('logger')}}/config/logger-config.properties output_encoding=iso-8859-1 tags: - logger-service - properties @@ -63,13 +63,13 @@ - name: copy logback config template: src: logback.xml - dest: "{{data_dir}}/logger/config/logback.xml" + dest: "{{data_dir}}/{{config_directory | default('logger')}}/config/logback.xml" tags: - properties - logger-service - name: set data ownership - file: path={{data_dir}}/logger owner={{tomcat_user}} group={{tomcat_user}} recurse=true + file: path={{data_dir}}/{{config_directory | default('logger')}} owner={{tomcat_user}} group={{tomcat_user}} recurse=true notify: - restart tomcat tags: @@ -87,7 +87,7 @@ when: not webserver_nginx - name: copy all SQL auth ip scripts - template: src={{ item }} dest={{data_dir}}/logger/setup/ + template: src={{ item }} dest={{data_dir}}/{{config_directory | default('logger')}}/setup/ with_items: - "sql/auth-ip.sql" when: logger_authorize_ip_list is defined @@ -192,18 +192,8 @@ - logger-service when: exec_jar -#- name: Restart logger service -# service: -# name: 'logger-service' -# state: restarted -# enabled: yes -# tags: -# - logger-service -# - properties -# when: exec_jar - - name: ensure target directories exist [data subdirectories etc.] - file: path={{item}} state=directory owner="logger-service" group="logger-service" + file: path={{item}} state=directory owner={{tomcat_user}} group={{tomcat_user}} with_items: - "{{data_dir}}/logger-service/config" - "/var/log/atlas/logger-service" @@ -214,8 +204,8 @@ - properties when: exec_jar -- name: set data ownership for {{data_dir}}/logger - file: path={{data_dir}}/logger owner="logger-service" group="logger-service" +- name: set data ownership for /opt/atlas/logger-service + file: path=/opt/atlas/logger-service owner={{tomcat_user}} group={{tomcat_user}} recurse=true notify: - restart logger-service tags: @@ -223,8 +213,8 @@ - properties when: exec_jar -- name: set data ownership for /opt/atlas/logger-service - file: path=/opt/atlas/logger-service owner="logger-service" group="logger-service" recurse=true +- name: set data ownership for /var/log/atlas/logger-service + file: path=/var/log/atlas/logger-service owner={{tomcat_user}} group={{tomcat_user}} recurse=true notify: - restart logger-service tags: @@ -232,11 +222,20 @@ - properties when: exec_jar -- name: set data ownership for /var/log/atlas/logger-service - file: path=/var/log/atlas/logger-service owner="logger-service" group="logger-service" recurse=true +- name: set data ownership for /var/log/{{tomcat}} + file: path=/var/log/{{tomcat}} owner={{tomcat_user}} group={{tomcat_user}} recurse=true notify: - restart logger-service tags: - logger-service - properties when: exec_jar + +- name: set data ownership for /var/lib/{{tomcat}}/logs + file: path=/var/ib/{{tomcat}}/logs owner={{tomcat_user}} group={{tomcat_user}} recurse=true + notify: + - restart logger-service + tags: + - logger-service + - properties + when: exec_jar \ No newline at end of file From 9f06108c8a59cb41c402cc27e91c07fda5692239 Mon Sep 17 00:00:00 2001 From: yasima-csiro Date: Wed, 19 Mar 2025 10:22:24 +1100 Subject: [PATCH 3/6] Update logger set up --- .../roles/logger-service/handlers/main.yml | 4 ++ ansible/roles/logger-service/tasks/main.yml | 48 ++++++------------- .../logger-service/templates/logback.xml | 4 +- 3 files changed, 22 insertions(+), 34 deletions(-) create mode 100644 ansible/roles/logger-service/handlers/main.yml diff --git a/ansible/roles/logger-service/handlers/main.yml b/ansible/roles/logger-service/handlers/main.yml new file mode 100644 index 000000000..0c402b651 --- /dev/null +++ b/ansible/roles/logger-service/handlers/main.yml @@ -0,0 +1,4 @@ +- name: restart logger + service: name=logger state=restarted enabled=yes + when: + - skip_handlers | default("false") | bool == false diff --git a/ansible/roles/logger-service/tasks/main.yml b/ansible/roles/logger-service/tasks/main.yml index 5f9b7c123..00051e570 100644 --- a/ansible/roles/logger-service/tasks/main.yml +++ b/ansible/roles/logger-service/tasks/main.yml @@ -48,13 +48,13 @@ - name: ensure target directories exist [data subdirectories etc.] file: path={{item}} state=directory owner={{tomcat_user}} group={{tomcat_user}} with_items: - - "{{data_dir}}/{{config_directory | default('logger')}}/config" + - "{{data_dir}}/logger/config" tags: - logger-service - properties - name: copy all config.properties - template: src=logger-config.properties dest={{data_dir}}/{{config_directory | default('logger')}}/config/logger-config.properties output_encoding=iso-8859-1 + template: src=logger-config.properties dest={{data_dir}}/logger/config/logger-config.properties output_encoding=iso-8859-1 tags: - logger-service - properties @@ -63,13 +63,13 @@ - name: copy logback config template: src: logback.xml - dest: "{{data_dir}}/{{config_directory | default('logger')}}/config/logback.xml" + dest: "{{data_dir}}/logger/config/logback.xml" tags: - properties - logger-service - name: set data ownership - file: path={{data_dir}}/{{config_directory | default('logger')}} owner={{tomcat_user}} group={{tomcat_user}} recurse=true + file: path={{data_dir}}/logger owner={{tomcat_user}} group={{tomcat_user}} recurse=true notify: - restart tomcat tags: @@ -87,7 +87,7 @@ when: not webserver_nginx - name: copy all SQL auth ip scripts - template: src={{ item }} dest={{data_dir}}/{{config_directory | default('logger')}}/setup/ + template: src={{ item }} dest={{data_dir}}/logger/setup/ with_items: - "sql/auth-ip.sql" when: logger_authorize_ip_list is defined @@ -182,7 +182,7 @@ include_role: name: exec-jar vars: - service_name: 'logger-service' + service_name: 'logger' jar_url: '{{ logger_artifact_url }}' log_config_filename: "logback.xml" java_headless: True @@ -195,46 +195,28 @@ - name: ensure target directories exist [data subdirectories etc.] file: path={{item}} state=directory owner={{tomcat_user}} group={{tomcat_user}} with_items: - - "{{data_dir}}/logger-service/config" - - "/var/log/atlas/logger-service" + - "{{data_dir}}/logger/config" + - "/var/log/atlas/logger" notify: - - restart logger-service + - restart logger tags: - logger-service - properties when: exec_jar -- name: set data ownership for /opt/atlas/logger-service - file: path=/opt/atlas/logger-service owner={{tomcat_user}} group={{tomcat_user}} recurse=true +- name: set data ownership for /opt/atlas/logger + file: path=/opt/atlas/logger owner=logger group=logger recurse=true notify: - - restart logger-service + - restart logger tags: - logger-service - properties when: exec_jar -- name: set data ownership for /var/log/atlas/logger-service - file: path=/var/log/atlas/logger-service owner={{tomcat_user}} group={{tomcat_user}} recurse=true +- name: set data ownership for /var/log/atlas/logger + file: path=/var/log/atlas/logger owner={{tomcat_user}} group={{tomcat_user}} recurse=true notify: - - restart logger-service - tags: - - logger-service - - properties - when: exec_jar - -- name: set data ownership for /var/log/{{tomcat}} - file: path=/var/log/{{tomcat}} owner={{tomcat_user}} group={{tomcat_user}} recurse=true - notify: - - restart logger-service - tags: - - logger-service - - properties - when: exec_jar - -- name: set data ownership for /var/lib/{{tomcat}}/logs - file: path=/var/ib/{{tomcat}}/logs owner={{tomcat_user}} group={{tomcat_user}} recurse=true - notify: - - restart logger-service + - restart logger tags: - logger-service - properties diff --git a/ansible/roles/logger-service/templates/logback.xml b/ansible/roles/logger-service/templates/logback.xml index efc1e5f00..517e7d9ae 100644 --- a/ansible/roles/logger-service/templates/logback.xml +++ b/ansible/roles/logger-service/templates/logback.xml @@ -6,7 +6,9 @@ - + + TODO: support both paths for war and jar set up + ${LOG_DIR}/${appName}.log From 57651fde5900c67ec208b15007c8b5375ba48091 Mon Sep 17 00:00:00 2001 From: yasima-csiro Date: Wed, 19 Mar 2025 12:53:42 +1100 Subject: [PATCH 4/6] Update logger set up --- ansible/logger-standalone.yml | 2 +- ansible/roles/logger-service/tasks/main.yml | 4 ++-- ansible/roles/logger-service/templates/logback.xml | 4 +--- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/ansible/logger-standalone.yml b/ansible/logger-standalone.yml index 497cb75dd..998909b89 100644 --- a/ansible/logger-standalone.yml +++ b/ansible/logger-standalone.yml @@ -2,7 +2,7 @@ roles: - common - java - - tomcat + - {role: tomcat, when: not exec_jar} - webserver - mysql - logger-service diff --git a/ansible/roles/logger-service/tasks/main.yml b/ansible/roles/logger-service/tasks/main.yml index 00051e570..b40c356ed 100644 --- a/ansible/roles/logger-service/tasks/main.yml +++ b/ansible/roles/logger-service/tasks/main.yml @@ -193,7 +193,7 @@ when: exec_jar - name: ensure target directories exist [data subdirectories etc.] - file: path={{item}} state=directory owner={{tomcat_user}} group={{tomcat_user}} + file: path={{item}} state=directory owner=logger group=logger with_items: - "{{data_dir}}/logger/config" - "/var/log/atlas/logger" @@ -214,7 +214,7 @@ when: exec_jar - name: set data ownership for /var/log/atlas/logger - file: path=/var/log/atlas/logger owner={{tomcat_user}} group={{tomcat_user}} recurse=true + file: path=/var/log/atlas/logger owner=logger group=logger recurse=true notify: - restart logger tags: diff --git a/ansible/roles/logger-service/templates/logback.xml b/ansible/roles/logger-service/templates/logback.xml index 517e7d9ae..a2613cafd 100644 --- a/ansible/roles/logger-service/templates/logback.xml +++ b/ansible/roles/logger-service/templates/logback.xml @@ -6,9 +6,7 @@ - - TODO: support both paths for war and jar set up - + ${LOG_DIR}/${appName}.log From abd1db654375e7a493ec880cbfe23c055d901e73 Mon Sep 17 00:00:00 2001 From: yasima-csiro Date: Thu, 20 Mar 2025 09:36:47 +1100 Subject: [PATCH 5/6] Address review comments --- ansible/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/README.md b/ansible/README.md index f24b46ecf..e36f194d2 100644 --- a/ansible/README.md +++ b/ansible/README.md @@ -15,6 +15,7 @@ # Tomcat and Apache configuration If your application requires a WAR file deployment then you use the common ```tomcat_deploy``` and ```apache_vhost``` roles. This will ensure a consistent approach to Tomcat and Apache configuration. +If your application requires a JAR deployment then use the ```exec_jar``` role. ## How to use them From 7d4eac43ad680495cf508e6aed35c70e199696ba Mon Sep 17 00:00:00 2001 From: yasima-csiro Date: Mon, 24 Mar 2025 09:34:26 +1100 Subject: [PATCH 6/6] Address review comments --- ansible/roles/logger-service/templates/logback.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/logger-service/templates/logback.xml b/ansible/roles/logger-service/templates/logback.xml index a2613cafd..76779f892 100644 --- a/ansible/roles/logger-service/templates/logback.xml +++ b/ansible/roles/logger-service/templates/logback.xml @@ -6,7 +6,7 @@ - + ${LOG_DIR}/${appName}.log