dell / dellemc-openmanage-ansible-modules

Dell OpenManage Ansible Modules
GNU General Public License v3.0
335 stars 163 forks source link

ImportError: Dell EMC OMSDK library is required for this module in virtual environment #262

Closed vzovko closed 3 years ago

vzovko commented 3 years ago

Description

I ran into the issue ImportError: Dell EMC OMSDK library is required for this module while running the below playbook called reproduce.yml. I'm executing this playbook in a Python virtual environment. See below for details.

In this particulare scenario I'm executing the playbook with data produced from an internal ordering system. From this input an in-memory with add_hostis build. At this stage the modules are working. See below task called TASK [Test dellemc.openmanage.idrac_system_info with first server from input to show that at this stage the omsdk module is found in venv].

When the next play PLAY [Get status and proceed with ESXi installation] starts the modules are not working and I receive the import error.

My current workaround is to install omsdk system-wide with pip3 install omsdk==1.2.456. But I'd rather really like to rely on virtual environments.

Manually loading the modules listed in https://github.com/dell/dellemc-openmanage-ansible-modules/blob/54eed8cd50980541d6e02ef56b2544aa40ef5862/plugins/module_utils/dellemc_idrac.py#L15 works fine in the venv. Otherwise the first task would fail.

Run

source /data/awx/venvs/vmware_dell/bin/activate

ansible-playbook issue/reproduce.yml -e "@issue/input.json"

Result with omsdk installed only in virtual environment

PLAY [Gather infos for ESXi installation on Dell hosts] ****************************************************************************************************************************

TASK [Create in-memory inventory from JSON input] **********************************************************************************************************************************
ok: [localhost] => (item={'clientname': 'esx001', 'oobIP': '10.63.5.117', 'privateIP': '10.62.10.74'})
ok: [localhost] => (item={'clientname': 'esx002', 'oobIP': '10.63.5.123', 'privateIP': '10.62.10.80'})

TASK [Test dellemc.openmanage.idrac_system_info with first server from input to show that at this stage the omsdk module is found in venv] *****************************************
ok: [localhost]

TASK [Show powerstate] *************************************************************************************************************************************************************
ok: [localhost] =>
  dell.system_info.System[0].PowerState: 'On'

PLAY [Get status and proceed with ESXi installation] *******************************************************************************************************************************

TASK [Check if iDrac is reachable on port 443] *************************************************************************************************************************************
ok: [esx001]
ok: [esx002]

TASK [Get system info from iDrac with dellemc.openmanage.idrac_system_info] ********************************************************************************************************
An exception occurred during task execution. To see the full traceback, use -vvv. The error was: ImportError: Dell EMC OMSDK library is required for this module
fatal: [esx001]: FAILED! => changed=false
  module_stderr: |-
    Traceback (most recent call last):
      File "/home/user/.ansible/tmp/ansible-tmp-1618380072.420252-56907-160402847883770/AnsiballZ_idrac_system_info.py", line 102, in <module>
        _ansiballz_main()
      File "/home/user/.ansible/tmp/ansible-tmp-1618380072.420252-56907-160402847883770/AnsiballZ_idrac_system_info.py", line 94, in _ansiballz_main
        invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)
      File "/home/user/.ansible/tmp/ansible-tmp-1618380072.420252-56907-160402847883770/AnsiballZ_idrac_system_info.py", line 40, in invoke_module
        runpy.run_module(mod_name='ansible_collections.dellemc.openmanage.plugins.modules.idrac_system_info', init_globals=None, run_name='__main__', alter_sys=True)
      File "/usr/lib/python3.6/runpy.py", line 205, in run_module
        return _run_module_code(code, init_globals, run_name, mod_spec)
      File "/usr/lib/python3.6/runpy.py", line 96, in _run_module_code
        mod_name, mod_spec, pkg_name, script_name)
      File "/usr/lib/python3.6/runpy.py", line 85, in _run_code
        exec(code, run_globals)
      File "/tmp/ansible_dellemc.openmanage.idrac_system_info_payload_4hae8j50/ansible_dellemc.openmanage.idrac_system_info_payload.zip/ansible_collections/dellemc/openmanage/plugins/modules/idrac_system_info.py", line 123, in <module>
      File "/tmp/ansible_dellemc.openmanage.idrac_system_info_payload_4hae8j50/ansible_dellemc.openmanage.idrac_system_info_payload.zip/ansible_collections/dellemc/openmanage/plugins/modules/idrac_system_info.py", line 108, in main
      File "/tmp/ansible_dellemc.openmanage.idrac_system_info_payload_4hae8j50/ansible_dellemc.openmanage.idrac_system_info_payload.zip/ansible_collections/dellemc/openmanage/plugins/module_utils/dellemc_idrac.py", line 29, in __init__
    ImportError: Dell EMC OMSDK library is required for this module
  module_stdout: ''
  msg: |-
    MODULE FAILURE
    See stdout/stderr for the exact error
  rc: 1
An exception occurred during task execution. To see the full traceback, use -vvv. The error was: ImportError: Dell EMC OMSDK library is required for this module
fatal: [esx002]: FAILED! => changed=false
  module_stderr: |-
    Traceback (most recent call last):
      File "/home/user/.ansible/tmp/ansible-tmp-1618380072.4282448-56908-35131830145144/AnsiballZ_idrac_system_info.py", line 102, in <module>
        _ansiballz_main()
      File "/home/user/.ansible/tmp/ansible-tmp-1618380072.4282448-56908-35131830145144/AnsiballZ_idrac_system_info.py", line 94, in _ansiballz_main
        invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)
      File "/home/user/.ansible/tmp/ansible-tmp-1618380072.4282448-56908-35131830145144/AnsiballZ_idrac_system_info.py", line 40, in invoke_module
        runpy.run_module(mod_name='ansible_collections.dellemc.openmanage.plugins.modules.idrac_system_info', init_globals=None, run_name='__main__', alter_sys=True)
      File "/usr/lib/python3.6/runpy.py", line 205, in run_module
        return _run_module_code(code, init_globals, run_name, mod_spec)
      File "/usr/lib/python3.6/runpy.py", line 96, in _run_module_code
        mod_name, mod_spec, pkg_name, script_name)
      File "/usr/lib/python3.6/runpy.py", line 85, in _run_code
        exec(code, run_globals)
      File "/tmp/ansible_dellemc.openmanage.idrac_system_info_payload_x21_y565/ansible_dellemc.openmanage.idrac_system_info_payload.zip/ansible_collections/dellemc/openmanage/plugins/modules/idrac_system_info.py", line 123, in <module>
      File "/tmp/ansible_dellemc.openmanage.idrac_system_info_payload_x21_y565/ansible_dellemc.openmanage.idrac_system_info_payload.zip/ansible_collections/dellemc/openmanage/plugins/modules/idrac_system_info.py", line 108, in main
      File "/tmp/ansible_dellemc.openmanage.idrac_system_info_payload_x21_y565/ansible_dellemc.openmanage.idrac_system_info_payload.zip/ansible_collections/dellemc/openmanage/plugins/module_utils/dellemc_idrac.py", line 29, in __init__
    ImportError: Dell EMC OMSDK library is required for this module
  module_stdout: ''
  msg: |-
    MODULE FAILURE
    See stdout/stderr for the exact error
  rc: 1

PLAY RECAP *************************************************************************************************************************************************************************
esx001                     : ok=1    changed=0    unreachable=0    failed=1    skipped=0    rescued=0    ignored=0
esx002                     : ok=1    changed=0    unreachable=0    failed=1    skipped=0    rescued=0    ignored=0
localhost                  : ok=3    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

Result with omsdk installed system-wide

PLAY [Gather infos for ESXi installation on Dell hosts] ****************************************************************************************************************************

TASK [Create in-memory inventory from JSON input] **********************************************************************************************************************************
ok: [localhost] => (item={'clientname': 'esx001', 'oobIP': '10.63.5.117', 'privateIP': '10.62.10.74'})
ok: [localhost] => (item={'clientname': 'esx002', 'oobIP': '10.63.5.123', 'privateIP': '10.62.10.80'})

TASK [Test dellemc.openmanage.idrac_system_info with first server from input to show that at this stage the omsdk module is found in venv] *****************************************
ok: [localhost]

TASK [Show powerstate] *************************************************************************************************************************************************************
ok: [localhost] =>
  dell.system_info.System[0].PowerState: 'On'

PLAY [Get status and proceed with ESXi installation] *******************************************************************************************************************************

TASK [Check if iDrac is reachable on port 443] *************************************************************************************************************************************
ok: [esx002]
ok: [esx001]

TASK [Get system info from iDrac with dellemc.openmanage.idrac_system_info] ********************************************************************************************************
ok: [esx002]
ok: [esx001]

PLAY RECAP *************************************************************************************************************************************************************************
esx001                     : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0
esx002                     : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0
localhost                  : ok=3    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

Playbook

reproduce.yml

---
- name: Gather infos for ESXi installation on Dell hosts
  hosts: localhost
  connection: local
  gather_facts: no
  vars_files:
    - ../vars/vars.yml

  tasks:
    - name: Create in-memory inventory from JSON input
      add_host:
        hostname: "{{ item.clientname }}"
        ansible_host: "{{ item.oobIP }}"
        mgmt_ip: "{{ item.privateIP }}"
        groups: dell_hosts
      loop: "{{ servers }}"

    - name: Test with first server from input to show that at this stage the omsdk module is found in venv
      dellemc.openmanage.idrac_system_info:
        idrac_ip: "{{ servers[0].oobIP }}"
        idrac_user: "{{ idrac_user }}"
        idrac_password: "{{ idrac_pass }}"
      register: dell

    - name: Show powerstate
      debug:
        var: dell.system_info.System[0].PowerState

- name: Get status and proceed with ESXi installation
  hosts: dell_hosts
  gather_facts: no
  connection: local
  vars_files:
    - ../vars/vars.yml

  tasks:
    - name: Check if iDrac is reachable on port 443
      wait_for:
        host: "{{ ansible_host }}"
        port: 443
        connect_timeout: 1
        timeout: 1
        sleep: 0

    - name: Get system info from iDrac
      dellemc.openmanage.idrac_system_info:
        idrac_ip: "{{ ansible_host }}"
        idrac_user: "{{ idrac_user }}"
        idrac_password: "{{ idrac_pass }}"
      register: dell

Input

input.json

{
    "change": "CRQ000000000000",
    "servers": [
        {
            "clientname": "esx001",
            "oobIP": "10.63.5.117",
            "privateIP": "10.62.10.74"
        },
        {
            "clientname": "esx002",
            "oobIP": "10.63.5.123",
            "privateIP": "10.62.10.80"
        }
    ]
}

Ansible Version

ansible 2.10.7
  config file = /etc/ansible/ansible.cfg
  configured module search path = ['/home/user/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /data/awx/venvs/vmware_dell/lib/python3.6/site-packages/ansible
  executable location = /data/awx/venvs/vmware_dell/bin/ansible
  python version = 3.6.9 (default, Jan 26 2021, 15:33:00) [GCC 8.4.0]

ansible.cfg

[defaults]
interpreter_python = auto_silent
forks = 20
host_key_checking = False
stdout_callback = yaml
collections_paths = /data/awx/venvs/collections
vault_password_file = ~/.ansible/vault.pass
ansible_managed = Ansible managed: {file} modified on %Y-%m-%d %H:%M:%S by {uid} on {host}
deprecation_warnings = False

Python Virtual Environment

- name: Create custom virutalenv with VMware and Dell community modules
  hosts: localhost
  gather_facts: no
  vars:
    venv_path: /data/awx/venvs/vmware_dell
    collections_path: /data/awx/venvs/collections

  tasks:
    - name: Create virutalenv and install packages from pip
      pip:
        name:
          - pip==21.0.1
          - setuptools==54.2.0
          - setuptools-rust==0.12.1
          - wheel==0.36.2
        virtualenv: "{{ venv_path }}"
        virtualenv_command: /usr/bin/python3.6 -m venv
        virtualenv_site_packages: no
        umask: "0022"
      environment:
        HTTP_PROXY: "1.2.3.4:3128"
        HTTPS_PROXY: "1.2.3.4:3128"
      tags:
        - pip
        - base

    - name: Install additional packages to virtualenv, pip needs to be updated before these packages can be installed
      pip:
        name:
          - psutil==5.8.0
          - ansible==2.10.7
          - jmespath==0.10.0
          - pywinrm==0.4.1
          - requests-credssp==1.2.0
          - cryptography==3.4.7
          - pyvmomi==7.0.1
          - git+https://github.com/vmware/vsphere-automation-sdk-python.git@v7.0.2.0
          - omsdk==1.2.456
        virtualenv: "{{ venv_path }}"
        umask: "0022"
      environment:
        HTTP_PROXY: "1.2.3.4:3128"
        HTTPS_PROXY: "1.2.3.4:3128"
      tags:
        - pip
        - dependencies

    - name: Install VMware collection from Galaxy
      command: 
        cmd: "ansible-galaxy collection install community.vmware:1.9.0 -p {{ collections_path }} --force"
      environment:
        HTTP_PROXY: "1.2.3.4:3128"
        HTTPS_PROXY: "1.2.3.4:3128"
      tags:
        - galaxy

    - name: Install Dell OpenManage from Galaxy
      command: 
        cmd: "ansible-galaxy collection install dellemc.openmanage:3.2.0 -p {{ collections_path }} --force"
      environment:
        HTTP_PROXY: "1.2.3.4:3128"
        HTTPS_PROXY: "1.2.3.4:3128"
      tags:
        - galaxy
markatdxb commented 3 years ago

Im having very similar issue - exact same error message.

vzovko commented 3 years ago

I’m having this issue in an AWE execution environment too.

OMSDK version 1.2.478 OpenManage Ansible Modules 4.0.0

Even that approach doesn’t help: https://github.com/dell/dellemc-openmanage-ansible-modules/issues/112 @grantcurell Did this permanently resolved this issue for you?

Template Run of pip --version and pip list -v shows that omsdk is installed.

ansible-playbook [core 2.11.4] 
  config file = /runner/project/ansible.cfg
  configured module search path = ['/home/runner/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /home/runner/.local/lib/python3.8/site-packages/ansible
  ansible collection location = /runner/requirements_collections:/home/runner/.ansible/collections:/usr/share/ansible/collections
  executable location = /usr/local/bin/ansible-playbook
  python version = 3.8.6 (default, Jan 29 2021, 17:38:16) [GCC 8.4.1 20200928 (Red Hat 8.4.1-1)]
  jinja version = 2.10.3
  libyaml = True
Using /runner/project/ansible.cfg as config file
Vault password: 
host_list declined parsing /runner/inventory/hosts as it did not pass its verify_file() method
Parsed /runner/inventory/hosts inventory source with script plugin
Skipping callback 'awx_display', as we already have a stdout callback.
Skipping callback 'default', as we already have a stdout callback.
Skipping callback 'minimal', as we already have a stdout callback.
Skipping callback 'oneline', as we already have a stdout callback.

PLAYBOOK: test.yml *************************************************************
1 plays in install_upgrade/test.yml

PLAY [Test] ********************************************************************
META: ran handlers

TASK [Run pip version] *********************************************************
task path: /runner/project/install_upgrade/test.yml:10
<localhost> ESTABLISH LOCAL CONNECTION FOR USER: runner
<localhost> EXEC /bin/sh -c 'echo ~runner && sleep 0'
<localhost> EXEC /bin/sh -c '( umask 77 && mkdir -p "` echo /home/runner/.ansible/tmp `"&& mkdir "` echo /home/runner/.ansible/tmp/ansible-tmp-1631113040.4390213-25-28119246645044 `" && echo ansible-tmp-1631113040.4390213-25-28119246645044="` echo /home/runner/.ansible/tmp/ansible-tmp-1631113040.4390213-25-28119246645044 `" ) && sleep 0'
<localhost> Attempting python interpreter discovery
<localhost> EXEC /bin/sh -c 'echo PLATFORM; uname; echo FOUND; command -v '"'"'/usr/bin/python'"'"'; command -v '"'"'python3.9'"'"'; command -v '"'"'python3.8'"'"'; command -v '"'"'python3.7'"'"'; command -v '"'"'python3.6'"'"'; command -v '"'"'python3.5'"'"'; command -v '"'"'python2.7'"'"'; command -v '"'"'python2.6'"'"'; command -v '"'"'/usr/libexec/platform-python'"'"'; command -v '"'"'/usr/bin/python3'"'"'; command -v '"'"'python'"'"'; echo ENDFOUND && sleep 0'
<localhost> EXEC /bin/sh -c '/usr/bin/python && sleep 0'
Using module file /home/runner/.local/lib/python3.8/site-packages/ansible/modules/command.py
<localhost> PUT /home/runner/.ansible/tmp/ansible-local-19e4s0vtb2/tmpcwi3y0dc TO /home/runner/.ansible/tmp/ansible-tmp-1631113040.4390213-25-28119246645044/AnsiballZ_command.py
<localhost> EXEC /bin/sh -c 'chmod u+x /home/runner/.ansible/tmp/ansible-tmp-1631113040.4390213-25-28119246645044/ /home/runner/.ansible/tmp/ansible-tmp-1631113040.4390213-25-28119246645044/AnsiballZ_command.py && sleep 0'
<localhost> EXEC /bin/sh -c '/usr/libexec/platform-python /home/runner/.ansible/tmp/ansible-tmp-1631113040.4390213-25-28119246645044/AnsiballZ_command.py && sleep 0'
<localhost> EXEC /bin/sh -c 'rm -f -r /home/runner/.ansible/tmp/ansible-tmp-1631113040.4390213-25-28119246645044/ > /dev/null 2>&1 && sleep 0'
changed: [localhost] => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/libexec/platform-python"
    },
    "changed": true,
    "cmd": [
        "pip",
        "--version"
    ],
    "delta": "0:00:00.544979",
    "end": "2021-09-08 14:57:21.286396",
    "invocation": {
        "module_args": {
            "_raw_params": "pip --version",
            "_uses_shell": false,
            "argv": null,
            "chdir": null,
            "creates": null,
            "executable": null,
            "removes": null,
            "stdin": null,
            "stdin_add_newline": true,
            "strip_empty_ends": true,
            "warn": false
        }
    },
    "rc": 0,
    "start": "2021-09-08 14:57:20.741417",
    "stderr": "",
    "stderr_lines": [],
    "stdout": "pip 21.2.2 from /usr/local/lib/python3.8/site-packages/pip (python 3.8)",
    "stdout_lines": [
        "pip 21.2.2 from /usr/local/lib/python3.8/site-packages/pip (python 3.8)"
    ]
}

TASK [Run pip] *****************************************************************
task path: /runner/project/install_upgrade/test.yml:16
<localhost> ESTABLISH LOCAL CONNECTION FOR USER: runner
<localhost> EXEC /bin/sh -c 'echo ~runner && sleep 0'
<localhost> EXEC /bin/sh -c '( umask 77 && mkdir -p "` echo /home/runner/.ansible/tmp `"&& mkdir "` echo /home/runner/.ansible/tmp/ansible-tmp-1631113041.4998996-49-230873664638068 `" && echo ansible-tmp-1631113041.4998996-49-230873664638068="` echo /home/runner/.ansible/tmp/ansible-tmp-1631113041.4998996-49-230873664638068 `" ) && sleep 0'
Using module file /home/runner/.local/lib/python3.8/site-packages/ansible/modules/command.py
<localhost> PUT /home/runner/.ansible/tmp/ansible-local-19e4s0vtb2/tmp7be8io3c TO /home/runner/.ansible/tmp/ansible-tmp-1631113041.4998996-49-230873664638068/AnsiballZ_command.py
<localhost> EXEC /bin/sh -c 'chmod u+x /home/runner/.ansible/tmp/ansible-tmp-1631113041.4998996-49-230873664638068/ /home/runner/.ansible/tmp/ansible-tmp-1631113041.4998996-49-230873664638068/AnsiballZ_command.py && sleep 0'
<localhost> EXEC /bin/sh -c '/usr/libexec/platform-python /home/runner/.ansible/tmp/ansible-tmp-1631113041.4998996-49-230873664638068/AnsiballZ_command.py && sleep 0'
<localhost> EXEC /bin/sh -c 'rm -f -r /home/runner/.ansible/tmp/ansible-tmp-1631113041.4998996-49-230873664638068/ > /dev/null 2>&1 && sleep 0'
changed: [localhost] => {
    "changed": true,
    "cmd": [
        "pip",
        "list",
        "-v"
    ],
    "delta": "0:00:00.888451",
    "end": "2021-09-08 14:57:22.549461",
    "invocation": {
        "module_args": {
            "_raw_params": "pip list -v",
            "_uses_shell": false,
            "argv": null,
            "chdir": null,
            "creates": null,
            "executable": null,
            "removes": null,
            "stdin": null,
            "stdin_add_newline": true,
            "strip_empty_ends": true,
            "warn": false
        }
    },
    "rc": 0,
    "start": "2021-09-08 14:57:21.661010",
    "stderr": "WARNING: You are using pip version 21.2.2; however, version 21.2.4 is available.\\nYou should consider upgrading via the '/usr/bin/python3 -m pip install --upgrade pip' command.",
    "stderr_lines": [
        "WARNING: You are using pip version 21.2.2; however, version 21.2.4 is available.",
        "You should consider upgrading via the '/usr/bin/python3 -m pip install --upgrade pip' command."
    ],
    "stdout": "Package                            Version            Location                                        Installer\\n---------------------------------- ------------------ ----------------------------------------------- ---------\\nadal                               1.2.7              /usr/local/lib/python3.8/site-packages          pip\\nansible                            4.5.0              /home/runner/.local/lib/python3.8/site-packages pip\\nansible-core                       2.11.4             /home/runner/.local/lib/python3.8/site-packages pip\\nansible-runner                     2.0.0.0a4.dev78    /usr/local/lib/python3.8/site-packages          pip\\nappdirs                            1.4.4              /usr/local/lib/python3.8/site-packages          pip\\napplicationinsights                0.11.10            /usr/local/lib/python3.8/site-packages          pip\\nara                                1.5.7              /home/runner/.local/lib/python3.8/site-packages\\nargcomplete                        1.12.3             /usr/local/lib/python3.8/site-packages          pip\\nasn1crypto                         1.2.0              /usr/lib/python3.8/site-packages\\nattrs                              21.2.0             /home/runner/.local/lib/python3.8/site-packages pip\\nawxkit                             19.2.2             /usr/local/lib/python3.8/site-packages          pip\\nazure-cli-core                     2.11.1             /usr/local/lib/python3.8/site-packages          pip\\nazure-cli-nspkg                    3.0.2              /usr/local/lib/python3.8/site-packages          pip\\nazure-cli-telemetry                1.0.6              /usr/local/lib/python3.8/site-packages          pip\\nazure-common                       1.1.11             /usr/local/lib/python3.8/site-packages          pip\\nazure-core                         1.16.0             /usr/local/lib/python3.8/site-packages          pip\\nazure-graphrbac                    0.61.1             /usr/local/lib/python3.8/site-packages          pip\\nazure-keyvault                     1.0.0a1            /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-apimanagement           0.2.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-authorization           0.51.1             /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-automation              0.1.1              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-batch                   5.0.1              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-cdn                     3.0.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-compute                 10.0.0             /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-containerinstance       1.4.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-containerregistry       2.0.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-containerservice        9.1.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-core                    1.2.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-cosmosdb                0.5.2              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-datalake-nspkg          2.0.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-datalake-store          0.5.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-devtestlabs             3.0.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-dns                     2.1.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-eventhub                2.0.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-hdinsight               0.1.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-iothub                  0.7.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-keyvault                1.1.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-loganalytics            1.0.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-managedservices         1.0.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-managementgroups        0.2.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-marketplaceordering     0.1.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-monitor                 0.5.2              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-network                 12.0.0             /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-notificationhubs        2.0.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-nspkg                   2.0.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-privatedns              0.1.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-rdbms                   1.9.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-recoveryservices        0.4.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-recoveryservicesbackup  0.6.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-redis                   5.0.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-resource                10.2.0             /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-search                  3.0.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-servicebus              0.5.3              /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-sql                     0.10.0             /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-storage                 11.1.0             /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-trafficmanager          0.50.0             /usr/local/lib/python3.8/site-packages          pip\\nazure-mgmt-web                     0.41.0             /usr/local/lib/python3.8/site-packages          pip\\nazure-nspkg                        2.0.0              /usr/local/lib/python3.8/site-packages          pip\\nazure-storage                      0.35.1             /usr/local/lib/python3.8/site-packages          pip\\nBabel                              2.7.0              /usr/lib/python3.8/site-packages\\nbcrypt                             3.2.0              /usr/local/lib64/python3.8/site-packages        pip\\nboto                               2.49.0             /usr/local/lib/python3.8/site-packages          pip\\nboto3                              1.18.14            /usr/local/lib/python3.8/site-packages          pip\\nbotocore                           1.21.14            /usr/local/lib/python3.8/site-packages          pip\\ncachetools                         4.2.2              /usr/local/lib/python3.8/site-packages          pip\\ncertifi                            2021.5.30          /usr/local/lib/python3.8/site-packages          pip\\ncffi                               1.13.2             /usr/lib64/python3.8/site-packages\\nchardet                            3.0.4              /usr/lib/python3.8/site-packages\\ncliff                              3.8.0              /home/runner/.local/lib/python3.8/site-packages pip\\ncloudant                           2.14.0             /home/runner/.local/lib/python3.8/site-packages\\ncmd2                               2.1.2              /home/runner/.local/lib/python3.8/site-packages pip\\ncolorama                           0.4.4              /usr/local/lib/python3.8/site-packages          pip\\ncryptography                       3.4.8              /home/runner/.local/lib/python3.8/site-packages pip\\ndebtcollector                      2.3.0              /home/runner/.local/lib/python3.8/site-packages pip\\ndecorator                          5.0.9              /usr/local/lib/python3.8/site-packages          pip\\ndocutils                           0.17.1             /usr/local/lib/python3.8/site-packages          pip\\ndogpile.cache                      1.1.3              /usr/local/lib/python3.8/site-packages          pip\\ndumb-init                          1.2.5              /usr/local/lib64/python3.8/site-packages        pip\\nfuture                             0.18.2             /home/runner/.local/lib/python3.8/site-packages pip\\ngoogle-auth                        1.34.0             /usr/local/lib/python3.8/site-packages          pip\\ngssapi                             1.6.14             /usr/local/lib64/python3.8/site-packages        pip\\nhumanfriendly                      8.2                /usr/local/lib/python3.8/site-packages          pip\\nidna                               2.8                /usr/lib/python3.8/site-packages\\ninfoblox-client                    0.5.0              /home/runner/.local/lib/python3.8/site-packages pip\\nipaddress                          1.0.23             /usr/local/lib/python3.8/site-packages          pip\\niso8601                            0.1.16             /usr/local/lib/python3.8/site-packages          pip\\nisodate                            0.6.0              /usr/local/lib/python3.8/site-packages          pip\\nJinja2                             2.10.3             /usr/lib/python3.8/site-packages\\njmespath                           0.10.0             /usr/local/lib/python3.8/site-packages          pip\\njsonpatch                          1.32               /usr/local/lib/python3.8/site-packages          pip\\njsonpointer                        2.1                /usr/local/lib/python3.8/site-packages          pip\\nkeystoneauth1                      4.3.1              /usr/local/lib/python3.8/site-packages          pip\\nknack                              0.7.2              /usr/local/lib/python3.8/site-packages          pip\\nkubernetes                         17.17.0            /usr/local/lib/python3.8/site-packages          pip\\nlockfile                           0.12.2             /usr/local/lib/python3.8/site-packages          pip\\nlxml                               4.4.1              /usr/lib64/python3.8/site-packages\\nMarkupSafe                         1.1.1              /usr/lib64/python3.8/site-packages\\nmsal                               1.0.0              /usr/local/lib/python3.8/site-packages          pip\\nmsal-extensions                    0.1.3              /usr/local/lib/python3.8/site-packages          pip\\nmsgpack                            1.0.2              /home/runner/.local/lib/python3.8/site-packages pip\\nmsrest                             0.6.21             /usr/local/lib/python3.8/site-packages          pip\\nmsrestazure                        0.6.4              /usr/local/lib/python3.8/site-packages          pip\\nmunch                              2.5.0              /usr/local/lib/python3.8/site-packages          pip\\nncclient                           0.6.12             /usr/local/lib/python3.8/site-packages          pip\\nnetaddr                            0.8.0              /home/runner/.local/lib/python3.8/site-packages pip\\nnetifaces                          0.11.0             /usr/local/lib64/python3.8/site-packages        pip\\nnsx-policy-python-sdk              3.0.3.0.0.17723277 /home/runner/.local/lib/python3.8/site-packages pip\\nnsx-python-sdk                     3.0.3.0.0.17723277 /home/runner/.local/lib/python3.8/site-packages pip\\nnsx-vmc-aws-integration-python-sdk 3.0.3.0.0.17723277 /home/runner/.local/lib/python3.8/site-packages pip\\nnsx-vmc-policy-python-sdk          3.0.3.0.0.17723277 /home/runner/.local/lib/python3.8/site-packages pip\\nntlm-auth                          1.5.0              /usr/local/lib/python3.8/site-packages          pip\\noauthlib                           3.1.1              /usr/local/lib/python3.8/site-packages          pip\\nomsdk                              1.2.478            /home/runner/.local/lib/python3.8/site-packages pip\\nopenstacksdk                       0.58.0             /usr/local/lib/python3.8/site-packages          pip\\nos-service-types                   1.7.0              /usr/local/lib/python3.8/site-packages          pip\\noslo.config                        8.7.1              /home/runner/.local/lib/python3.8/site-packages pip\\noslo.context                       3.3.1              /home/runner/.local/lib/python3.8/site-packages pip\\noslo.i18n                          5.1.0              /home/runner/.local/lib/python3.8/site-packages pip\\noslo.log                           4.6.0              /home/runner/.local/lib/python3.8/site-packages pip\\noslo.serialization                 4.2.0              /home/runner/.local/lib/python3.8/site-packages pip\\noslo.utils                         4.10.0             /home/runner/.local/lib/python3.8/site-packages pip\\novirt-engine-sdk-python            4.4.14             /usr/local/lib64/python3.8/site-packages        pip\\npackaging                          21.0               /usr/local/lib/python3.8/site-packages          pip\\nparamiko                           2.7.2              /usr/local/lib/python3.8/site-packages          pip\\npbr                                5.6.0              /usr/local/lib/python3.8/site-packages          pip\\npexpect                            4.8.0              /usr/local/lib/python3.8/site-packages          pip\\npip                                21.2.2             /usr/local/lib/python3.8/site-packages          pip\\npkginfo                            1.7.1              /usr/local/lib/python3.8/site-packages          pip\\nply                                3.11               /usr/lib/python3.8/site-packages\\nportalocker                        1.7.1              /usr/local/lib/python3.8/site-packages          pip\\nprettytable                        2.1.0              /home/runner/.local/lib/python3.8/site-packages pip\\npsutil                             5.8.0              /home/runner/.local/lib/python3.8/site-packages pip\\nptyprocess                         0.7.0              /usr/local/lib/python3.8/site-packages          pip\\npyasn1                             0.4.8              /usr/local/lib/python3.8/site-packages          pip\\npyasn1-modules                     0.2.8              /usr/local/lib/python3.8/site-packages          pip\\npycparser                          2.19               /usr/lib/python3.8/site-packages\\npycryptodomex                      3.10.1             /home/runner/.local/lib/python3.8/site-packages pip\\npycurl                             7.43.0.6           /usr/local/lib64/python3.8/site-packages        pip\\nPygments                           2.9.0              /usr/local/lib/python3.8/site-packages          pip\\npyinotify                          0.9.6              /home/runner/.local/lib/python3.8/site-packages pip\\nPyJWT                              1.7.1              /usr/local/lib/python3.8/site-packages          pip\\npykerberos                         1.2.1              /usr/local/lib64/python3.8/site-packages        pip\\nPyNaCl                             1.4.0              /usr/local/lib64/python3.8/site-packages        pip\\npyOpenSSL                          19.1.0             /usr/local/lib/python3.8/site-packages          pip\\npyparsing                          2.4.7              /usr/local/lib/python3.8/site-packages          pip\\npyperclip                          1.8.2              /home/runner/.local/lib/python3.8/site-packages\\npypsrp                             0.5.0              /usr/local/lib/python3.8/site-packages          pip\\npysmi                              0.3.4              /home/runner/.local/lib/python3.8/site-packages pip\\npysnmp                             4.4.12             /home/runner/.local/lib/python3.8/site-packages pip\\npysnmp-mibs                        0.1.6              /home/runner/.local/lib/python3.8/site-packages pip\\nPySocks                            1.7.1              /usr/lib/python3.8/site-packages\\npyspnego                           0.1.6              /usr/local/lib/python3.8/site-packages          pip\\npython-daemon                      2.3.0              /usr/local/lib/python3.8/site-packages          pip\\npython-dateutil                    2.8.2              /usr/local/lib/python3.8/site-packages          pip\\npython-gitlab                      2.10.0             /home/runner/.local/lib/python3.8/site-packages pip\\npytz                               2019.3             /usr/lib/python3.8/site-packages\\npyvmomi                            7.0.2              /usr/local/lib/python3.8/site-packages          pip\\npywinrm                            0.4.2              /usr/local/lib/python3.8/site-packages          pip\\nPyYAML                             5.4.1              /usr/lib64/python3.8/site-packages\\nrequests                           2.22.0             /usr/lib/python3.8/site-packages\\nrequests-credssp                   1.2.0              /usr/local/lib/python3.8/site-packages          pip\\nrequests-ntlm                      1.1.0              /usr/local/lib/python3.8/site-packages          pip\\nrequests-oauthlib                  1.3.0              /usr/local/lib/python3.8/site-packages          pip\\nrequests-toolbelt                  0.9.1              /home/runner/.local/lib/python3.8/site-packages pip\\nrequestsexceptions                 1.4.0              /usr/local/lib/python3.8/site-packages          pip\\nresolvelib                         0.5.4              /usr/local/lib/python3.8/site-packages          pip\\nrfc3986                            1.5.0              /home/runner/.local/lib/python3.8/site-packages pip\\nrsa                                4.7.2              /usr/local/lib/python3.8/site-packages          pip\\ns3transfer                         0.5.0              /usr/local/lib/python3.8/site-packages          pip\\nsemantic-version                   2.8.5              /home/runner/.local/lib/python3.8/site-packages pip\\nsetuptools                         58.0.3             /home/runner/.local/lib/python3.8/site-packages pip\\nsetuptools-rust                    0.12.1             /home/runner/.local/lib/python3.8/site-packages pip\\nsix                                1.12.0             /usr/lib/python3.8/site-packages                pip\\nstevedore                          3.3.0              /usr/local/lib/python3.8/site-packages          pip\\nsuds-jurko                         0.6                /usr/local/lib/python3.8/site-packages          pip\\ntabulate                           0.8.9              /usr/local/lib/python3.8/site-packages          pip\\ntoml                               0.10.2             /usr/local/lib/python3.8/site-packages          pip\\nurllib3                            1.25.7             /usr/lib/python3.8/site-packages\\nvapi-client-bindings               3.6.0              /home/runner/.local/lib/python3.8/site-packages pip\\nvapi-common-client                 2.25.0             /home/runner/.local/lib/python3.8/site-packages pip\\nvapi-runtime                       2.25.0             /home/runner/.local/lib/python3.8/site-packages pip\\nvmc-client-bindings                1.40.0             /home/runner/.local/lib/python3.8/site-packages pip\\nvmc-draas-client-bindings          1.17.0             /home/runner/.local/lib/python3.8/site-packages pip\\nvSphere-Automation-SDK             1.56.0             /home/runner/.local/lib/python3.8/site-packages pip\\nwcwidth                            0.2.5              /home/runner/.local/lib/python3.8/site-packages pip\\nwebsocket-client                   1.1.0              /usr/local/lib/python3.8/site-packages          pip\\nwheel                              0.37.0             /home/runner/.local/lib/python3.8/site-packages pip\\nwrapt                              1.12.1             /home/runner/.local/lib/python3.8/site-packages pip\\nxmltodict                          0.12.0             /usr/local/lib/python3.8/site-packages          pip",
    "stdout_lines": [
        "Package                            Version            Location                                        Installer",
        "---------------------------------- ------------------ ----------------------------------------------- ---------",
        "adal                               1.2.7              /usr/local/lib/python3.8/site-packages          pip",
        "ansible                            4.5.0              /home/runner/.local/lib/python3.8/site-packages pip",
        "ansible-core                       2.11.4             /home/runner/.local/lib/python3.8/site-packages pip",
        "ansible-runner                     2.0.0.0a4.dev78    /usr/local/lib/python3.8/site-packages          pip",
        "appdirs                            1.4.4              /usr/local/lib/python3.8/site-packages          pip",
        "applicationinsights                0.11.10            /usr/local/lib/python3.8/site-packages          pip",
        "ara                                1.5.7              /home/runner/.local/lib/python3.8/site-packages",
        "argcomplete                        1.12.3             /usr/local/lib/python3.8/site-packages          pip",
        "asn1crypto                         1.2.0              /usr/lib/python3.8/site-packages",
        "attrs                              21.2.0             /home/runner/.local/lib/python3.8/site-packages pip",
        "awxkit                             19.2.2             /usr/local/lib/python3.8/site-packages          pip",
        "azure-cli-core                     2.11.1             /usr/local/lib/python3.8/site-packages          pip",
        "azure-cli-nspkg                    3.0.2              /usr/local/lib/python3.8/site-packages          pip",
        "azure-cli-telemetry                1.0.6              /usr/local/lib/python3.8/site-packages          pip",
        "azure-common                       1.1.11             /usr/local/lib/python3.8/site-packages          pip",
        "azure-core                         1.16.0             /usr/local/lib/python3.8/site-packages          pip",
        "azure-graphrbac                    0.61.1             /usr/local/lib/python3.8/site-packages          pip",
        "azure-keyvault                     1.0.0a1            /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-apimanagement           0.2.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-authorization           0.51.1             /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-automation              0.1.1              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-batch                   5.0.1              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-cdn                     3.0.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-compute                 10.0.0             /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-containerinstance       1.4.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-containerregistry       2.0.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-containerservice        9.1.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-core                    1.2.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-cosmosdb                0.5.2              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-datalake-nspkg          2.0.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-datalake-store          0.5.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-devtestlabs             3.0.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-dns                     2.1.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-eventhub                2.0.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-hdinsight               0.1.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-iothub                  0.7.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-keyvault                1.1.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-loganalytics            1.0.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-managedservices         1.0.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-managementgroups        0.2.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-marketplaceordering     0.1.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-monitor                 0.5.2              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-network                 12.0.0             /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-notificationhubs        2.0.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-nspkg                   2.0.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-privatedns              0.1.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-rdbms                   1.9.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-recoveryservices        0.4.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-recoveryservicesbackup  0.6.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-redis                   5.0.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-resource                10.2.0             /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-search                  3.0.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-servicebus              0.5.3              /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-sql                     0.10.0             /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-storage                 11.1.0             /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-trafficmanager          0.50.0             /usr/local/lib/python3.8/site-packages          pip",
        "azure-mgmt-web                     0.41.0             /usr/local/lib/python3.8/site-packages          pip",
        "azure-nspkg                        2.0.0              /usr/local/lib/python3.8/site-packages          pip",
        "azure-storage                      0.35.1             /usr/local/lib/python3.8/site-packages          pip",
        "Babel                              2.7.0              /usr/lib/python3.8/site-packages",
        "bcrypt                             3.2.0              /usr/local/lib64/python3.8/site-packages        pip",
        "boto                               2.49.0             /usr/local/lib/python3.8/site-packages          pip",
        "boto3                              1.18.14            /usr/local/lib/python3.8/site-packages          pip",
        "botocore                           1.21.14            /usr/local/lib/python3.8/site-packages          pip",
        "cachetools                         4.2.2              /usr/local/lib/python3.8/site-packages          pip",
        "certifi                            2021.5.30          /usr/local/lib/python3.8/site-packages          pip",
        "cffi                               1.13.2             /usr/lib64/python3.8/site-packages",
        "chardet                            3.0.4              /usr/lib/python3.8/site-packages",
        "cliff                              3.8.0              /home/runner/.local/lib/python3.8/site-packages pip",
        "cloudant                           2.14.0             /home/runner/.local/lib/python3.8/site-packages",
        "cmd2                               2.1.2              /home/runner/.local/lib/python3.8/site-packages pip",
        "colorama                           0.4.4              /usr/local/lib/python3.8/site-packages          pip",
        "cryptography                       3.4.8              /home/runner/.local/lib/python3.8/site-packages pip",
        "debtcollector                      2.3.0              /home/runner/.local/lib/python3.8/site-packages pip",
        "decorator                          5.0.9              /usr/local/lib/python3.8/site-packages          pip",
        "docutils                           0.17.1             /usr/local/lib/python3.8/site-packages          pip",
        "dogpile.cache                      1.1.3              /usr/local/lib/python3.8/site-packages          pip",
        "dumb-init                          1.2.5              /usr/local/lib64/python3.8/site-packages        pip",
        "future                             0.18.2             /home/runner/.local/lib/python3.8/site-packages pip",
        "google-auth                        1.34.0             /usr/local/lib/python3.8/site-packages          pip",
        "gssapi                             1.6.14             /usr/local/lib64/python3.8/site-packages        pip",
        "humanfriendly                      8.2                /usr/local/lib/python3.8/site-packages          pip",
        "idna                               2.8                /usr/lib/python3.8/site-packages",
        "infoblox-client                    0.5.0              /home/runner/.local/lib/python3.8/site-packages pip",
        "ipaddress                          1.0.23             /usr/local/lib/python3.8/site-packages          pip",
        "iso8601                            0.1.16             /usr/local/lib/python3.8/site-packages          pip",
        "isodate                            0.6.0              /usr/local/lib/python3.8/site-packages          pip",
        "Jinja2                             2.10.3             /usr/lib/python3.8/site-packages",
        "jmespath                           0.10.0             /usr/local/lib/python3.8/site-packages          pip",
        "jsonpatch                          1.32               /usr/local/lib/python3.8/site-packages          pip",
        "jsonpointer                        2.1                /usr/local/lib/python3.8/site-packages          pip",
        "keystoneauth1                      4.3.1              /usr/local/lib/python3.8/site-packages          pip",
        "knack                              0.7.2              /usr/local/lib/python3.8/site-packages          pip",
        "kubernetes                         17.17.0            /usr/local/lib/python3.8/site-packages          pip",
        "lockfile                           0.12.2             /usr/local/lib/python3.8/site-packages          pip",
        "lxml                               4.4.1              /usr/lib64/python3.8/site-packages",
        "MarkupSafe                         1.1.1              /usr/lib64/python3.8/site-packages",
        "msal                               1.0.0              /usr/local/lib/python3.8/site-packages          pip",
        "msal-extensions                    0.1.3              /usr/local/lib/python3.8/site-packages          pip",
        "msgpack                            1.0.2              /home/runner/.local/lib/python3.8/site-packages pip",
        "msrest                             0.6.21             /usr/local/lib/python3.8/site-packages          pip",
        "msrestazure                        0.6.4              /usr/local/lib/python3.8/site-packages          pip",
        "munch                              2.5.0              /usr/local/lib/python3.8/site-packages          pip",
        "ncclient                           0.6.12             /usr/local/lib/python3.8/site-packages          pip",
        "netaddr                            0.8.0              /home/runner/.local/lib/python3.8/site-packages pip",
        "netifaces                          0.11.0             /usr/local/lib64/python3.8/site-packages        pip",
        "nsx-policy-python-sdk              3.0.3.0.0.17723277 /home/runner/.local/lib/python3.8/site-packages pip",
        "nsx-python-sdk                     3.0.3.0.0.17723277 /home/runner/.local/lib/python3.8/site-packages pip",
        "nsx-vmc-aws-integration-python-sdk 3.0.3.0.0.17723277 /home/runner/.local/lib/python3.8/site-packages pip",
        "nsx-vmc-policy-python-sdk          3.0.3.0.0.17723277 /home/runner/.local/lib/python3.8/site-packages pip",
        "ntlm-auth                          1.5.0              /usr/local/lib/python3.8/site-packages          pip",
        "oauthlib                           3.1.1              /usr/local/lib/python3.8/site-packages          pip",
        "omsdk                              1.2.478            /home/runner/.local/lib/python3.8/site-packages pip",
        "openstacksdk                       0.58.0             /usr/local/lib/python3.8/site-packages          pip",
        "os-service-types                   1.7.0              /usr/local/lib/python3.8/site-packages          pip",
        "oslo.config                        8.7.1              /home/runner/.local/lib/python3.8/site-packages pip",
        "oslo.context                       3.3.1              /home/runner/.local/lib/python3.8/site-packages pip",
        "oslo.i18n                          5.1.0              /home/runner/.local/lib/python3.8/site-packages pip",
        "oslo.log                           4.6.0              /home/runner/.local/lib/python3.8/site-packages pip",
        "oslo.serialization                 4.2.0              /home/runner/.local/lib/python3.8/site-packages pip",
        "oslo.utils                         4.10.0             /home/runner/.local/lib/python3.8/site-packages pip",
        "ovirt-engine-sdk-python            4.4.14             /usr/local/lib64/python3.8/site-packages        pip",
        "packaging                          21.0               /usr/local/lib/python3.8/site-packages          pip",
        "paramiko                           2.7.2              /usr/local/lib/python3.8/site-packages          pip",
        "pbr                                5.6.0              /usr/local/lib/python3.8/site-packages          pip",
        "pexpect                            4.8.0              /usr/local/lib/python3.8/site-packages          pip",
        "pip                                21.2.2             /usr/local/lib/python3.8/site-packages          pip",
        "pkginfo                            1.7.1              /usr/local/lib/python3.8/site-packages          pip",
        "ply                                3.11               /usr/lib/python3.8/site-packages",
        "portalocker                        1.7.1              /usr/local/lib/python3.8/site-packages          pip",
        "prettytable                        2.1.0              /home/runner/.local/lib/python3.8/site-packages pip",
        "psutil                             5.8.0              /home/runner/.local/lib/python3.8/site-packages pip",
        "ptyprocess                         0.7.0              /usr/local/lib/python3.8/site-packages          pip",
        "pyasn1                             0.4.8              /usr/local/lib/python3.8/site-packages          pip",
        "pyasn1-modules                     0.2.8              /usr/local/lib/python3.8/site-packages          pip",
        "pycparser                          2.19               /usr/lib/python3.8/site-packages",
        "pycryptodomex                      3.10.1             /home/runner/.local/lib/python3.8/site-packages pip",
        "pycurl                             7.43.0.6           /usr/local/lib64/python3.8/site-packages        pip",
        "Pygments                           2.9.0              /usr/local/lib/python3.8/site-packages          pip",
        "pyinotify                          0.9.6              /home/runner/.local/lib/python3.8/site-packages pip",
        "PyJWT                              1.7.1              /usr/local/lib/python3.8/site-packages          pip",
        "pykerberos                         1.2.1              /usr/local/lib64/python3.8/site-packages        pip",
        "PyNaCl                             1.4.0              /usr/local/lib64/python3.8/site-packages        pip",
        "pyOpenSSL                          19.1.0             /usr/local/lib/python3.8/site-packages          pip",
        "pyparsing                          2.4.7              /usr/local/lib/python3.8/site-packages          pip",
        "pyperclip                          1.8.2              /home/runner/.local/lib/python3.8/site-packages",
        "pypsrp                             0.5.0              /usr/local/lib/python3.8/site-packages          pip",
        "pysmi                              0.3.4              /home/runner/.local/lib/python3.8/site-packages pip",
        "pysnmp                             4.4.12             /home/runner/.local/lib/python3.8/site-packages pip",
        "pysnmp-mibs                        0.1.6              /home/runner/.local/lib/python3.8/site-packages pip",
        "PySocks                            1.7.1              /usr/lib/python3.8/site-packages",
        "pyspnego                           0.1.6              /usr/local/lib/python3.8/site-packages          pip",
        "python-daemon                      2.3.0              /usr/local/lib/python3.8/site-packages          pip",
        "python-dateutil                    2.8.2              /usr/local/lib/python3.8/site-packages          pip",
        "python-gitlab                      2.10.0             /home/runner/.local/lib/python3.8/site-packages pip",
        "pytz                               2019.3             /usr/lib/python3.8/site-packages",
        "pyvmomi                            7.0.2              /usr/local/lib/python3.8/site-packages          pip",
        "pywinrm                            0.4.2              /usr/local/lib/python3.8/site-packages          pip",
        "PyYAML                             5.4.1              /usr/lib64/python3.8/site-packages",
        "requests                           2.22.0             /usr/lib/python3.8/site-packages",
        "requests-credssp                   1.2.0              /usr/local/lib/python3.8/site-packages          pip",
        "requests-ntlm                      1.1.0              /usr/local/lib/python3.8/site-packages          pip",
        "requests-oauthlib                  1.3.0              /usr/local/lib/python3.8/site-packages          pip",
        "requests-toolbelt                  0.9.1              /home/runner/.local/lib/python3.8/site-packages pip",
        "requestsexceptions                 1.4.0              /usr/local/lib/python3.8/site-packages          pip",
        "resolvelib                         0.5.4              /usr/local/lib/python3.8/site-packages          pip",
        "rfc3986                            1.5.0              /home/runner/.local/lib/python3.8/site-packages pip",
        "rsa                                4.7.2              /usr/local/lib/python3.8/site-packages          pip",
        "s3transfer                         0.5.0              /usr/local/lib/python3.8/site-packages          pip",
        "semantic-version                   2.8.5              /home/runner/.local/lib/python3.8/site-packages pip",
        "setuptools                         58.0.3             /home/runner/.local/lib/python3.8/site-packages pip",
        "setuptools-rust                    0.12.1             /home/runner/.local/lib/python3.8/site-packages pip",
        "six                                1.12.0             /usr/lib/python3.8/site-packages                pip",
        "stevedore                          3.3.0              /usr/local/lib/python3.8/site-packages          pip",
        "suds-jurko                         0.6                /usr/local/lib/python3.8/site-packages          pip",
        "tabulate                           0.8.9              /usr/local/lib/python3.8/site-packages          pip",
        "toml                               0.10.2             /usr/local/lib/python3.8/site-packages          pip",
        "urllib3                            1.25.7             /usr/lib/python3.8/site-packages",
        "vapi-client-bindings               3.6.0              /home/runner/.local/lib/python3.8/site-packages pip",
        "vapi-common-client                 2.25.0             /home/runner/.local/lib/python3.8/site-packages pip",
        "vapi-runtime                       2.25.0             /home/runner/.local/lib/python3.8/site-packages pip",
        "vmc-client-bindings                1.40.0             /home/runner/.local/lib/python3.8/site-packages pip",
        "vmc-draas-client-bindings          1.17.0             /home/runner/.local/lib/python3.8/site-packages pip",
        "vSphere-Automation-SDK             1.56.0             /home/runner/.local/lib/python3.8/site-packages pip",
        "wcwidth                            0.2.5              /home/runner/.local/lib/python3.8/site-packages pip",
        "websocket-client                   1.1.0              /usr/local/lib/python3.8/site-packages          pip",
        "wheel                              0.37.0             /home/runner/.local/lib/python3.8/site-packages pip",
        "wrapt                              1.12.1             /home/runner/.local/lib/python3.8/site-packages pip",
        "xmltodict                          0.12.0             /usr/local/lib/python3.8/site-packages          pip"
    ]
}

Template Run with dellemc.openmanage.idrac_system_info fails with ImportError: Dell EMC OMSDK library is required for this module.

ansible-playbook [core 2.11.4] 
  config file = /runner/project/ansible.cfg
  configured module search path = ['/home/runner/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /home/runner/.local/lib/python3.8/site-packages/ansible
  ansible collection location = /runner/requirements_collections:/home/runner/.ansible/collections:/usr/share/ansible/collections
  executable location = /usr/local/bin/ansible-playbook
  python version = 3.8.6 (default, Jan 29 2021, 17:38:16) [GCC 8.4.1 20200928 (Red Hat 8.4.1-1)]
  jinja version = 2.10.3
  libyaml = True
Using /runner/project/ansible.cfg as config file
Vault password: 
host_list declined parsing /runner/inventory/hosts as it did not pass its verify_file() method
Parsed /runner/inventory/hosts inventory source with script plugin
Skipping callback 'awx_display', as we already have a stdout callback.
Skipping callback 'default', as we already have a stdout callback.
Skipping callback 'minimal', as we already have a stdout callback.
Skipping callback 'oneline', as we already have a stdout callback.

PLAYBOOK: run_install.yml ******************************************************
2 plays in install_upgrade/run_install.yml
Read vars_file 'vars/defaults.yml'
Read vars_file 'vars/vars.yml'
Read vars_file 'vars/defaults.yml'
Read vars_file 'vars/vars.yml'
Read vars_file 'vars/defaults.yml'
Read vars_file 'vars/vars.yml'

PLAY [Gather infos for ESXi installation on Dell hosts] ************************
Read vars_file 'vars/defaults.yml'
Read vars_file 'vars/vars.yml'
Read vars_file 'vars/defaults.yml'
Read vars_file 'vars/vars.yml'
META: ran handlers
Read vars_file 'vars/defaults.yml'
Read vars_file 'vars/vars.yml'

TASK [Check if iDrac is reachable on port 443] *********************************
task path: /runner/project/install_upgrade/run_install.yml:64
<10.63.22.153> ESTABLISH LOCAL CONNECTION FOR USER: runner
<10.63.22.153> EXEC /bin/sh -c 'echo ~runner && sleep 0'
<10.63.22.153> EXEC /bin/sh -c '( umask 77 && mkdir -p "` echo /home/runner/.ansible/tmp `"&& mkdir "` echo /home/runner/.ansible/tmp/ansible-tmp-1631112865.8568633-35-30366731770310 `" && echo ansible-tmp-1631112865.8568633-35-30366731770310="` echo /home/runner/.ansible/tmp/ansible-tmp-1631112865.8568633-35-30366731770310 `" ) && sleep 0'
<ebdnoph220> Attempting python interpreter discovery
<10.63.22.153> EXEC /bin/sh -c 'echo PLATFORM; uname; echo FOUND; command -v '"'"'/usr/bin/python'"'"'; command -v '"'"'python3.9'"'"'; command -v '"'"'python3.8'"'"'; command -v '"'"'python3.7'"'"'; command -v '"'"'python3.6'"'"'; command -v '"'"'python3.5'"'"'; command -v '"'"'python2.7'"'"'; command -v '"'"'python2.6'"'"'; command -v '"'"'/usr/libexec/platform-python'"'"'; command -v '"'"'/usr/bin/python3'"'"'; command -v '"'"'python'"'"'; echo ENDFOUND && sleep 0'
<10.63.22.153> EXEC /bin/sh -c '/usr/bin/python && sleep 0'
Using module file /home/runner/.local/lib/python3.8/site-packages/ansible/modules/wait_for.py
<10.63.22.153> PUT /home/runner/.ansible/tmp/ansible-local-19d5i3bqn5/tmpg32u4mvc TO /home/runner/.ansible/tmp/ansible-tmp-1631112865.8568633-35-30366731770310/AnsiballZ_wait_for.py
<10.63.22.153> EXEC /bin/sh -c 'chmod u+x /home/runner/.ansible/tmp/ansible-tmp-1631112865.8568633-35-30366731770310/ /home/runner/.ansible/tmp/ansible-tmp-1631112865.8568633-35-30366731770310/AnsiballZ_wait_for.py && sleep 0'
<10.63.22.153> EXEC /bin/sh -c '/usr/libexec/platform-python /home/runner/.ansible/tmp/ansible-tmp-1631112865.8568633-35-30366731770310/AnsiballZ_wait_for.py && sleep 0'
<10.63.22.153> EXEC /bin/sh -c 'rm -f -r /home/runner/.ansible/tmp/ansible-tmp-1631112865.8568633-35-30366731770310/ > /dev/null 2>&1 && sleep 0'
ok: [ebdnoph220] => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/libexec/platform-python"
    },
    "changed": false,
    "elapsed": 0,
    "invocation": {
        "module_args": {
            "active_connection_states": [
                "ESTABLISHED",
                "FIN_WAIT1",
                "FIN_WAIT2",
                "SYN_RECV",
                "SYN_SENT",
                "TIME_WAIT"
            ],
            "connect_timeout": 1,
            "delay": 0,
            "exclude_hosts": null,
            "host": "10.63.22.153",
            "msg": null,
            "path": null,
            "port": 443,
            "search_regex": null,
            "sleep": 0,
            "state": "started",
            "timeout": 1
        }
    },
    "match_groupdict": {},
    "match_groups": [],
    "path": null,
    "port": 443,
    "search_regex": null,
    "state": "started"
}
Read vars_file 'vars/defaults.yml'
Read vars_file 'vars/vars.yml'

TASK [Get system info from iDrac] **********************************************
task path: /runner/project/install_upgrade/run_install.yml:75
<10.63.22.153> ESTABLISH LOCAL CONNECTION FOR USER: runner
<10.63.22.153> EXEC /bin/sh -c 'echo ~runner && sleep 0'
<10.63.22.153> EXEC /bin/sh -c '( umask 77 && mkdir -p "` echo /home/runner/.ansible/tmp `"&& mkdir "` echo /home/runner/.ansible/tmp/ansible-tmp-1631112866.414142-56-76451108197164 `" && echo ansible-tmp-1631112866.414142-56-76451108197164="` echo /home/runner/.ansible/tmp/ansible-tmp-1631112866.414142-56-76451108197164 `" ) && sleep 0'
Using module file /home/runner/.ansible/collections/ansible_collections/dellemc/openmanage/plugins/modules/idrac_system_info.py
<10.63.22.153> PUT /home/runner/.ansible/tmp/ansible-local-19d5i3bqn5/tmp8fiv2oup TO /home/runner/.ansible/tmp/ansible-tmp-1631112866.414142-56-76451108197164/AnsiballZ_idrac_system_info.py
<10.63.22.153> EXEC /bin/sh -c 'chmod u+x /home/runner/.ansible/tmp/ansible-tmp-1631112866.414142-56-76451108197164/ /home/runner/.ansible/tmp/ansible-tmp-1631112866.414142-56-76451108197164/AnsiballZ_idrac_system_info.py && sleep 0'
<10.63.22.153> EXEC /bin/sh -c '/usr/libexec/platform-python /home/runner/.ansible/tmp/ansible-tmp-1631112866.414142-56-76451108197164/AnsiballZ_idrac_system_info.py && sleep 0'
<10.63.22.153> EXEC /bin/sh -c 'rm -f -r /home/runner/.ansible/tmp/ansible-tmp-1631112866.414142-56-76451108197164/ > /dev/null 2>&1 && sleep 0'
The full traceback is:
Traceback (most recent call last):
  File "/home/runner/.ansible/tmp/ansible-tmp-1631112866.414142-56-76451108197164/AnsiballZ_idrac_system_info.py", line 100, in <module>
    _ansiballz_main()
  File "/home/runner/.ansible/tmp/ansible-tmp-1631112866.414142-56-76451108197164/AnsiballZ_idrac_system_info.py", line 92, in _ansiballz_main
    invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)
  File "/home/runner/.ansible/tmp/ansible-tmp-1631112866.414142-56-76451108197164/AnsiballZ_idrac_system_info.py", line 41, in invoke_module
    run_name='__main__', alter_sys=True)
  File "/usr/lib64/python3.6/runpy.py", line 205, in run_module
    return _run_module_code(code, init_globals, run_name, mod_spec)
  File "/usr/lib64/python3.6/runpy.py", line 96, in _run_module_code
    mod_name, mod_spec, pkg_name, script_name)
  File "/usr/lib64/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmp/ansible_dellemc.openmanage.idrac_system_info_payload_7mpbqh5y/ansible_dellemc.openmanage.idrac_system_info_payload.zip/ansible_collections/dellemc/openmanage/plugins/modules/idrac_system_info.py", line 123, in <module>
  File "/tmp/ansible_dellemc.openmanage.idrac_system_info_payload_7mpbqh5y/ansible_dellemc.openmanage.idrac_system_info_payload.zip/ansible_collections/dellemc/openmanage/plugins/modules/idrac_system_info.py", line 108, in main
  File "/tmp/ansible_dellemc.openmanage.idrac_system_info_payload_7mpbqh5y/ansible_dellemc.openmanage.idrac_system_info_payload.zip/ansible_collections/dellemc/openmanage/plugins/module_utils/dellemc_idrac.py", line 47, in __init__
ImportError: Dell EMC OMSDK library is required for this module
fatal: [ebdnoph220]: FAILED! => {
    "changed": false,
    "module_stderr": "Traceback (most recent call last):\\n  File \\"/home/runner/.ansible/tmp/ansible-tmp-1631112866.414142-56-76451108197164/AnsiballZ_idrac_system_info.py\\", line 100, in <module>\\n    _ansiballz_main()\\n  File \\"/home/runner/.ansible/tmp/ansible-tmp-1631112866.414142-56-76451108197164/AnsiballZ_idrac_system_info.py\\", line 92, in _ansiballz_main\\n    invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)\\n  File \\"/home/runner/.ansible/tmp/ansible-tmp-1631112866.414142-56-76451108197164/AnsiballZ_idrac_system_info.py\\", line 41, in invoke_module\\n    run_name='__main__', alter_sys=True)\\n  File \\"/usr/lib64/python3.6/runpy.py\\", line 205, in run_module\\n    return _run_module_code(code, init_globals, run_name, mod_spec)\\n  File \\"/usr/lib64/python3.6/runpy.py\\", line 96, in _run_module_code\\n    mod_name, mod_spec, pkg_name, script_name)\\n  File \\"/usr/lib64/python3.6/runpy.py\\", line 85, in _run_code\\n    exec(code, run_globals)\\n  File \\"/tmp/ansible_dellemc.openmanage.idrac_system_info_payload_7mpbqh5y/ansible_dellemc.openmanage.idrac_system_info_payload.zip/ansible_collections/dellemc/openmanage/plugins/modules/idrac_system_info.py\\", line 123, in <module>\\n  File \\"/tmp/ansible_dellemc.openmanage.idrac_system_info_payload_7mpbqh5y/ansible_dellemc.openmanage.idrac_system_info_payload.zip/ansible_collections/dellemc/openmanage/plugins/modules/idrac_system_info.py\\", line 108, in main\\n  File \\"/tmp/ansible_dellemc.openmanage.idrac_system_info_payload_7mpbqh5y/ansible_dellemc.openmanage.idrac_system_info_payload.zip/ansible_collections/dellemc/openmanage/plugins/module_utils/dellemc_idrac.py\\", line 47, in __init__\\nImportError: Dell EMC OMSDK library is required for this module\\n",
    "module_stdout": "",
    "msg": "MODULE FAILURE\\nSee stdout/stderr for the exact error",
    "rc": 1
}
vzovko commented 3 years ago

The issue in AWX is resolved. I had to add the following to the localhost inventory object in AWX.

ansible_connection: local
ansible_python_interpreter: '{{ ansible_playbook_python }}'
Mixer9 commented 2 years ago

I fixed this error by simply adding delegate_to: localhost to my playbook task to update the iDRAC firmware.