blob: 3d10c2b23dcd8b2be7b1a9e6d0847f23fa8324e9 [file] [log] [blame]
---
- name: Update the ansible cache
hosts: planet
tags: ['cache']
gather_facts: no
vars_files:
- ~/.apigee/credentials.yml
roles:
- apigee-opdk-setup-default-settings
- name: All components should be running
gather_facts: no
hosts: planet
tags: ['start']
serial: 1
tasks:
- name: All components should be running
shell: "{{ apigee_all }} start"
- name: Update the installer for planet
include: components/opdk-update-installer.yml
vars:
hosts: planet
upgrade_edge: true
tags:
- installer
- name: Upgrade Cassandra
include: components/opdk-upgrade-component.yml
vars:
upgrade_edge: true
hosts: ds
upgrade_component: cs,zk
tags:
- cs-zk
- name: Restore qpid component that is mysteriously uninstalled
include: components/opdk-install-component.yml
vars:
hosts: 'dc-1-qpid'
component_profile: 'qs'
tags:
- qpid_reinstall
- name: Upgrade qpid
include: components/opdk-upgrade-component.yml
vars:
upgrade_edge: true
hosts: qpid
server_type_names:
- qs
upgrade_component: qpid
block_port: '{{ qpid_messaging_port }}'
tags:
- qpid_only
- name: Upgrade ldap
include: components/opdk-upgrade-component.yml
vars:
upgrade_edge: true
hosts: ldap
upgrade_component: ldap
tags:
- ldap
- name: Upgrade qpid
include: components/opdk-upgrade-component.yml
vars:
upgrade_edge: true
hosts: qpid
upgrade_component: edge
block_port: '{{ qpid_messaging_port }}'
tags:
- qpid_edge
- name: Upgrade ms
include: components/opdk-upgrade-component.yml
vars:
upgrade_edge: true
hosts: ms
upgrade_component: edge
tags:
- ms_edge
- name: Upgrade rmp
include: components/opdk-upgrade-component.yml
vars:
server_type_names:
- router
- mp
upgrade_edge: true
hosts: rmp
upgrade_component: edge
tags:
- rmp_edge
- name: Upgrade ui
include: components/opdk-upgrade-component.yml
vars:
upgrade_edge: true
hosts: ui
upgrade_component: ui
tags:
- ui
- name: Stop Postgres components
hosts: pg
gather_facts: no
tags: ['pg', 'pgstop']
roles:
- { role: apigee-opdk-stop-components, component_name: 'edge-postgres-server' }
- { role: apigee-opdk-stop-components, component_name: 'apigee-postgresql' }
- name: Stop Qpid components
tags: ['pg', 'pgstop']
gather_facts: no
hosts: qpid
roles:
- { role: apigee-opdk-stop-components, component_name: 'edge-qpid-server' }
- name: Upgrade PS component
include: components/opdk-upgrade-component.yml
vars:
upgrade_edge: true
hosts: pgmaster
server_type_names: ['ps']
upgrade_component: ps
tags:
- pgmaster
- pg
- name: Upgrade PS edge component
include: components/opdk-upgrade-component.yml
vars:
upgrade_edge: true
hosts: pgmaster
server_type_names: ['ps']
upgrade_component: edge
tags:
- pgmaster_edge
- pg
- name: Restore broken pg_control file on pgmaster
hosts: pgmaster
serial: 1
gather_facts: no
become: yes
tags: ['pg_control']
vars:
pg_control_old: "{{ apigee_installation_home }}/data/apigee-postgresql/pgdata-9.3.old/global/pg_control.old"
pg_control: "{{ apigee_installation_home }}/data/apigee-postgresql/pgdata-9.3.old/global/pg_control"
tasks:
- name: Determine if old pg_control is incorrectly managed
stat:
path: "{{ pg_control_old }}"
register: pg_control
- block:
- block:
- name: Restore pg_control file
copy:
src: "{{ apigee_installation_home }}/data/apigee-postgresql/pgdata-9.3.old/global/pg_control.old"
dest: "{{ apigee_installation_home }}/data/apigee-postgresql/pgdata-9.3.old/global/pg_control"
rescue:
- name: Restore pg_control file failed, trying again
shell: "sudo cp {{ apigee_installation_home }}/data/apigee-postgresql/pgdata-9.3.old/global/pg_control.old {{ apigee_installation_home }}/data/apigee-postgresql/pgdata-9.3.old/global/pg_control"
- name: Set pg_control file ownership
file:
path: "{{ apigee_installation_home }}/data/apigee-postgresql/pgdata-9.3.old/global/pg_control"
owner: "{{ opdk_user_name }}"
group: "{{ opdk_group_name }}"
when: pg_control.stat.exists
- name: Upgrade Postgres master
hosts: pgmaster
tags: ['pgmaster_db_upgrade','pg']
gather_facts: no
serial: 1
tasks:
- name: PGMaster DB upgrade
shell: '{{ apigee_service }} apigee-postgresql db_upgrade'
- name: Upgrade Postgres standby
include: components/opdk-upgrade-component.yml
vars:
upgrade_edge: true
hosts: pgstandby
server_type_names: ['ps']
upgrade_component: ps
tags:
- pgstandby
- pg
- name: Start Postgres components
hosts: ps
serial: 1
gather_facts: no
tags: ['pg', 'pgstart']
roles:
- { role: apigee-opdk-start-components, component_name: 'edge-postgres-server', component_start_delay: 1 }
- { role: apigee-opdk-start-components, component_name: 'apigee-postgresql', component_start_delay: 1 }
- name: Start Qpid components
hosts: qpid
tags: ['pg', 'pgstart']
roles:
- { role: apigee-opdk-start-components, component_name: 'edge-qpid-server', component_start_delay: 1 }
- name: Validate that PG Master is master
hosts: pgmaster
tags: ['pg', 'pgmaster_validate']
serial: 1
gather_facts: no
tasks:
- name: Validate this is postgresql master
shell: "{{ apigee_service }} apigee-postgresql postgres-check-master"
- name: Setup and Validate that PG Standby is standby
hosts: pgstandby
tags: ['pg', 'pgstandby']
gather_facts: no
serial: 1
tasks:
- name: Remove pgdata folder
file:
path: "{{ apigee_installation_home}}/data/apigee-postgresql/pgdata"
state: absent
- name: Restore empty pgdata folder
file:
path: "{{ apigee_installation_home}}/data/apigee-postgresql/pgdata"
state: directory
owner: "{{ opdk_user_name }}"
group: "{{ opdk_group_name }}"
mode: "0700"
- name: Setup replication standby
shell: "{{ apigee_service }} apigee-postgresql setup-replication-on-standby -f {{ opdk_installation_config_file }}"
- name: Setup replication on standby completing work
pause:
seconds: 10
- name: Start all components
shell: "{{ apigee_all }} start"
- name: Component start is completing
pause:
seconds: 10
- name: Validate this is postgresql standby
shell: "{{ apigee_service }} apigee-postgresql postgres-check-standby"
tags:
- pgstandby_validate
- name: Upgrade PG with edge for remaining components
include: components/opdk-upgrade-component.yml
vars:
upgrade_edge: true
hosts: pg
upgrade_component: edge
tags:
- pg
- pg_edge
- include: validations/opdk-setup-log-files.yml
vars:
hosts: dc-1-ds
tags:
- logs
- dc-1
- include: validations/opdk-setup-log-files.yml
vars:
hosts: dc-2-ds
tags:
- logs
- dc-2
- include: validations/opdk-setup-log-files.yml
vars:
hosts: dc-1-ms
tags:
- logs
- dc-1
- include: validations/opdk-setup-log-files.yml
vars:
hosts: dc-2-ms
tags:
- logs
- dc-2
- include: validations/opdk-setup-log-files.yml
vars:
hosts: dc-1-rmp
tags:
- logs
- dc-1
- include: validations/opdk-setup-log-files.yml
vars:
hosts: dc-2-rmp
tags:
- logs
- dc-2
- include: validations/opdk-setup-log-files.yml
vars:
hosts: dc-1-qpid
tags:
- logs
- dc-1
- include: validations/opdk-setup-log-files.yml
vars:
hosts: dc-2-qpid
tags:
- logs
- dc-2
- include: validations/opdk-setup-log-files.yml
vars:
hosts: dc-1-pgmaster
tags:
- logs
- dc-1
- include: validations/opdk-setup-log-files.yml
vars:
hosts: dc-2-pgmaster
tags:
- logs
- dc-2
- include: validations/opdk-setup-log-files.yml
vars:
hosts: dc-1-pgstandby
tags:
- logs
- dc-1
- include: validations/opdk-setup-log-files.yml
vars:
hosts: dc-2-pgstandby
tags:
- logs
- dc-2