ibm_zos_core
ibm_zos_core copied to clipboard
[Bug] [zos_mvs_raw] Inconsistency in behavior with non-zero rc when `verbose` is toggled
Bug description
I have a playbook task which calls LISTCAT
on a non-existent data set. I'd expect to get an rc=4
.
The inconsistency in behavior is:
if verbose: True
==> the playbook task FAILS
if verbose: False
=> the playbook task SUCCEEDS
- Playbook task with
verbose: True
:
- name: mvs raw with verbose with non-zero rc
zos_mvs_raw:
verbose: True
program_name: idcams
auth: True
dds:
- dd_data_set:
dd_name: SYSPRINT
data_set_name: "{{ RC_4_DATA_SET_NAME }}"
disposition: new
type: seq
return_content:
type: text
- dd_input:
dd_name: SYSIN
content: "{{ IDCAMS_STDIN_RC4 }}"
- Output (with ignored error):
PLAY [npX,zoau1.3.X] ******************************************************************************************************************************************************************************************************************************************
TASK [create data set to LISTCAT] *****************************************************************************************************************************************************************************************************************************
Thursday 28 March 2024 17:27:57 -0700 (0:00:00.006) 0:00:00.006 ********
changed: [zvm]
TASK [mvs raw with verbose with rc=0] *************************************************************************************************************************************************************************************************************************
Thursday 28 March 2024 17:28:01 -0700 (0:00:03.888) 0:00:03.895 ********
changed: [zvm]
TASK [mvs raw with verbose with non-zero rc] ******************************************************************************************************************************************************************************************************************
Thursday 28 March 2024 17:28:04 -0700 (0:00:03.854) 0:00:07.750 ********
fatal: [zvm]: FAILED! => {"backups": [], "changed": false, "dd_names": [], "msg": "ZOSRawError('An error occurred during execution of z/OS program idcams. BGYSC0307I Program: <idcams> Arguments: <>\\nBGYSC0308I DDNames:\\nBGYSC0312I SYSIN=KETAN.P7305099.T0839097.C0000000\\nBGYSC0312I SYSPRINT=KETAN.ANSIBLE.TWO\\nBGYSC0303I Dataset allocation succeeded for SYSIN=KETAN.P7305099.T0839097.C0000000\\nBGYSC0303I Dataset allocation succeeded for SYSPRINT=KETAN.ANSIBLE.TWO\\nBGYSC0328I OS Load program IDCAMS \\nBGYSC0319I Program is APF authorized\\nBGYSC0320I Addressing mode: AMODE31\\nBGYSC0327I Attach Exit code: 4 from IDCAMS\\nBGYSC0338I Dataset free succeeded for SYSIN=KETAN.P7305099.T0839097.C0000000\\nBGYSC0338I Dataset free succeeded for SYSPRINT=KETAN.ANSIBLE.TWO\\n')", "ret_code": {"code": 8}}
...ignoring
TASK [print output] *******************************************************************************************************************************************************************************************************************************************
Thursday 28 March 2024 17:28:09 -0700 (0:00:04.739) 0:00:12.489 ********
ok: [zvm] => {
"msg": [
{
"backups": [],
"changed": true,
"dd_names": [
{
"byte_count": 1213,
"content": [
"\fIDCAMS SYSTEM SERVICES TIME: 20:28:04 03/28/24 PAGE 1",
"",
" ",
" LISTCAT ENTRIES('KETAN.ANSIBLE.SOMEDS')",
"",
"NONVSAM ------- KETAN.ANSIBLE.SOMEDS",
" IN-CAT --- CATALOG.SVPLEX9.MASTER\fIDCAMS SYSTEM SERVICES TIME: 20:28:04 03/28/24 PAGE 2",
"",
" THE NUMBER OF ENTRIES PROCESSED WAS:",
" AIX -------------------0",
" ALIAS -----------------0",
" CLUSTER ---------------0",
" DATA ------------------0",
" GDG -------------------0",
" INDEX -----------------0",
" NONVSAM ---------------1",
" PAGESPACE -------------0",
" PATH ------------------0",
" SPACE -----------------0",
" USERCATALOG -----------0",
" TAPELIBRARY -----------0",
" TAPEVOLUME ------------0",
" TOTAL -----------------1",
"",
" THE NUMBER OF PROTECTED ENTRIES SUPPRESSED WAS 0",
"",
"IDC0001I FUNCTION COMPLETED, HIGHEST CONDITION CODE WAS 0",
"",
" ",
"",
"IDC0002I IDCAMS PROCESSING COMPLETE. MAXIMUM CONDITION CODE WAS 0",
""
],
"dd_name": "SYSPRINT",
"name": "KETAN.ANSIBLE.ONE",
"record_count": 32
}
],
"failed": false,
"ret_code": {
"code": 0
}
},
{
"backups": [],
"changed": false,
"dd_names": [],
"failed": true,
"msg": "ZOSRawError('An error occurred during execution of z/OS program idcams. BGYSC0307I Program: <idcams> Arguments: <>\\nBGYSC0308I DDNames:\\nBGYSC0312I SYSIN=KETAN.P7305099.T0839097.C0000000\\nBGYSC0312I SYSPRINT=KETAN.ANSIBLE.TWO\\nBGYSC0303I Dataset allocation succeeded for SYSIN=KETAN.P7305099.T0839097.C0000000\\nBGYSC0303I Dataset allocation succeeded for SYSPRINT=KETAN.ANSIBLE.TWO\\nBGYSC0328I OS Load program IDCAMS \\nBGYSC0319I Program is APF authorized\\nBGYSC0320I Addressing mode: AMODE31\\nBGYSC0327I Attach Exit code: 4 from IDCAMS\\nBGYSC0338I Dataset free succeeded for SYSIN=KETAN.P7305099.T0839097.C0000000\\nBGYSC0338I Dataset free succeeded for SYSPRINT=KETAN.ANSIBLE.TWO\\n')",
"ret_code": {
"code": 8
}
}
]
}
- Playbook task with
verbose: False
:
- name: mvs raw with verbose with non-zero rc
zos_mvs_raw:
verbose: False
program_name: idcams
auth: True
dds:
- dd_data_set:
dd_name: SYSPRINT
data_set_name: "{{ RC_4_DATA_SET_NAME }}"
disposition: new
type: seq
return_content:
type: text
- dd_input:
dd_name: SYSIN
content: "{{ IDCAMS_STDIN_RC4 }}"
- Output with no failed tasks:
TASK [create data set to LISTCAT] *****************************************************************************************************************************************************************************************************************************
Thursday 28 March 2024 17:30:13 -0700 (0:00:00.007) 0:00:00.007 ********
changed: [zvm]
TASK [mvs raw with verbose with non-zero rc] ******************************************************************************************************************************************************************************************************************
Thursday 28 March 2024 17:30:17 -0700 (0:00:03.348) 0:00:03.355 ********
changed: [zvm]
TASK [print output] *******************************************************************************************************************************************************************************************************************************************
Thursday 28 March 2024 17:30:19 -0700 (0:00:02.920) 0:00:06.276 ********
ok: [zvm] => {
"msg": [
{
"backups": [],
"changed": true,
"dd_names": [
{
"byte_count": 1305,
"content": [
"\fIDCAMS SYSTEM SERVICES TIME: 20:30:19 03/28/24 PAGE 1",
"",
" ",
" LISTCAT ENTRIES('KETAN.ANSIBLE.SOMEDSAA')",
"",
"IDC3012I ENTRY KETAN.ANSIBLE.SOMEDSAA NOT FOUND",
"IDC3009I ** VSAM CATALOG RETURN CODE IS 8 - REASON CODE IS IGG0CLEG-42",
"IDC1566I ** KETAN.ANSIBLE.SOMEDSAA NOT LISTED\fIDCAMS SYSTEM SERVICES TIME: 20:30:19 03/28/24 PAGE 2",
"",
" THE NUMBER OF ENTRIES PROCESSED WAS:",
"",
" AIX -------------------0",
" ALIAS -----------------0",
" CLUSTER ---------------0",
" DATA ------------------0",
" GDG -------------------0",
" INDEX -----------------0",
" NONVSAM ---------------0",
" PAGESPACE -------------0",
" PATH ------------------0",
" SPACE -----------------0",
" USERCATALOG -----------0",
" TAPELIBRARY -----------0",
" TAPEVOLUME ------------0",
" TOTAL -----------------0",
"",
" THE NUMBER OF PROTECTED ENTRIES SUPPRESSED WAS 0",
"",
"IDC0001I FUNCTION COMPLETED, HIGHEST CONDITION CODE WAS 4",
"",
" ",
"",
"IDC0002I IDCAMS PROCESSING COMPLETE. MAXIMUM CONDITION CODE WAS 4",
""
],
"dd_name": "SYSPRINT",
"name": "KETAN.ANSIBLE.TWO",
"record_count": 34
}
],
"failed": false,
"ret_code": {
"code": 4
}
}
]
}