ansible-runner icon indicating copy to clipboard operation
ansible-runner copied to clipboard

Refactoring interface common routines

Open matburt opened this issue 3 years ago • 1 comments

This should also fix up direct role execution when run from the command line using an execution environment.

Still need to sort out some tests and make sure the cli entrypoint is doing the right thing in all circumstances.

matburt avatar May 19 '22 23:05 matburt

I tested in conjunction with AWX / AAP controller, and normal jobs error with this from the worker:

{'private_data_dir': '/tmp/awx_91_2oshmw_9', 'ident': UUID('91c14a59-dd60-4e57-b589-cc430806c44b'), 'binary': None, 'playbook': None, 'module': None, 'module_args': None, 'host_pattern': None, 'verbosity': None, 'quiet': False, 'rotate_artifacts': 0, 'ignore_logging': False, 'json_mode': False, 'omit_event_data': False, 'only_failed_event_data': False, 'inventory': None, 'forks': None, 'project_dir': None, 'artifact_dir': None, 'role': None, 'roles_path': None, 'process_isolation': None, 'process_isolation_executable': None, 'process_isolation_path': None, 'process_isolation_hide_paths': None, 'process_isolation_show_paths': None, 'process_isolation_ro_paths': None, 'container_image': None, 'container_volume_mounts': None, 'container_options': None, 'directory_isolation_base_path': None, 'cmdline': None, 'limit': None, 'streamer': 'worker', 'suppress_env_files': False}
{"status": "starting", "runner_ident": "91", "command": ["podman", "run", "--rm", "--tty", "--interactive", "--workdir", "/runner/project", "-v", "/tmp/awx_91_2oshmw_9/:/runner/:Z", "-v", "/tmp/ansible_runner_plugins_ztvw3gwc/callback/:/home/runner/.ansible/plugins/callback/:Z", "--authfile=/tmp/ansible_runner_registry_91_sk4ys67n/auth.json", "-v", "/etc/pki/ca-trust/:/etc/pki/ca-trust/:O", "-v", "/opt/tmpawx/:/opt/tmpawx/:z", "-v", "/usr/share/pki/:/usr/share/pki/:O", "-v", "/var/lib/awx/projects/_80__project_texthat/:/var/lib/awx/projects/_80__project_texthat/:z", "-v", "/var/lib/awx/projects/.__awx_cache/_80__project_texthat/:/var/lib/awx/projects/.__awx_cache/_80__project_texthat/:z", "--env-file", "/tmp/awx_91_2oshmw_9/artifacts/91/env.list", "--quiet", "--name", "ansible_runner_91", "--user=root", "--network", "slirp4netns:enable_ipv6=true", "brew.registry.redhat.io/rh-osbs/ansible-automation-platform-22-ee-supported-rhel8:latest", "ansible-playbook", "-t", "update_git,install_roles,install_collections", "-i", "/runner/inventory/hosts", "-e", "@/runner/env/extravars", "main.json"], "env": {"ANSIBLE_UNSAFE_WRITES": "1", "AWX_ISOLATED_DATA_DIR": "/runner/artifacts/91", "ANSIBLE_FORCE_COLOR": "True", "ANSIBLE_HOST_KEY_CHECKING": "False", "ANSIBLE_INVENTORY_UNPARSED_FAILED": "True", "ANSIBLE_PARAMIKO_RECORD_HOST_KEYS": "False", "AWX_PRIVATE_DATA_DIR": "/tmp/awx_91_2oshmw_9", "ANSIBLE_RETRY_FILES_ENABLED": "False", "ANSIBLE_ASK_PASS": "False", "ANSIBLE_BECOME_ASK_PASS": "False", "DISPLAY": "", "TMP": "/tmp", "PROJECT_UPDATE_ID": "91", "ANSIBLE_ROLES_PATH": "roles", "ANSIBLE_STDOUT_CALLBACK": "awx_display", "RUNNER_OMIT_EVENTS": "False", "RUNNER_ONLY_FAILED_EVENTS": "False"}, "cwd": "/runner/project"}
{"status": "running", "runner_ident": "91"}
{"event": "verbose", "uuid": "1a72a67a-a609-4f4e-8178-ee6b772b7489", "counter": 1, "stdout": "\u001b[0;31mERROR! role definitions must contain a role name\u001b[0m", "start_line": 0, "end_line": 1, "runner_ident": "91", "created": "2022-06-01T20:38:57.916933"}
{"status": "failed", "runner_ident": "91"}
{"zipfile": 2110}
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{"eof": true}

In this case, it should be running a normal playbook, but it seems to somehow interpret that as direct role execution.

AlanCoding avatar Jun 01 '22 21:06 AlanCoding