mirror of
https://bitbucket.org/atlassian/dc-deployments-automation.git
synced 2025-12-16 09:53:06 -06:00
Implement playbook to do ZDU
This commit is contained in:
21
aws_jira_cluster_zdu.yml
Normal file
21
aws_jira_cluster_zdu.yml
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
---
|
||||||
|
|
||||||
|
- hosts: localhost
|
||||||
|
connection: local
|
||||||
|
roles:
|
||||||
|
- role: jira_zdu_init
|
||||||
|
|
||||||
|
- hosts: all
|
||||||
|
serial: 1
|
||||||
|
any_errors_fatal: true
|
||||||
|
roles:
|
||||||
|
- role: aws_common
|
||||||
|
- role: product_common
|
||||||
|
- role: product_install
|
||||||
|
- role: jira_config
|
||||||
|
- role: product_startup
|
||||||
|
|
||||||
|
- hosts: localhost
|
||||||
|
connection: local
|
||||||
|
roles:
|
||||||
|
- role: jira_zdu_finish
|
||||||
2
roles/jira_zdu_finish/defaults/main.yml
Normal file
2
roles/jira_zdu_finish/defaults/main.yml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
atl_jira_baseurl: "{{ atl_tomcat_scheme }}://{{ atl_proxy_name }}{{ atl_tomcat_contextpath }}"
|
||||||
|
atl_jira_zdu_rest_endpoint: "api/2/cluster/zdu"
|
||||||
35
roles/jira_zdu_finish/tasks/main.yml
Normal file
35
roles/jira_zdu_finish/tasks/main.yml
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
---
|
||||||
|
|
||||||
|
- name: Assert cluster is ready to finalise upgrade
|
||||||
|
uri:
|
||||||
|
url: "{{ atl_jira_baseurl }}/{{ atl_jira_zdu_rest_endpoint }}/state"
|
||||||
|
force_basic_auth: yes
|
||||||
|
user: "{{ jira_admin_username }}"
|
||||||
|
password: "{{ jira_admin_password }}"
|
||||||
|
method: GET
|
||||||
|
status_code: 200
|
||||||
|
register: upgrade_cluster_state
|
||||||
|
failed_when: upgrade_cluster_state.json is not defined or upgrade_cluster_state.json.state != 'READY_TO_RUN_UPGRADE_TASKS'
|
||||||
|
|
||||||
|
- name: Approve cluster upgrade
|
||||||
|
uri:
|
||||||
|
url: "{{ atl_jira_baseurl }}/{{ atl_jira_zdu_rest_endpoint }}/approve"
|
||||||
|
force_basic_auth: yes
|
||||||
|
user: "{{ jira_admin_username }}"
|
||||||
|
password: "{{ jira_admin_password }}"
|
||||||
|
method: POST
|
||||||
|
status_code: 200
|
||||||
|
|
||||||
|
- name: Wait for cluster to finish running upgrade tasks
|
||||||
|
uri:
|
||||||
|
url: "{{ atl_jira_baseurl }}/{{ atl_jira_zdu_rest_endpoint }}/state"
|
||||||
|
force_basic_auth: yes
|
||||||
|
user: "{{ jira_admin_username }}"
|
||||||
|
password: "{{ jira_admin_password }}"
|
||||||
|
method: GET
|
||||||
|
status_code: 200
|
||||||
|
register: post_upgrade_cluster_state
|
||||||
|
failed_when: post_upgrade_cluster_state.json is not defined or post_upgrade_cluster_state.json.state == 'READY_TO_UPGRADE' or post_upgrade_cluster_state.json.state == 'READY_TO_RUN_UPGRADE_TASKS' or post_upgrade_cluster_state.json.state == 'MIXED'
|
||||||
|
until: post_upgrade_cluster_state.json is defined and post_upgrade_cluster_state.json.state == 'STABLE'
|
||||||
|
retries: 120
|
||||||
|
delay: 5
|
||||||
2
roles/jira_zdu_init/defaults/main.yml
Normal file
2
roles/jira_zdu_init/defaults/main.yml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
atl_jira_baseurl: "{{ atl_tomcat_scheme }}://{{ atl_proxy_name }}{{ atl_tomcat_contextpath }}"
|
||||||
|
atl_jira_zdu_rest_endpoint: "api/2/cluster/zdu"
|
||||||
32
roles/jira_zdu_init/tasks/main.yml
Normal file
32
roles/jira_zdu_init/tasks/main.yml
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
---
|
||||||
|
|
||||||
|
- name: Assert cluster is ready for upgrade
|
||||||
|
uri:
|
||||||
|
url: "{{ atl_jira_baseurl }}/{{ atl_jira_zdu_rest_endpoint }}/state"
|
||||||
|
force_basic_auth: yes
|
||||||
|
user: "{{ jira_admin_username }}"
|
||||||
|
password: "{{ jira_admin_password }}"
|
||||||
|
method: GET
|
||||||
|
status_code: 200
|
||||||
|
register: pre_upgrade_cluster_state
|
||||||
|
|
||||||
|
- name: Begin cluster upgrade
|
||||||
|
uri:
|
||||||
|
url: "{{ atl_jira_baseurl }}/{{ atl_jira_zdu_rest_endpoint }}/start"
|
||||||
|
force_basic_auth: yes
|
||||||
|
user: "{{ jira_admin_username }}"
|
||||||
|
password: "{{ jira_admin_password }}"
|
||||||
|
method: POST
|
||||||
|
status_code: 200
|
||||||
|
when: pre_upgrade_cluster_state.json is defined and pre_upgrade_cluster_state.json.state == 'STABLE'
|
||||||
|
|
||||||
|
- name: Verify cluster ready to upgrade
|
||||||
|
uri:
|
||||||
|
url: "{{ atl_jira_baseurl }}/{{ atl_jira_zdu_rest_endpoint }}/state"
|
||||||
|
force_basic_auth: yes
|
||||||
|
user: "{{ jira_admin_username }}"
|
||||||
|
password: "{{ jira_admin_password }}"
|
||||||
|
method: GET
|
||||||
|
status_code: 200
|
||||||
|
register: upgrade_cluster_state
|
||||||
|
failed_when: upgrade_cluster_state.json is not defined or upgrade_cluster_state.json.state != 'READY_TO_UPGRADE'
|
||||||
Reference in New Issue
Block a user