Skip to content
Open
2 changes: 2 additions & 0 deletions .config/cspell-words.txt
Original file line number Diff line number Diff line change
Expand Up @@ -27,10 +27,12 @@ Hana
srmode
opmode
sapenv
sapstart
hdbnsutil
SFAIL
SAPSYSTEMNAME
SAPSYSTEM
INSTANCENAME
appserver
ABAP
saphostcontrol
Expand Down
11 changes: 11 additions & 0 deletions ansible_collections/sap/cluster_qa/playbooks/test09.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
- name: Running TEST09 test role on the S4/HANA Cluster
hosts: all
gather_facts: false
become: true
become_user: root
any_errors_fatal: false
tasks:
- name: Running TEST09 test role on the S4/HANA Cluster
ansible.builtin.include_role:
name: sap.cluster_qa.test09
12 changes: 11 additions & 1 deletion ansible_collections/sap/cluster_qa/roles/pcs_find_ascs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,17 @@ No other resource managed by ocf:heartbeat:SAPInstance should have the same keyw
Role Variables
--------------

None
This role sets the following facts:

- `sap_ascs_resource_name` - The name of the ASCS resource in the cluster
- `sap_ascs_node_name` - The node where ASCS is currently running
- `sap_ascs_sid` - The SAP system ID (SID) of the ASCS instance
- `sap_ascs_instance_name` - The instance name of the ASCS
- `sap_ascs_instance_number` - The instance number of the ASCS
- `sap_ascs_start_profile` - The path to the ASCS start profile file
- `sap_sid` - General SAP system ID (same as sap_ascs_sid)
- `sap_instance_name` - General instance name (same as sap_ascs_instance_name)
- `sap_instance_number` - General instance number (same as sap_ascs_instance_number)

Dependencies
------------
Expand Down
Original file line number Diff line number Diff line change
@@ -1,33 +1,38 @@
---
- name: Acquiring ASCS resource name
ansible.builtin.shell: |-
set -o pipefail |
pcs resource config |
grep SAPInstance |
grep -i ascs |
awk '{print $2}' |
xargs
register: __pcs_find_ascs_sap_ascs_resource_name
changed_when: false
failed_when: __pcs_find_ascs_sap_ascs_resource_name.rc != 0
- name: Acquiring ASCS resource name and setting as fact
block:
- name: Get ASCS resource name
ansible.builtin.shell: |-
set -o pipefail |
pcs resource config |
grep SAPInstance |
grep -i ascs |
awk '{print $2}' |
xargs
register: __pcs_find_ascs_sap_ascs_resource_name
changed_when: false
failed_when: __pcs_find_ascs_sap_ascs_resource_name.rc != 0

- name: Setting ASCS resource name as fact
ansible.builtin.set_fact:
sap_ascs_resource_name: "{{ __pcs_find_ascs_sap_ascs_resource_name.stdout }}"
- name: Set ASCS resource name as fact
ansible.builtin.set_fact:
sap_ascs_resource_name: "{{ __pcs_find_ascs_sap_ascs_resource_name.stdout }}"

- name: Acquiring ASCS node name
ansible.builtin.shell: |-
set -o pipefail |
pcs resource status {{ sap_ascs_resource_name }} |
grep SAPInstance |
awk '{print $5}'
register: __pcs_find_ascs_sap_ascs_node_name
changed_when: false
failed_when: __pcs_find_ascs_sap_ascs_node_name.rc != 0

- name: Setting ASCS Node name as fact
ansible.builtin.set_fact:
sap_ascs_node_name: "{{ __pcs_find_ascs_sap_ascs_node_name.stdout }}"
- name: Acquiring ASCS node name and setting as fact
block:
- name: Get ASCS node name
ansible.builtin.shell: |-
set -o pipefail |
pcs resource status {{ sap_ascs_resource_name }} |
grep SAPInstance |
awk '{print $5}'
register: __pcs_find_ascs_sap_ascs_node_name
changed_when: false
failed_when: __pcs_find_ascs_sap_ascs_node_name.rc != 0

- name: Set ASCS node name as fact
ansible.builtin.set_fact:
sap_ascs_node_name: "{{ __pcs_find_ascs_sap_ascs_node_name.stdout }}"

- name: Acquiring ASCS start profile
ansible.builtin.shell: |-
Expand All @@ -51,12 +56,9 @@
changed_when: false
failed_when: __pcs_find_ascs_sap_ascs_sid.rc != 0

- name: Setting ASCS SID as a separate fact
- name: Setting ASCS SID as facts
ansible.builtin.set_fact:
sap_ascs_sid: "{{ __pcs_find_ascs_sap_ascs_sid.stdout }}"

- name: Setting ASCS SID as a general fact
ansible.builtin.set_fact:
sap_sid: "{{ __pcs_find_ascs_sap_ascs_sid.stdout }}"

- name: Acquiring ASCS Instance Name
Expand All @@ -70,12 +72,9 @@
changed_when: false
failed_when: __pcs_find_ascs_sap_instance_name.rc != 0

- name: Setting ASCS Instance Name as a separate fact
- name: Setting ASCS Instance Name as facts
ansible.builtin.set_fact:
sap_ascs_instance_name: "{{ __pcs_find_ascs_sap_instance_name.stdout }}"

- name: Setting ASCS Instance Name as a general fact
ansible.builtin.set_fact:
sap_instance_name: "{{ __pcs_find_ascs_sap_instance_name.stdout }}"

- name: Acquiring ASCS Instance number
Expand All @@ -89,10 +88,11 @@
changed_when: false
failed_when: __pcs_find_ascs_sap_instance_number.rc != 0

- name: Setting ASCS Instance number as fact
- name: Setting ASCS Instance number as facts
ansible.builtin.set_fact:
sap_ascs_instance_number: "{{ __pcs_find_ascs_sap_instance_number.stdout }}"
sap_instance_number: "{{ __pcs_find_ascs_sap_instance_number.stdout }}"

- name: Setting ASCS Instance number as fact
- name: Setting ASCS start profile path as fact
ansible.builtin.set_fact:
sap_instance_number: "{{ __pcs_find_ascs_sap_instance_number.stdout }}"
sap_ascs_start_profile: "{{ __pcs_find_ascs_sap_ascs_start_profile.stdout }}"
12 changes: 11 additions & 1 deletion ansible_collections/sap/cluster_qa/roles/pcs_find_ers/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,17 @@ No other resource managed by ocf:heartbeat:SAPInstance should have the same keyw
Role Variables
--------------

None
This role sets the following facts:

- `sap_ers_resource_name` - The name of the ERS resource in the cluster
- `sap_ers_node_name` - The node where ERS is currently running
- `sap_ers_sid` - The SAP system ID (SID) of the ERS instance
- `sap_ers_instance_name` - The instance name of the ERS
- `sap_ers_instance_number` - The instance number of the ERS
- `sap_ers_start_profile` - The path to the ERS start profile file
- `sap_sid` - General SAP system ID (same as sap_ers_sid)
- `sap_instance_name` - General instance name (same as sap_ers_instance_name)
- `sap_instance_number` - General instance number (same as sap_ers_instance_number)

Dependencies
------------
Expand Down
Original file line number Diff line number Diff line change
@@ -1,36 +1,40 @@
---
- name: Acquiring ERS resource name
ansible.builtin.shell: |
set -o pipefail |
pcs resource config |
grep SAPInstance |
grep -i ers |
awk '{print $2}' |
xargs
register: __pcs_find_ers_sap_ers_resource_name
changed_when: false
failed_when: __pcs_find_ers_sap_ers_resource_name.rc != 0
- name: Acquiring ERS resource name and setting as fact
block:
- name: Get ERS resource name
ansible.builtin.shell: |-
set -o pipefail |
pcs resource config |
grep SAPInstance |
grep -i ers |
awk '{print $2}' |
xargs
register: __pcs_find_ers_sap_ers_resource_name
changed_when: false
failed_when: __pcs_find_ers_sap_ers_resource_name.rc != 0

- name: Setting ERS resource name as fact
ansible.builtin.set_fact:
sap_ers_resource_name: "{{ __pcs_find_ers_sap_ers_resource_name.stdout }}"
- name: Set ERS resource name as fact
ansible.builtin.set_fact:
sap_ers_resource_name: "{{ __pcs_find_ers_sap_ers_resource_name.stdout }}"

- name: Acquiring ERS node name
ansible.builtin.shell: |
set -o pipefail |
pcs resource status "{{ sap_ers_resource_name }}" |
grep SAPInstance |
awk '{print $5}'
register: __pcs_find_ers_sap_ers_node_name
changed_when: false
failed_when: __pcs_find_ers_sap_ers_node_name.rc != 0
- name: Acquiring ERS node name and setting as fact
block:
- name: Get ERS node name
ansible.builtin.shell: |-
set -o pipefail |
pcs resource status "{{ sap_ers_resource_name }}" |
grep SAPInstance |
awk '{print $5}'
register: __pcs_find_ers_sap_ers_node_name
changed_when: false
failed_when: __pcs_find_ers_sap_ers_node_name.rc != 0

- name: Setting ERS Node name as fact
ansible.builtin.set_fact:
sap_ers_node_name: "{{ __pcs_find_ers_sap_ers_node_name.stdout }}"
- name: Set ERS node name as fact
ansible.builtin.set_fact:
sap_ers_node_name: "{{ __pcs_find_ers_sap_ers_node_name.stdout }}"

- name: Acquiring ERS start profile
ansible.builtin.shell: |
ansible.builtin.shell: |-
set -o pipefail |
pcs resource config "{{ sap_ers_resource_name }}" |
grep START_PROFILE |
Expand All @@ -41,7 +45,7 @@
failed_when: __pcs_find_ers_sap_ers_start_profile.rc != 0

- name: Acquiring ERS SID
ansible.builtin.shell: |
ansible.builtin.shell: |-
set -o pipefail |
cat "{{ __pcs_find_ers_sap_ers_start_profile.stdout }}" |
grep -w 'SAPSYSTEMNAME ' |
Expand All @@ -51,16 +55,13 @@
changed_when: false
failed_when: __pcs_find_ers_sap_ers_sid.rc != 0

- name: Setting ERS SID as a separate fact
ansible.builtin.set_fact:
sap_ers_sid: "{{ __pcs_find_ers_sap_ers_sid.stdout }}"

- name: Setting ERS SID as a general fact
- name: Setting ERS SID as facts
ansible.builtin.set_fact:
sap_sid: "{{ __pcs_find_ers_sap_ers_sid.stdout }}"
sap_ers_sid: "{{ __pcs_find_ers_sap_ers_sid.stdout }}"
sap_sid: "{{ __pcs_find_ers_sap_ers_sid.stdout }}"

- name: Acquiring ERS Instance Name
ansible.builtin.shell: |
ansible.builtin.shell: |-
set -o pipefail |
cat "{{ __pcs_find_ers_sap_ers_start_profile.stdout }}" |
grep -w 'INSTANCE_NAME =' |
Expand All @@ -70,16 +71,13 @@
changed_when: false
failed_when: __pcs_find_ers_sap_instance_name.rc != 0

- name: Setting ERS Instance Name as a separate fact
ansible.builtin.set_fact:
sap_ers_instance_name: "{{ __pcs_find_ers_sap_instance_name.stdout }}"

- name: Setting ERS Instance Name as a general fact
- name: Setting ERS Instance Name as facts
ansible.builtin.set_fact:
sap_instance_name: "{{ __pcs_find_ers_sap_instance_name.stdout }}"
sap_ers_instance_name: "{{ __pcs_find_ers_sap_instance_name.stdout }}"
sap_instance_name: "{{ __pcs_find_ers_sap_instance_name.stdout }}"

- name: Acquiring ERS Instance number
ansible.builtin.shell: |
ansible.builtin.shell: |-
set -o pipefail |
cat "{{ __pcs_find_ers_sap_ers_start_profile.stdout }}" |
grep -w SAPSYSTEM |
Expand All @@ -89,10 +87,11 @@
changed_when: false
failed_when: __pcs_find_ers_sap_instance_number.rc != 0

- name: Setting ERS Instance number as fact separately
- name: Setting ERS Instance number as facts
ansible.builtin.set_fact:
sap_ers_instance_number: "{{ __pcs_find_ers_sap_instance_number.stdout }}"
sap_ers_instance_number: "{{ __pcs_find_ers_sap_instance_number.stdout }}"
sap_instance_number: "{{ __pcs_find_ers_sap_instance_number.stdout }}"

- name: Setting ERS Instance number as fact without appserver name
- name: Setting ERS start profile path as fact
ansible.builtin.set_fact:
sap_instance_number: "{{ __pcs_find_ers_sap_instance_number.stdout }}"
sap_ers_start_profile: "{{ __pcs_find_ers_sap_ers_start_profile.stdout }}"
16 changes: 8 additions & 8 deletions ansible_collections/sap/cluster_qa/roles/test04/tasks/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

- name: Acquiring latest enq_admin information on ASCS before move
sap.sap_operations.enq_admin_info:
profile_filepath: "{{ __pcs_find_ascs_sap_ascs_start_profile.stdout }}"
profile_filepath: "{{ sap_ascs_start_profile }}"
become: true
become_user: "{{ sap_ascs_sid | lower }}adm"
become_flags: -i
Expand All @@ -19,7 +19,7 @@
- name: Removing 10 new locks via command line before move
ansible.builtin.shell: |
set -o pipefail |
enq_admin --release_locks=10:X:DIAG::TAB:%u pf={{ __pcs_find_ascs_sap_ascs_start_profile.stdout }}
enq_admin --release_locks=10:X:DIAG::TAB:%u pf={{ sap_ascs_start_profile }}
become: true
become_user: "{{ sap_ascs_sid | lower }}adm"
become_flags: -i
Expand All @@ -28,15 +28,15 @@
- name: Creating 10 new locks via command line before move
ansible.builtin.shell: |
set -o pipefail |
enq_admin --set_locks=10:X:DIAG::TAB:%u pf={{ __pcs_find_ascs_sap_ascs_start_profile.stdout }}
enq_admin --set_locks=10:X:DIAG::TAB:%u pf={{ sap_ascs_start_profile }}
become: true
become_user: "{{ sap_ascs_sid | lower }}adm"
become_flags: -i
when: ansible_hostname == sap_ascs_node_name

- name: Setting 10 additional new locks using enq_admin_lock before move
sap.sap_operations.enq_admin_lock:
profile_filepath: "{{ __pcs_find_ascs_sap_ascs_start_profile.stdout }}"
profile_filepath: "{{ sap_ascs_start_profile }}"
lock_type: X
state: absent
owner1: DIAG
Expand All @@ -50,7 +50,7 @@

- name: Acquiring latest enq_admin lock information on ASCS before move
sap.sap_operations.enq_admin_locks_info:
profile_filepath: "{{ __pcs_find_ascs_sap_ascs_start_profile.stdout }}"
profile_filepath: "{{ sap_ascs_start_profile }}"
become: true
become_user: "{{ sap_ascs_sid | lower }}adm"
become_flags: -i
Expand All @@ -68,7 +68,7 @@

- name: Acquiring latest enq_admin lock information on ERS before move
sap.sap_operations.enq_admin_locks_info:
profile_filepath: "{{ __pcs_find_ers_sap_ers_start_profile.stdout }}"
profile_filepath: "{{ sap_ers_start_profile }}"
become: true
become_user: "{{ sap_ers_sid | lower }}adm"
become_flags: -i
Expand Down Expand Up @@ -104,7 +104,7 @@

- name: Acquiring latest enq_admin lock information on the new ASCS node after move
sap.sap_operations.enq_admin_locks_info:
profile_filepath: "{{ __pcs_find_ascs_sap_ascs_start_profile.stdout }}"
profile_filepath: "{{ sap_ascs_start_profile }}"
become: true
become_user: "{{ sap_ascs_sid | lower }}adm"
become_flags: -i
Expand All @@ -128,7 +128,7 @@

- name: Acquiring latest enq_admin lock information on new ERS node after move
sap.sap_operations.enq_admin_locks_info:
profile_filepath: "{{ __pcs_find_ers_sap_ers_start_profile.stdout }}"
profile_filepath: "{{ sap_ers_start_profile }}"
become: true
become_user: "{{ sap_ers_sid | lower }}adm"
become_flags: -i
Expand Down
Loading