Skip to content

Commit 06497cf

Browse files
ddgandhitrevinop36
andauthored
Merge final changes for 1.3.0 into release branch (#137)
* Update Catalog Define Directory Testcase * Catalog Directory TestCase Update * Update ims_gen_utils.py type() not supported in python3.12, resolving sanity error - replaced by isinstance() * Update release_notes.rst (#134) * Update release_notes.rst * Update README.md * Update changelog.yaml * Update yamllint.yaml added new line * Update galaxy.yml spaces reduced from 4 to 2 * Update execution-environment.yml added new line at the end of the file * Update runtime.yml added new line at the end of the file * Update test_config.yml deleted additional spaces after the colon * Update release_notes.rst * Update README.md * Update release_notes.rst * Update release_notes.rst * Update changelog.yaml * Update changelog.yaml deleted duplicate fragment * Update execution-environment.yml added new line as per the scan results from AAP * Update execution-environment.yml only one new line char added * validate-modules:doc-choices-do-not-match-spec wasn't permitted ignore - undid the acbgen compression doc updates Signed-off-by: Dipti <[email protected]> * deleteing repeated entry for validate-modules:doc-choices-do-not-match-spec Signed-off-by: Dipti <[email protected]> --------- Signed-off-by: Dipti <[email protected]> Co-authored-by: trevinop36 <[email protected]>
1 parent e98abb8 commit 06497cf

File tree

20 files changed

+114
-43
lines changed

20 files changed

+114
-43
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ and ansible-doc to automate tasks on IMS.
4040
Ansible version compatibility
4141
==============================
4242

43-
This collection has been tested against the following Ansible versions: >=2.14.0,<2.16.0.
43+
This collection has been tested against the following Ansible versions: >=2.14.0,<2.17.0.
4444

4545

4646
Copyright

changelogs/changelog.yaml

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,6 @@ releases:
6969
\n"
7070
fragments:
7171
- v1.2.0_summary.yml
72-
- v1.2.0_summary.yml
7372
release_date: '2023-03-31'
7473
1.2.0-beta.1:
7574
changes:
@@ -93,3 +92,33 @@ releases:
9392
fragments:
9493
- v1.2.0-beta2_summary.yml
9594
release_date: '2022-12-22'
95+
1.3.0:
96+
changes:
97+
release_summary: "Release Date: '2024-04-10'\nThis changelog describes all changes
98+
made to the modules and plugins included\nin this collection.\nFor additional
99+
details such as required dependencies and availability review\nthe collections
100+
`release notes <https://github.com/ansible-collections/ibm_zos_ims/blob/dev/docs/source/release_notes.rst>`__
101+
\n"
102+
fragments:
103+
- v1.3.0_summary.yml
104+
release_date: '2024-04-10'
105+
1.3.0-beta.1:
106+
changes:
107+
major_changes:
108+
- Added new module 'ims_ddl'
109+
- Added new member dfsdf_member in the ims_catalog_populate and ims_catalog_purge modules.
110+
The DFSDFxxx member is in the IMS.PROCLIB data set where the CATALOG section is defined.
111+
- Documentation update, minor updates to compression parameter in the ims_acbgen module where
112+
PRECOMP,POSTCOMP, in any combination, cause the required in-place compression.
113+
The choices are not mutually exclusive -- PRECOMP or POSTCOMP or PRECOMP,POSTCOMP can be used.
114+
- Improved test and ansible-sanity coverage.
115+
- Subset of the test cases were updated to support for Ansible 2.15.
116+
- Additional support for test cases in ims_catalog_populate and ims_catalog_purge modules to
117+
support dfsdf_member parameter.
118+
- This update also has updated prerequisites for Ansible 2.14 or newer and ZOAU 1.2.2 or newer
119+
but prior to version 1.3.
120+
fragments:
121+
- v1.3.0-beta1_summary.yml
122+
release_date: '2023-12-15'
123+
124+

docs/source/release_notes.rst

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,44 @@
66
Releases
77
========
88

9+
10+
Version 1.3.0
11+
====================
12+
13+
Notes
14+
-----
15+
16+
* Update recommended
17+
18+
* type() was replaced by isinstance() in the code for gen utilities since ansible-core 2.16 supports Python 3.12 and that version deprecated type() function.
19+
* No other changes from version 1.3.0-beta.1 release. Collection promoted to certified content with version 1.3.0.
20+
21+
Availability
22+
------------
23+
24+
* `Automation Hub`_
25+
* `Galaxy`_
26+
* `GitHub`_
27+
28+
Reference
29+
---------
30+
31+
* Supported by IBM z/OS core collection v1.5.0 or later
32+
* Supported by IBM Z Open Enterprise Python for z/OS 3.9 - 3.12
33+
* Supported by IBM Z Open Automation Utilities 1.2.2 or later (but prior to 1.3)
34+
* Supported by z/OS V2R4
35+
* The z/OS® shell
36+
37+
.. _centralized content:
38+
https://ibm.github.io/z_ansible_collections_doc/index.html
39+
40+
.. _GitHub:
41+
https://github.com/ansible-collections/ibm_zos_ims
42+
43+
.. _Galaxy:
44+
https://galaxy.ansible.com/ibm/ibm_zos_ims
45+
46+
947
Version 1.3.0-beta.1
1048
====================
1149

galaxy.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ tags: [ibm, z, zos, z_os, core, zos_core, data_set, jcl, uss, mvs, ims, zos_ims,
3333

3434
# Collections that this collection requires to be installed for it to be usable.
3535
dependencies:
36-
"ibm.ibm_zos_core": ">=1.5.0"
36+
"ibm.ibm_zos_core": ">=1.5.0"
3737

3838
# The URL of the originating SCM repository
3939
repository: https://github.com/ansible-collections/ibm_zos_ims

meta/execution-environment.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,4 @@
77
################################################################################
88
dependencies:
99
python: requirements-zos-ims.txt
10-
version: 1
10+
version: 1

meta/runtime.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
---
2-
requires_ansible: '>=2.14.0'
2+
requires_ansible: '>=2.14.0'

plugins/module_utils/ims_gen_utils.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -328,7 +328,7 @@ def execute_gen_command(source, dest, syslib_list, run_command, module, result):
328328
return src, return_code, return_text, failed
329329

330330
for item in source['member_list']:
331-
if type(item) == str:
331+
if isinstance(item, str):
332332
# set target name same as src
333333
src_member = item
334334
target_name = item

plugins/modules/ims_acb_gen.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,13 +36,16 @@
3636
compression:
3737
description:
3838
- PRECOMP,POSTCOMP, in any combination, cause the required in-place compression.
39-
- The choices are not mutually exclusive -- PRECOMP or POSTCOMP or PRECOMP,POSTCOMP can be used
4039
- The default is none.
4140
type: str
4241
required: false
4342
choices:
43+
- precomp
44+
- postcomp
45+
- precomp,postcomp
4446
- PRECOMP
4547
- POSTCOMP
48+
- PRECOMP,POSTCOMP
4649
psb_name:
4750
description:
4851
- The name of the PSB(s). Specifies that blocks are built or deleted for all PSBs that are named on this control statement.

tests/functional/module_utils/ims_test_catalog_utils.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -129,13 +129,11 @@ class CatalogInputParameters():
129129
DIR_BATCH = [
130130
{
131131
'name': DIR1,
132-
'state': 'absent',
133-
'volumes': '222222'
132+
'state': 'absent'
134133
},
135134
{
136135
'name': DIR2,
137-
'state': 'absent',
138-
'volumes': '222222'
136+
'state': 'absent'
139137
}
140138
]
141139
RETENTION = [

tests/functional/modules/ims_catalog/test_catalog_managed_acbs.py

Lines changed: 20 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ def test_catalog_define_bootstrap(ansible_zos_module):
112112
for result in response.contacted.values():
113113
assert result['message'] == ''
114114
if result['changed'] is False:
115-
response = hosts.all.zos_data_set(name=cp.BSDS, state="absent", volume="SCR03")
115+
response = hosts.all.zos_data_set(name=cp.BSDS, state="absent", volume="222222")
116116

117117
# Load catalog while defining the bootstrap dataset
118118
load_catalog(hosts,
@@ -178,7 +178,7 @@ def test_catalog_define_staging(ansible_zos_module):
178178
for result in response.contacted.values():
179179
assert result['message'] == ''
180180
if result['changed'] is False:
181-
response = hosts.all.zos_data_set(name=cp.STAGE, state="absent", volume="SCR03")
181+
response = hosts.all.zos_data_set(name=cp.STAGE, state="absent", volume="222222")
182182

183183
# Load catalog while defining the staging dataset
184184
load_catalog(hosts,
@@ -241,11 +241,18 @@ def test_catalog_define_directory(ansible_zos_module):
241241
hosts = ansible_zos_module
242242

243243
# Delete the directory datasets first
244-
response = hosts.all.zos_data_set(batch=cp.DIR_BATCH)
245-
for result in response.contacted.values():
244+
# response = hosts.all.zos_data_set(batch=cp.DIR_BATCH)
245+
response1 = hosts.all.zos_data_set(name=cp.DIR1, state="absent")
246+
for result in response1.contacted.values():
247+
assert result['message'] == ''
248+
if result['changed'] is False:
249+
response1 = hosts.all.zos_data_set(name=cp.DIR1, state="uncataloged")
250+
251+
response2 = hosts.all.zos_data_set(name=cp.DIR2, state="absent")
252+
for result in response2.contacted.values():
246253
assert result['message'] == ''
247254
if result['changed'] is False:
248-
response = hosts.all.zos_data_set(name=cp.DIR_BATCH, state="absent", volume="SCR03")
255+
response2 = hosts.all.zos_data_set(name=cp.DIR2, state="uncataloged")
249256

250257
# Load catalog while defining the directory datasets
251258
load_catalog(hosts,
@@ -313,8 +320,14 @@ def test_catalog_define_directory(ansible_zos_module):
313320
managed_acbs=True)
314321

315322
# Finally delete the directory datasets again
316-
response = hosts.all.zos_data_set(batch=cp.DIR_BATCH)
317-
for result in response.contacted.values():
323+
# response = hosts.all.zos_data_set(batch=cp.DIR_BATCH)
324+
response3 = hosts.all.zos_data_set(name=cp.DIR1, state="absent", volumes="222222")
325+
for result in response3.contacted.values():
326+
assert result['changed'] is True
327+
assert result['message'] == ''
328+
329+
response4 = hosts.all.zos_data_set(name=cp.DIR2, state="absent", volumes="222222")
330+
for result in response4.contacted.values():
318331
assert result['changed'] is True
319332
assert result['message'] == ''
320333

0 commit comments

Comments
 (0)