IBM / ansible-for-i

the tool is to provide several customized modules for Ansible to manage IBM i systems.
GNU General Public License v3.0
55 stars 51 forks source link

Error when running playbook sample check_download_ptf_group.yml #127

Closed robinsg closed 2 years ago

robinsg commented 2 years ago

Hello,

I'm running the sample playbook check_download_ptf_group.yml to retrieve a group PTF but it's failing as follows:

PLAY [Get the latest PTF group information from PSP website, and download ptf group] **********************************************************************************************************

TASK [Include fix_repo_check_ptf_group role to check if the latest ptf group is already in catalog] *******************************************************************************************

TASK [ibm.power_ibmi.fix_repo_check_ptf_group : Initialize check_ptf_group_fail] **************************************************************************************************************

--snip--

TASK [ibm.power_ibmi.fix_repo_check_ptf_group : Check if ptf group information is already in catalog's ptf group information table] ***********************************************************
task path: /home/grobinso/ansible/IBMiPTFs/collections/ansible_collections/ibm/power_ibmi/roles/fix_repo_check_ptf_group/tasks/main.yml:29
Using module file /home/grobinso/ansible/IBMiPTFs/collections/ansible_collections/ibm/power_ibmi/plugins/modules/ibmi_fix_repo.py
Pipelining is enabled.
<myreposerver> ESTABLISH SSH CONNECTION FOR USER: grobinso
<myreposerver> SSH: EXEC ssh -C -o ControlMaster=auto -o ControlPersist=60s -o StrictHostKeyChecking=no -o 'IdentityFile="/home/grobinso/.ssh/gr_ansible_id_rsa"' -o KbdInteractiveAuthentication=no -o PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o PasswordAuthentication=no -o 'User="grobinso"' -o ConnectTimeout=10 -o ControlPath=/home/grobinso/.ansible/cp/055ca443da myreposerver '/QOpenSys/pkgs/bin/bash -c '"'"'/QOpenSys/pkgs/bin/python3 && sleep 0'"'"''
<myreposerver> (1, b'\n{"msg": "Elements value for option parameters is of type <class \'str\'> and we were unable to convert to dict: unable to evaluate string as dictionary", "failed": true, "exception": "  File \\"/tmp/ansible_ibm.power_ibmi.ibmi_fix_repo_payload_zt_e_091/ansible_ibm.power_ibmi.ibmi_fix_repo_payload.zip/ansible/module_utils/basic.py\\", line 1783, in _handle_elements\\n    validated_params.append(type_checker(value))\\n  File \\"/tmp/ansible_ibm.power_ibmi.ibmi_fix_repo_payload_zt_e_091/ansible_ibm.power_ibmi.ibmi_fix_repo_payload.zip/ansible/module_utils/basic.py\\", line 1669, in _check_type_dict\\n    return check_type_dict(value)\\n  File \\"/tmp/ansible_ibm.power_ibmi.ibmi_fix_repo_payload_zt_e_091/ansible_ibm.power_ibmi.ibmi_fix_repo_payload.zip/ansible/module_utils/common/validation.py\\", line 401, in check_type_dict\\n    raise TypeError(\'unable to evaluate string as dictionary\')\\n", "invocation": {"module_args": {"type": "ptf_group", "action": "find", "parameters": ["{\'ptf_group_number\': AnsibleUndefined, \'ptf_group_level\': AnsibleUndefined, \'release_date\': AnsibleUndefined}"], "database": "/etc/ibmi_ansible/fix_management/repo.sqlite3", "checksum": false}}}\n', b'tput: unknown terminal "dumb"\n')
<myreposerver> Failed to connect to the host via ssh: tput: unknown terminal "dumb"
The full traceback is:
  File "/tmp/ansible_ibm.power_ibmi.ibmi_fix_repo_payload_zt_e_091/ansible_ibm.power_ibmi.ibmi_fix_repo_payload.zip/ansible/module_utils/basic.py", line 1783, in _handle_elements
    validated_params.append(type_checker(value))
  File "/tmp/ansible_ibm.power_ibmi.ibmi_fix_repo_payload_zt_e_091/ansible_ibm.power_ibmi.ibmi_fix_repo_payload.zip/ansible/module_utils/basic.py", line 1669, in _check_type_dict
    return check_type_dict(value)
  File "/tmp/ansible_ibm.power_ibmi.ibmi_fix_repo_payload_zt_e_091/ansible_ibm.power_ibmi.ibmi_fix_repo_payload.zip/ansible/module_utils/common/validation.py", line 401, in check_type_dict
    raise TypeError('unable to evaluate string as dictionary')
fatal: [myroposerver]: FAILED! => {
    "changed": false,
    "invocation": {
        "module_args": {
            "action": "find",
            "checksum": false,
            "database": "/etc/ibmi_ansible/fix_management/repo.sqlite3",
            "parameters": [
                "{'ptf_group_number': AnsibleUndefined, 'ptf_group_level': AnsibleUndefined, 'release_date': AnsibleUndefined}"
            ],
            "type": "ptf_group"
        }
    },
    "msg": "Elements value for option parameters is of type <class 'str'> and we were unable to convert to dict: unable to evaluate string as dictionary"
}

This seems to be related to the ssh error saying tput unknown terminal "dumb". Any suggestions how I correct this error?

Thanks. Glenn