Foreman 2.1 - ansible plugin - ansible uses root for ssh (second try *sigh*)

Hello Dear Foreman Community,
I have a Problem with the Ansible-Plugin as it uses the wrong user “root” to connect to the host.

The remote-execution on the same host works now, It uses the correct user “adu” to connect via ssh.
See my other Thread for more details here: Foreman 2.1 - package install with ansible on our own - remote-execution dynflow-world not initialized
(yes i will post an update there after this post!)

As you can see in the dynflow logs below, variables “ansible_user: adu” are there but are not picked up…

Is this something I have configured wrong with ansible-plugin or Ansible?

It is very difficult to get information on what configuration is possible…

Thank you very much for any input here!

Problem:
Ansible job “Run Ansible role” fails because it cannot connect to the host with “root@hostname”

  1:
Error initializing command: Net::SSH::AuthenticationFailed - Authentication failed for user root@clyde-requa.REDACTED.example.com
   2:
Exit status: EXCEPTION

Expected outcome:
Ansible job connects successfull with the correct user and job suceeds.

Foreman and Proxy versions:
everything installed from packages with ansible on our own.
Foreman 2.1
Foreman-Proxy 2.1
Foreman and Proxy plugin versions:
foreman-tasks 2.0.0
foreman_ansible 5.1.1
foreman_remote_execution 3.3.1

Distribution and version:
Ubuntu 18.04

Other relevant data:

Output of Dynflow Console regarding this job:
( I changed the IP,addresses, email addresses, domains, removed passwords, sorry)

Toggle navigation  Dynflow
Execution plans
Status
Back to tasks
Id: 78da20b0-33be-407e-8943-595a64b3dabb

Label: Actions::RemoteExecution::RunHostJob

Status: stopped

Result: error

Started at: 2020-07-23 08:03:32 UTC

Ended at: 2020-07-23 08:03:32 UTC

Plan
Run
Finalize
Execution History
Actions::RemoteExecution::RunHostJob

Started at: 2020-07-23 08:03:32 UTC

Ended at: 2020-07-23 08:03:32 UTC (duration 0.19s)

Input:

---
host:
  id: 37
  name: clyde-requa.REDACTED.example.com
job_category: Ansible Playbook
description: Run Ansible roles
delegated_action_id: 2
current_request_id: 
current_timezone: Europe/Berlin
current_user_id: 36
current_organization_id: 
current_location_id: 
Actions::ProxyAction

Started at: 2020-07-23 08:03:32 UTC

Ended at: 2020-07-23 08:03:32 UTC (duration 0.01s)

Input:

---
proxy_operation_name: ansible-runner
ansible_inventory:
  all:
    hosts:
    - clyde-requa.REDACTED.example.com
    vars: {}
  _meta:
    hostvars:
      clyde-requa.REDACTED.example.com:
        foreman:
          foreman_subnets:
          - name: Default Subnet
            network: 10.10.10.0/24
            mask: 255.255.255.0
            gateway: 10.10.10.1
            dns_primary: 8.8.8.8
            dns_secondary: 
            from: 10.10.10.20
            to: 10.10.10.200
            boot_mode: DHCP
            ipam: DHCP
            vlanid: 
            mtu: 9000
            nic_delay: 
            network_type: IPv4
            description: 
          foreman_interfaces:
          - ip: 10.10.10.21
            ip6: ''
            mac: 00:50:56:aa:93:16
            name: clyde-requa.REDACTED.example.com
            attrs: {}
            virtual: false
            link: true
            identifier: ''
            managed: true
            primary: true
            provision: true
            subnet:
              name: Default Subnet
              network: 10.10.10.0/24
              mask: 255.255.255.0
              gateway: 10.10.10.1
              dns_primary: 8.8.8.8
              dns_secondary: 
              from: 10.10.10.20
              to: 10.10.10.200
              boot_mode: DHCP
              ipam: DHCP
              vlanid: 
              mtu: 9000
              nic_delay: 
              network_type: IPv4
              description:
            subnet6: 
            tag: 
            attached_to: 
            type: Interface
          location: default
          location_title: default
          organization: default
          organization_title: default
          domainname: REDACTED.example.com
          foreman_domain_description: REDACTED.example.com Domain
          owner_name: fg
          owner_email: fg@REDACTED.example.com
          ssh_authorized_keys:
          - ssh-ed25519 REDACTED
            fg@foreman.REDACTED.example.com
          foreman_users:
            fg:
              firstname: f
              lastname: goebel
              mail: fg@REDACTED.example.com
              description: ''
              fullname: fg
              name: fg
              ssh_authorized_keys:
              - type: ssh-ed25519
                key: REDACTED
                comment: fg@foreman.REDACTED.example.com
          root_pw: "REDACTED."
          foreman_config_groups: []
          puppetmaster: ''
        foreman_ansible_roles:
        - ansible-role-package-repos
        ansible_connection: ssh
        ansible_ssh_private_key_file: "/usr/share/foreman-proxy/id_ed25519_foreman_proxy"
        ansible_winrm_server_cert_validation: validate
        ansible_user: adu
        ansible_become_method: sudo
        ansible_port: '22'
        ansible_host: clyde-requa.REDACTED.example.com
        ansible_become_user: root
        ansible_become: true
        ansible_ssh_port: '22'
        ansible_ssh_user: adu
        remote_execution_ssh_user: adu
        remote_execution_effective_user_method: sudo
        computerDomain: REDACTED.example.com
        domainAdminAccount: adjoin
        domainAdminAccountPasswd: REDACTED
        ntpServer: timeserver.REDACTED.example.com
        systemTimeZone: W. Europe Standard Time
        additional-packages: python open-vm-tools
        remote_execution_ssh_keys:
        - ssh-ed25519 REDACTED
          foreman-proxy
        remote_execution_connect_by_ip: false
verbosity_level: '0'
remote_execution_command: false
name: clyde-requa.REDACTED.example.com
hostname: clyde-requa.REDACTED.example.com
script: |-
  ---
  - hosts: all
    pre_tasks:
      - name: Display all parameters known for the Foreman host
        debug:
          var: foreman
    tasks:
      - name: Apply roles
        include_role:
          name: "{{ role }}"
        loop: "{{ foreman_ansible_roles }}"
        loop_control:
          loop_var: role
execution_timeout_interval: 
use_batch_triggering: true
use_concurrency_control: false
connection_options:
  retry_interval: 15
  retry_count: 4
  proxy_batch_triggering: true
proxy_url: https://foreman.REDACTED.example.com:8443
proxy_action_name: ForemanRemoteExecutionCore::Actions::RunScript
proxy_version:
  major: 2
  minor: 1
  patch: 0
current_request_id: 
current_timezone: Europe/Berlin
current_user_id: 36
current_organization_id: 
current_location_id: 
3: Actions::ProxyAction (success) [ 0.73s / 0.02s ]
Queue: remote_execution

Started at: 2020-07-23 08:03:32 UTC

Ended at: 2020-07-23 08:03:32 UTC

Real time: 0.73s

Execution time (excluding suspended state): 0.02s

Input:

---
proxy_operation_name: ansible-runner
ansible_inventory:
  all:
    hosts:
    - clyde-requa.REDACTED.example.com
    vars: {}
  _meta:
    hostvars:
      clyde-requa.REDACTED.example.com:
        foreman:
          foreman_subnets:
          - name: Default Subnet
            network: 10.10.10.0/24
            mask: 255.255.255.0
            gateway: 10.10.10.1
            dns_primary: 8.8.8.8
            dns_secondary: 
            from: 10.10.10.20
            to: 10.10.10.200
            boot_mode: DHCP
            ipam: DHCP
            vlanid: 
            mtu: 9000
            nic_delay: 
            network_type: IPv4
            description: 
          foreman_interfaces:
          - ip: 10.10.10.21
            ip6: ''
            mac: REDACTED
            name: clyde-requa.REDACTED.example.com
            attrs: {}
            virtual: false
            link: true
            identifier: ''
            managed: true
            primary: true
            provision: true
            subnet:
              name: Default Subnet
              network: 10.10.10.0/24
              mask: 255.255.255.0
              gateway: 10.10.10.1
              dns_primary: 8.8.8.8
              dns_secondary: 
              from: 10.10.10.20
              to: 10.10.10.200
              boot_mode: DHCP
              ipam: DHCP
              vlanid: 
              mtu: 9000
              nic_delay: 
              network_type: IPv4
            subnet6: 
            tag: 
            attached_to: 
            type: Interface
          location: default
          location_title: default
          organization: default
          organization_title: default
          domainname: REDACTED.example.com
          foreman_domain_description: REDACTED.example.com Domain
          owner_name: fg
          owner_email: fg@REDACTED.example.com
          ssh_authorized_keys:
          - ssh-ed25519 REDACTED
            fg@foreman.REDACTED.example.com
          foreman_users:
            fg:
              firstname: f
              lastname: goebel
              mail: fg@REDACTED.example.com
              description: ''
              fullname: ffoebel
              name: redacted
              ssh_authorized_keys:
              - type: ssh-ed25519
                key: REDACTED
                comment: user@foreman.REDACTED.example.com
          root_pw: "REDACTED"
          foreman_config_groups: []
          puppetmaster: ''
        foreman_ansible_roles:
        - ansible-role-package-repos
        ansible_connection: ssh
        ansible_ssh_private_key_file: "/usr/share/foreman-proxy/id_ed25519_foreman_proxy"
        ansible_winrm_server_cert_validation: validate
        ansible_user: adu
        ansible_become_method: sudo
        ansible_port: '22'
        ansible_host: clyde-requa.REDACTED.example.com
        ansible_become_user: root
        ansible_become: true
        ansible_ssh_port: '22'
        ansible_ssh_user: adu
        remote_execution_ssh_user: adu
        remote_execution_effective_user_method: sudo
        computerDomain: REDACTED.example.com
        domainAdminAccount: adjoin
        domainAdminAccountPasswd: REDACTED
        ntpServer: timeserver.REDACTED.example.com
        systemTimeZone: W. Europe Standard Time
        additional-packages: python open-vm-tools
        remote_execution_ssh_keys:
        - ssh-ed25519 REDACTED
          foreman-proxy
        remote_execution_connect_by_ip: false
verbosity_level: '0'
remote_execution_command: false
name: clyde-requa.REDACTED.example.com
hostname: clyde-requa.REDACTED.example.com
script: |-
  ---
  - hosts: all
    pre_tasks:
      - name: Display all parameters known for the Foreman host
        debug:
          var: foreman
    tasks:
      - name: Apply roles
        include_role:
          name: "{{ role }}"
        loop: "{{ foreman_ansible_roles }}"
        loop_control:
          loop_var: role
execution_timeout_interval: 
use_batch_triggering: true
use_concurrency_control: false
connection_options:
  retry_interval: 15
  retry_count: 4
  proxy_batch_triggering: true
proxy_url: https://foreman.REDACTED.example.com:8443
proxy_action_name: ForemanRemoteExecutionCore::Actions::RunScript
proxy_version:
  major: 2
  minor: 1
  patch: 0
current_request_id: 
current_timezone: Europe/Berlin
current_user_id: 36
current_organization_id: 
current_location_id: 
Output:

---
proxy_output:
  result:
  - output_type: debug
    output: 'Error initializing command: Net::SSH::AuthenticationFailed - Authentication
      failed for user root@clyde-requa.REDACTED.example.com'
    timestamp: 1595491412.6633832
  runner_id: 590064dc-0a55-4474-a7af-ea34d4f79e2b
  exit_status: EXCEPTION
sequence		concurrence
4: Actions::RemoteExecution::RunHostJob (error) [ 0.02s / 0.02s ]
Queue: remote_execution

Started at: 2020-07-23 08:03:32 UTC

Ended at: 2020-07-23 08:03:32 UTC

Real time: 0.02s

Execution time (excluding suspended state): 0.02s

Input:

---
host:
  id: 37
  name: clyde-requa.REDACTED.example.com
job_category: Ansible Playbook
description: Run Ansible roles
delegated_action_id: 2
current_request_id: 
current_timezone: Europe/Berlin
current_user_id: 36
current_organization_id: 
current_location_id: 
Output:

--- {}
Error:

StandardError

Job execution failed

---
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/algebrick-0.7.5/lib/algebrick/matchers/abstract.rb:74:in
  `assigns'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/algebrick-0.7.5/lib/algebrick/matching.rb:56:in
  `match_value'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/algebrick-0.7.5/lib/algebrick/matching.rb:36:in
  `block in match?'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/algebrick-0.7.5/lib/algebrick/matching.rb:35:in
  `each'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/algebrick-0.7.5/lib/algebrick/matching.rb:35:in
  `match?'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/algebrick-0.7.5/lib/algebrick/matching.rb:23:in
  `match'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/execution_plan/steps/error.rb:13:in
  `new'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/action.rb:504:in
  `set_error'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/action.rb:467:in
  `error!'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/foreman_remote_execution-3.3.1/app/lib/actions/remote_execution/run_host_job.rb:70:in
  `check_exit_status'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/foreman_remote_execution-3.3.1/app/lib/actions/remote_execution/run_host_job.rb:57:in
  `finalize'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/action.rb:584:in
  `block (2 levels) in execute_finalize'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:27:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware.rb:19:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware.rb:40:in
  `finalize'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:23:in
  `call'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:27:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware.rb:19:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/foreman-tasks-2.0.0/app/lib/actions/middleware/rails_executor_wrap.rb:20:in
  `block in finalize'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/activesupport-6.0.3.2/lib/active_support/execution_wrapper.rb:88:in
  `wrap'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/foreman-tasks-2.0.0/app/lib/actions/middleware/rails_executor_wrap.rb:19:in
  `finalize'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:23:in
  `call'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:27:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware.rb:19:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/action/progress.rb:31:in
  `with_progress_calculation'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/action/progress.rb:23:in
  `finalize'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:23:in
  `call'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:27:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware.rb:19:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/foreman-tasks-2.0.0/app/lib/actions/middleware/keep_current_request_id.rb:19:in
  `block in finalize'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/foreman-tasks-2.0.0/app/lib/actions/middleware/keep_current_request_id.rb:49:in
  `restore_current_request_id'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/foreman-tasks-2.0.0/app/lib/actions/middleware/keep_current_request_id.rb:19:in
  `finalize'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:23:in
  `call'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:27:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware.rb:19:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/foreman-tasks-2.0.0/app/lib/actions/middleware/keep_current_timezone.rb:19:in
  `block in finalize'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/foreman-tasks-2.0.0/app/lib/actions/middleware/keep_current_timezone.rb:44:in
  `restore_curent_timezone'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/foreman-tasks-2.0.0/app/lib/actions/middleware/keep_current_timezone.rb:19:in
  `finalize'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:23:in
  `call'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:27:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware.rb:19:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/foreman-tasks-2.0.0/app/lib/actions/middleware/keep_current_user.rb:19:in
  `block in finalize'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/foreman-tasks-2.0.0/app/lib/actions/middleware/keep_current_user.rb:44:in
  `restore_curent_user'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/foreman-tasks-2.0.0/app/lib/actions/middleware/keep_current_user.rb:19:in
  `finalize'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:23:in
  `call'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:27:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware.rb:19:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/foreman-tasks-2.0.0/app/lib/actions/middleware/keep_current_taxonomies.rb:19:in
  `block in finalize'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/foreman-tasks-2.0.0/app/lib/actions/middleware/keep_current_taxonomies.rb:45:in
  `restore_current_taxonomies'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/foreman-tasks-2.0.0/app/lib/actions/middleware/keep_current_taxonomies.rb:19:in
  `finalize'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:23:in
  `call'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/world.rb:31:in
  `execute'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/action.rb:583:in
  `block in execute_finalize'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/action.rb:475:in
  `block in with_error_handling'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/action.rb:475:in
  `catch'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/action.rb:475:in
  `with_error_handling'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/action.rb:582:in
  `execute_finalize'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/action.rb:285:in
  `execute'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/execution_plan/steps/abstract_flow_step.rb:18:in
  `block (2 levels) in execute'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/execution_plan/steps/abstract.rb:167:in
  `with_meta_calculation'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/execution_plan/steps/abstract_flow_step.rb:17:in
  `block in execute'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/execution_plan/steps/abstract_flow_step.rb:32:in
  `open_action'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/execution_plan/steps/abstract_flow_step.rb:16:in
  `execute'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/director/sequential_manager.rb:78:in
  `run_step'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/director/sequential_manager.rb:63:in
  `dispatch'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/director/sequential_manager.rb:70:in
  `block in run_in_sequence'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/director/sequential_manager.rb:70:in
  `each'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/director/sequential_manager.rb:70:in
  `all?'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/director/sequential_manager.rb:70:in
  `run_in_sequence'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/director/sequential_manager.rb:59:in
  `dispatch'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/director/sequential_manager.rb:28:in
  `block in finalize'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:27:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware.rb:19:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware.rb:48:in
  `finalize_phase'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:23:in
  `call'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:27:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware.rb:19:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware.rb:48:in
  `finalize_phase'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:23:in
  `call'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:27:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware.rb:19:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware.rb:48:in
  `finalize_phase'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:23:in
  `call'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:27:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware.rb:19:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware.rb:48:in
  `finalize_phase'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:23:in
  `call'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:27:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware.rb:19:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware.rb:48:in
  `finalize_phase'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:23:in
  `call'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:27:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware.rb:19:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware.rb:48:in
  `finalize_phase'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:23:in
  `call'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:27:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware.rb:19:in
  `pass'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware.rb:48:in
  `finalize_phase'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/stack.rb:23:in
  `call'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/middleware/world.rb:31:in
  `execute'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/director/sequential_manager.rb:27:in
  `finalize'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/director.rb:122:in
  `execute'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/executors/sidekiq/worker_jobs.rb:11:in
  `block (2 levels) in perform'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/executors.rb:18:in
  `run_user_code'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/executors/sidekiq/worker_jobs.rb:9:in
  `block in perform'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/executors/sidekiq/worker_jobs.rb:25:in
  `with_telemetry'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/executors/sidekiq/worker_jobs.rb:8:in
  `perform'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/dynflow-1.4.6/lib/dynflow/executors/sidekiq/serialization.rb:27:in
  `perform'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/sidekiq-5.2.9/lib/sidekiq/processor.rb:192:in
  `execute_job'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/sidekiq-5.2.9/lib/sidekiq/processor.rb:165:in
  `block (2 levels) in process'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/sidekiq-5.2.9/lib/sidekiq/middleware/chain.rb:128:in
  `block in invoke'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/sidekiq-5.2.9/lib/sidekiq/middleware/chain.rb:133:in
  `invoke'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/sidekiq-5.2.9/lib/sidekiq/processor.rb:164:in
  `block in process'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/sidekiq-5.2.9/lib/sidekiq/processor.rb:137:in
  `block (6 levels) in dispatch'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/sidekiq-5.2.9/lib/sidekiq/job_retry.rb:109:in
  `local'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/sidekiq-5.2.9/lib/sidekiq/processor.rb:136:in
  `block (5 levels) in dispatch'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/sidekiq-5.2.9/lib/sidekiq.rb:37:in `block
  in <module:Sidekiq>'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/sidekiq-5.2.9/lib/sidekiq/processor.rb:132:in
  `block (4 levels) in dispatch'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/sidekiq-5.2.9/lib/sidekiq/processor.rb:250:in
  `stats'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/sidekiq-5.2.9/lib/sidekiq/processor.rb:127:in
  `block (3 levels) in dispatch'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/sidekiq-5.2.9/lib/sidekiq/job_logger.rb:8:in
  `call'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/sidekiq-5.2.9/lib/sidekiq/processor.rb:126:in
  `block (2 levels) in dispatch'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/sidekiq-5.2.9/lib/sidekiq/job_retry.rb:74:in
  `global'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/sidekiq-5.2.9/lib/sidekiq/processor.rb:125:in
  `block in dispatch'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/sidekiq-5.2.9/lib/sidekiq/logging.rb:48:in
  `with_context'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/sidekiq-5.2.9/lib/sidekiq/logging.rb:42:in
  `with_job_hash_context'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/sidekiq-5.2.9/lib/sidekiq/processor.rb:124:in
  `dispatch'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/sidekiq-5.2.9/lib/sidekiq/processor.rb:163:in
  `process'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/sidekiq-5.2.9/lib/sidekiq/processor.rb:83:in
  `process_one'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/sidekiq-5.2.9/lib/sidekiq/processor.rb:71:in
  `run'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/sidekiq-5.2.9/lib/sidekiq/util.rb:16:in
  `watchdog'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/sidekiq-5.2.9/lib/sidekiq/util.rb:25:in
  `block in safe_thread'"
- "/usr/share/foreman/vendor/ruby/2.5.0/gems/logging-2.2.2/lib/logging/diagnostic_context.rb:474:in
  `block in create_with_logging_context'"
event	time	world
start execution	2020-07-23 08:03:32 UTC	2b6e3b83-0d8d-4ca5-b574-61e12caabfa8 {"hostname"=>"mch0062x", "pid"=>688, "queues"=>{"default"=>{"pool_size"=>5}, "remote_execution"=>{"pool_size"=>5}}, "last_seen"=>"2020-07-23 10:55:12.834", "delayed_executor"=>true}
finish execution	2020-07-23 08:03:32 UTC	2b6e3b83-0d8d-4ca5-b574-61e12caabfa8 {"hostname"=>"mch0062x", "pid"=>688, "queues"=>{"default"=>{"pool_size"=>5}, "remote_execution"=>{"pool_size"=>5}}, "last_seen"=>"2020-07-23 10:55:12.834", "delayed_executor"=>true}
Back

I have found some resources to this toppic. They are not providing any solution (yet) but i want to share these:

Hi,
the exception you’re getting comes from ruby code, that means it is not running the job as ansible, but as a shell script. you’re most likely missing the ansbile core package.

Once it actually uses ansible, I’m failing to reproduce

1 Like

Hello aruzicka,
Is it even possible to install the foreman-proxy with ansible feature on the same host with foreman?

When I try to install the missing ruby-foreman-ansible-core package i get the following error.

root@foreman:~# apt install ruby-foreman-ansible-core
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.
Statusinformationen werden eingelesen.... Fertig
Die folgenden Pakete wurden automatisch installiert und werden nicht mehr benötigt:
  linux-headers-4.15.0-108 linux-headers-4.15.0-108-generic linux-headers-4.15.0-109 linux-headers-4.15.0-109-generic linux-image-4.15.0-108-generic linux-image-4.15.0-109-generic linux-modules-4.15.0-108-generic linux-modules-4.15.0-109-generic
  linux-modules-extra-4.15.0-108-generic linux-modules-extra-4.15.0-109-generic
Verwenden Sie »apt autoremove«, um sie zu entfernen.
Die folgenden NEUEN Pakete werden installiert:
  ruby-foreman-ansible-core
0 aktualisiert, 1 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.
Es müssen 8.200 B an Archiven heruntergeladen werden.
Nach dieser Operation werden 47,1 kB Plattenplatz zusätzlich benutzt.
Holen:1 https://redacted.example.com/repository/foreman-realdeb bionic/2.1 amd64 ruby-foreman-ansible-core all 3.0.1-1 [8.200 B]
Es wurden 8.200 B in 1 s geholt (12,6 kB/s).
Vormals nicht ausgewähltes Paket ruby-foreman-ansible-core wird gewählt.
(Lese Datenbank ... 208037 Dateien und Verzeichnisse sind derzeit installiert.)
Vorbereitung zum Entpacken von .../ruby-foreman-ansible-core_3.0.1-1_all.deb ...
Entpacken von ruby-foreman-ansible-core (3.0.1-1) ...
dpkg: Fehler beim Bearbeiten des Archivs /var/cache/apt/archives/ruby-foreman-ansible-core_3.0.1-1_all.deb (--unpack):
 Versuch, »/usr/bin/json_inventory.sh« zu überschreiben, welches auch in Paket ruby-smart-proxy-ansible 3.0.0-2 ist
Fehler traten auf beim Bearbeiten von:
 /var/cache/apt/archives/ruby-foreman-ansible-core_3.0.1-1_all.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

Thank you very much!

It is definitely possible, but slightly wonky on deb based systems. The issue is that two packages provide the same file (which is actually really the same file in both packages), so if you can force the installation it should be good to go. I’m not a deb person so I can’t really give you the exact command to run.

Hello aruzicka,
ok when writing my last post I was not aware that this is just a packaging problem.
I Installed the ruby-foreman-ansible-core packages now with:

apt-get install -o Dpkg::Options::="--force-overwrite" install ruby-foreman-ansible-core

And I installed ansible-runner as well, as I know the installer would install it.

The error is changing now to:

 1:
/var/tmp/foreman-ssh-cmd-ed99da19-3e6e-4c0c-ac03-899c196724f4/script: 1: ---: not found
   2:
/var/tmp/foreman-ssh-cmd-ed99da19-3e6e-4c0c-ac03-899c196724f4/script: 2: -: not found
   3:
/var/tmp/foreman-ssh-cmd-ed99da19-3e6e-4c0c-ac03-899c196724f4/script: 3: pre_tasks:: not found
   4:
/var/tmp/foreman-ssh-cmd-ed99da19-3e6e-4c0c-ac03-899c196724f4/script: 4: -: not found
   5:
/var/tmp/foreman-ssh-cmd-ed99da19-3e6e-4c0c-ac03-899c196724f4/script: 5: debug:: not found
   6:
/var/tmp/foreman-ssh-cmd-ed99da19-3e6e-4c0c-ac03-899c196724f4/script: 6: var:: not found
   7:
/var/tmp/foreman-ssh-cmd-ed99da19-3e6e-4c0c-ac03-899c196724f4/script: 7: tasks:: not found
   8:
/var/tmp/foreman-ssh-cmd-ed99da19-3e6e-4c0c-ac03-899c196724f4/script: 8: -: not found
   9:
/var/tmp/foreman-ssh-cmd-ed99da19-3e6e-4c0c-ac03-899c196724f4/script: 9: include_role:: not found
  10:
/var/tmp/foreman-ssh-cmd-ed99da19-3e6e-4c0c-ac03-899c196724f4/script: 10: name:: not found
  11:
/var/tmp/foreman-ssh-cmd-ed99da19-3e6e-4c0c-ac03-899c196724f4/script: 11: loop:: not found
  12:
/var/tmp/foreman-ssh-cmd-ed99da19-3e6e-4c0c-ac03-899c196724f4/script: 12: loop_control:: not found
  13:
/var/tmp/foreman-ssh-cmd-ed99da19-3e6e-4c0c-ac03-899c196724f4/script: 13: loop_var:: not found
  14:
Exit status: 127

This looks like as the yaml file gets still interpreted by bash now.

I think I am missing some configuration but i could not find it documented anywhere…

Do you have an Idea what could be missing?

Thank you very much!
with kind regards, fgoebel

You probably have to tell the smart proxy to load it, just installing the package doesn’t seem to be enough.

echo "gem 'foreman_ansible_core', '3.0.1'" > /usr/share/foreman-proxy/bundler.d/ansible-core.rb

Ok, when I add this to the gemfile, it seems i am running in an bug with the 3.0.1 version of foreman_ansible_core, as described here

But it seems the 3.0.1 is the latest deb-package version available: http://deb.theforeman.org/pool/bionic/2.1/r/ruby-foreman-ansible-core/

When will these packages be updated?

Thank you very much!

Looks like that version bump somehow fell through the cracks. I opened a PR to bring version 3.0.3 to deb nightly repos, once that gets in, I’ll make cherrypicks to get it into release repos. I expect it could land there in a few days

1 Like

Hello aruzicka,
are there some news on this topic?
Thank you very much!

It was merged into packaging some time ago, it should be available in 2.0 and 2.1 repos already

unfortunately there is just

ruby-foreman-ansible-core_3.0.1-1_all.deb	2019-09-10 08:16	8.0K	 

available at all of these: (the version is the same, the date varies)

I’m in the exact same case and having the same error.

I tried extracting files from https://yum.theforeman.org/plugins/2.1/el8/x86_64/rubygem-foreman_ansible_core-3.0.3-1.fm2_1.el8.noarch.rpm (& replacing files installed by the latest deb version by the files contained in this RPM) and I can confirm this fixes the issue.

All we need now is an updated deb package.