Skip to content

Commit a5be2ea

Browse files
committed
Basic BAS setup and link test
Integration test creates resource for a basic BAS configuration and tests the resource description is linked to the program
1 parent 80d3974 commit a5be2ea

File tree

2 files changed

+304
-1
lines changed

2 files changed

+304
-1
lines changed
Lines changed: 302 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,302 @@
1+
# Copyright (c) IBM Corporation 2020
2+
# Apache License, Version 2.0 (see https://opensource.org/licenses/Apache-2.0)
3+
---
4+
- name: CMCI Integration Test
5+
#Sets Up a Basic BAS Resource Description with one Resource Group containing one program definition and then cleans up
6+
7+
collections:
8+
- ibm.ibm_zos_cics
9+
hosts: 'localhost'
10+
gather_facts: 'false'
11+
vars:
12+
program: 'ANSIPROG'
13+
resource_description: 'ANSIBAS'
14+
resource_group: 'ANSIGRP'
15+
resource_scope: 'IYCWEMM1'
16+
def_ver: '1'
17+
18+
19+
module_defaults:
20+
ibm.ibm_zos_cics.cmci_get:
21+
cmci_host: '{{ cmci_host }}'
22+
cmci_port: '{{ cmci_port }}'
23+
cmci_user: '{{ cmci_user }}'
24+
cmci_password: '{{ cmci_password }}'
25+
context: '{{ context }}'
26+
scope: '{{ scope }}'
27+
insecure: true
28+
29+
ibm.ibm_zos_cics.cmci_update:
30+
cmci_host: '{{ cmci_host }}'
31+
cmci_port: '{{ cmci_port }}'
32+
cmci_user: '{{ cmci_user }}'
33+
cmci_password: '{{ cmci_password }}'
34+
context: '{{ context }}'
35+
scope: '{{ scope }}'
36+
insecure: true
37+
38+
39+
ibm.ibm_zos_cics.cmci_delete:
40+
cmci_host: '{{ cmci_host }}'
41+
cmci_port: '{{ cmci_port }}'
42+
cmci_user: '{{ cmci_user }}'
43+
cmci_password: '{{ cmci_password }}'
44+
context: '{{ context }}'
45+
scope: '{{ scope }}'
46+
insecure: true
47+
48+
49+
ibm.ibm_zos_cics.cmci_action:
50+
cmci_host: '{{ cmci_host }}'
51+
cmci_port: '{{ cmci_port }}'
52+
cmci_user: '{{ cmci_user }}'
53+
cmci_password: '{{ cmci_password }}'
54+
context: '{{ context }}'
55+
scope: '{{ scope }}'
56+
insecure: true
57+
58+
59+
ibm.ibm_zos_cics.cmci_create:
60+
cmci_host: '{{ cmci_host }}'
61+
cmci_port: '{{ cmci_port }}'
62+
cmci_user: '{{ cmci_user }}'
63+
cmci_password: '{{ cmci_password }}'
64+
context: '{{ context }}'
65+
scope: '{{ scope }}'
66+
insecure: true
67+
68+
69+
tasks:
70+
- name: 'Delete progdef'
71+
delegate_to: 'localhost'
72+
ibm.ibm_zos_cics.cmci_delete:
73+
type: 'CICSDefinitionProgram'
74+
resources:
75+
complex_filter:
76+
and:
77+
- attribute: NAME
78+
value: '{{ program }}'
79+
- attribute: DEFVER
80+
value: '{{ def_ver }}'
81+
register: result
82+
failed_when: >
83+
'cpsm_response' not in result or result.cpsm_response not in ['OK', 'NODATA']
84+
85+
86+
- name: 'Delete resource group'
87+
delegate_to: 'localhost'
88+
ibm.ibm_zos_cics.cmci_delete:
89+
type: 'CICSResourceGroup'
90+
resources:
91+
filter:
92+
resgroup: '{{ resource_group }}'
93+
register: result
94+
failed_when: >
95+
'cpsm_response' not in result or result.cpsm_response not in ['OK', 'NODATA']
96+
97+
98+
- name: 'Delete resource description'
99+
delegate_to: 'localhost'
100+
ibm.ibm_zos_cics.cmci_delete:
101+
type: 'CICSResourceDescription'
102+
resources:
103+
filter:
104+
resdesc: '{{ resource_description }}'
105+
register: result
106+
failed_when: >
107+
'cpsm_response' not in result or result.cpsm_response not in ['OK', 'NODATA']
108+
109+
110+
- name: 'Create progdef'
111+
delegate_to: 'localhost'
112+
ibm.ibm_zos_cics.cmci_create:
113+
type: 'CICSDefinitionProgram'
114+
attributes:
115+
name: '{{ program }}'
116+
defver: '{{ def_ver }}'
117+
register: result
118+
119+
- name: assert progdef created
120+
assert:
121+
that:
122+
- result is changed
123+
- result.cpsm_response == 'OK'
124+
- result.record_count == 1
125+
- result.records[0].name == program
126+
127+
128+
- name: 'Create Resource Group'
129+
delegate_to: 'localhost'
130+
ibm.ibm_zos_cics.cmci_create:
131+
type: 'CICSResourceGroup'
132+
attributes:
133+
resgroup: '{{ resource_group }}'
134+
register: result
135+
136+
- name: assert create resource group
137+
assert:
138+
that:
139+
- result is changed
140+
- result.cpsm_response == 'OK'
141+
- result.record_count == 1
142+
- result.records[0].resgroup == resource_group
143+
144+
145+
- name: 'Add progdef to resource group'
146+
delegate_to: 'localhost'
147+
ibm.ibm_zos_cics.cmci_action:
148+
type: 'CICSDefinitionProgram'
149+
action_name: 'ADDTOGRP'
150+
resources:
151+
filter:
152+
NAME: '{{ program }}'
153+
DEFVER: '{{ def_ver }}'
154+
action_parameters:
155+
- name: 'RESGROUP'
156+
value: '{{ resource_group }}'
157+
register: result
158+
159+
- name: assert progdef added to resource group
160+
assert:
161+
that:
162+
- result is changed
163+
- result.cpsm_response == 'OK'
164+
- result.record_count == 1
165+
- result.records[0].name == program
166+
167+
168+
- name: 'Create Resource Description'
169+
delegate_to: 'localhost'
170+
ibm.ibm_zos_cics.cmci_create:
171+
type: 'CICSResourceDescription'
172+
attributes:
173+
resdesc: '{{ resource_description }}'
174+
rgscope: '{{ resource_scope }}'
175+
register: result
176+
177+
- name: assert create resource description
178+
assert:
179+
that:
180+
- result is changed
181+
- result.cpsm_response == 'OK'
182+
- result.record_count == 1
183+
- result.records[0].resdesc == resource_description
184+
185+
186+
- name: 'Add resource group to resource description'
187+
delegate_to: 'localhost'
188+
ibm.ibm_zos_cics.cmci_action:
189+
type: 'CICSResourceGroup'
190+
action_name: 'ADDTODSC'
191+
resources:
192+
filter:
193+
resgroup: '{{ resource_group }}'
194+
action_parameters:
195+
- name: 'RESDESC'
196+
value: '{{ resource_description }}'
197+
register: result
198+
199+
200+
- name: assert resource group added to resource description
201+
assert:
202+
that:
203+
- result is changed
204+
- result.cpsm_response == 'OK'
205+
- result.record_count == 1
206+
- result.records[0].resgroup == resource_group
207+
208+
209+
- name: 'Get Resource Groups in Resource Description'
210+
delegate_to: 'localhost'
211+
ibm.ibm_zos_cics.cmci_get:
212+
type: 'CICSResourceGroupInDescription'
213+
resources:
214+
filter:
215+
resdesc: '{{ resource_description }}'
216+
register: result
217+
218+
219+
- name: assert resource group is in resource description
220+
assert:
221+
that:
222+
- result is not changed
223+
- result.cpsm_response == 'OK'
224+
- result.record_count == 1
225+
- result.records[0].resgroup == resource_group
226+
227+
228+
- name: 'Get Programs in Resource Group'
229+
delegate_to: 'localhost'
230+
ibm.ibm_zos_cics.cmci_get:
231+
type: 'CICSResourceInGroup'
232+
resources:
233+
filter:
234+
resgroup: '{{ result.records[0].resgroup }}'
235+
register: result
236+
237+
- name: assert program is in resource group
238+
assert:
239+
that:
240+
- result is not changed
241+
- result.cpsm_response == 'OK'
242+
- result.record_count == 1
243+
- result.records[0].resgroup == resource_group
244+
- result.records[0].deftype == 'PROGDEF'
245+
- result.records[0].defname == program
246+
247+
248+
- name: 'Delete progdef'
249+
delegate_to: 'localhost'
250+
ibm.ibm_zos_cics.cmci_delete:
251+
type: 'CICSDefinitionProgram'
252+
resources:
253+
filter:
254+
NAME: '{{ program }}'
255+
get_parameters:
256+
- name: 'RESGROUP'
257+
value: '{{ resource_group }}'
258+
register: result
259+
260+
- name: assert deleted progdef
261+
assert:
262+
that:
263+
- result is changed
264+
- result.cpsm_response == 'OK'
265+
- result.record_count == 1
266+
- result.success_count == 1
267+
268+
269+
- name: 'Delete resource group'
270+
delegate_to: 'localhost'
271+
ibm.ibm_zos_cics.cmci_delete:
272+
type: 'CICSResourceGroup'
273+
resources:
274+
filter:
275+
resgroup: '{{ resource_group }}'
276+
register: result
277+
278+
- name: assert deleted resource group
279+
assert:
280+
that:
281+
- result is changed
282+
- result.cpsm_response == 'OK'
283+
- result.record_count == 1
284+
- result.success_count == 1
285+
286+
287+
- name: 'Delete resource description'
288+
delegate_to: 'localhost'
289+
ibm.ibm_zos_cics.cmci_delete:
290+
type: 'CICSResourceDescription'
291+
resources:
292+
filter:
293+
resdesc: '{{ resource_description }}'
294+
register: result
295+
296+
- name: assert deleted resource description
297+
assert:
298+
that:
299+
- result is changed
300+
- result.cpsm_response == 'OK'
301+
- result.record_count == 1
302+
- result.success_count == 1

tests/integration/targets/cics_cmci/runme.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,5 @@ ansible-playbook -e "@cmci-variables.yml" playbooks/cmci_incorrect_context.yml
1212
ansible-playbook -e "@cmci-variables.yml" playbooks/cics_cmci_http.yml
1313
ansible-playbook -e "@cmci-variables.yml" playbooks/cmci_install_bundle_failure.yml
1414
ansible-playbook -e "@cmci-variables.yml" playbooks/cmci_create_pipeline_failure.yml
15-
ansible-playbook -e "@cmci-variables.yml" playbooks/cmci_incorrect_scheme.yml
15+
ansible-playbook -e "@cmci-variables.yml" playbooks/cmci_incorrect_scheme.yml
16+
ansible-playbook -e "@cmci-variables.yml" playbooks/cmci_bas_link.yml

0 commit comments

Comments
 (0)