Bug 1378146

Summary: satellite-installer missing ansible install option
Product: Red Hat Satellite Reporter: sthirugn <sthirugn>
Component: InstallerAssignee: Ivan Necas <inecas>
Status: CLOSED ERRATA QA Contact: Lai <ltran>
Severity: high Docs Contact:
Priority: high    
Version: 6.3.0CC: bkearney, dlobatog, ehelms, hmore, inecas, ltran, mhulan, stbenjam, systems
Target Milestone: 6.4.0Keywords: Triaged
Target Release: Unused   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-10-16 19:03:55 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Attachments:
Description Flags
Ansible in capsule none

Description sthirugn@redhat.com 2016-09-21 15:16:49 UTC
Description of problem:
satellite-installer missing ansible install option

Version-Release number of selected component (if applicable):
satellite-6.3.0-1.0.git.7.fb12bf2.el7sat.noarch
satellite-installer-6.3.0.0-1.git.12.695b530.el7sat.noarch
tfm-rubygem-foreman_ansible-1.0-1.fm1_13.el7.noarch

How reproducible:
Always

Steps to Reproduce:
There is no option to enable/disable ansible plugin in latest 6.3 build.

# satellite-installer --help | grep ansible
 -> This command returns nothing

In foreman upstream:
# foreman-installer --help | grep ansible
    --[no-]enable-foreman-plugin-ansible Enable 'foreman_plugin_ansible' puppet module (default: true)

Actual results:
No option to enable/disable ansible plugin

Expected results:
An option to enable/disable ansible plugin just like foreman upstream

Additional info:

Comment 2 Bryan Kearney 2016-10-13 16:12:32 UTC
Upstream bug assigned to inecas

Comment 3 Bryan Kearney 2016-10-13 16:12:35 UTC
Moving this bug to POST for triage into Satellite 6 since the upstream issue http://projects.theforeman.org/issues/16789 has been resolved.

Comment 6 Bryan Kearney 2016-10-19 12:11:45 UTC
Moving this bug to POST for triage into Satellite 6 since the upstream issue http://projects.theforeman.org/issues/16789 has been resolved.

Comment 8 sthirugn@redhat.com 2017-02-20 21:20:53 UTC
Failed in the latest downstream build 

# satellite-installer --enable-foreman-plugin-ansible  
ERROR: Unrecognised option '--enable-foreman-plugin-ansible'

See: 'satellite-installer --help'

# satellite-installer --help | grep ansible 
 <Returned nothing>

# rpm -qa | grep satellite
satellite-6.3.0-11.1.beta.el7sat.noarch
satellite-installer-6.3.0-3.el7sat.noarch
tfm-rubygem-foreman_theme_satellite-1.0.1-2.el7sat.noarch
satellite-cli-6.3.0-11.1.beta.el7sat.noarch

Comment 9 sthirugn@redhat.com 2017-02-20 21:25:49 UTC
Continuation to Comment 8:
# rpm -qa | grep ansible
tfm-rubygem-foreman_ansible-1.3.0-1.el7sat.noarch
tfm-rubygem-foreman_ansible_core-0.0.1-3.el7sat.noarch

Comment 11 Chris Brown 2018-06-18 17:11:16 UTC
Verified in satellite 6.4. Options exist to enable/disable ansible plugin:



# satellite-installer --help | grep ansible
    --[no-]enable-foreman-plugin-ansible Enable 'foreman_plugin_ansible' puppet module (default: true)
    --[no-]enable-foreman-proxy-plugin-ansible Enable 'foreman_proxy_plugin_ansible' puppet module (default: true)
= Module foreman_proxy_plugin_ansible:

# foreman-installer --help | grep ansible
    --[no-]enable-foreman-plugin-ansible Enable 'foreman_plugin_ansible' puppet module (default: true)
    --[no-]enable-foreman-proxy-plugin-ansible Enable 'foreman_proxy_plugin_ansible' puppet module (default: true)
= Module foreman_proxy_plugin_ansible:

Comment 12 sthirugn@redhat.com 2018-06-18 18:38:48 UTC
Hello Chris, 
Can you also confirm that the options actually work? You can perhaps do the following:

1. Run satellite-installer with `enable-foreman-plugin-ansible` and confirm that ansible is configured correctly
2. Repeat 1 with disabling the ansible plugin
3. Perform 1 and 2 on a capsule with the --[no-]enable-foreman-proxy-plugin-ansible and confirm it is working as expected. 

Thanks!

Comment 13 Chris Brown 2018-06-19 14:54:39 UTC
Enabling ansible plugin works fine, however Ansible is still installed when running the satellite-installer with the plugin disabled:

# satellite-installer --scenario satellite --no-enable-foreman-plugin-ansible
# ansible --version
ansible 2.5.4
  config file = /etc/ansible/ansible.cfg
  configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python2.7/site-packages/ansible
  executable location = /usr/bin/ansible
  python version = 2.7.5 (default, Feb 20 2018, 09:19:12) [GCC 4.8.5 20150623 (Red Hat 4.8.5-28)]

Comment 14 Ivan Necas 2018-06-20 10:41:53 UTC
We don't implement the reverse operation, that would be doing the installation when using the `--no-enable` option in any of the plugins, as it can be quite tricky, especially when cleanup could lead to accidentally deleting users data.

Comment 15 Chris Brown 2018-06-22 13:09:45 UTC
Ok, thanks Ivan. How should the installer with the --no-enable option work?

Comment 19 Lai 2018-09-14 19:05:09 UTC
After removing ansible, I ran the satellite with --no-enable option, but still got ansible in the result.

# yum remove ansible
# satellite-installer --scenario satellite --no-enable-foreman-plugin-ansible
# ansible --version
ansible 2.6.3
  config file = /etc/ansible/ansible.cfg
  configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python2.7/site-packages/ansible
  executable location = /usr/bin/ansible
  python version = 2.7.5 (default, Feb 20 2018, 09:19:12) [GCC 4.8.5 20150623 (Red Hat 4.8.5-28)]

Comment 20 Marek Hulan 2018-09-19 07:24:41 UTC
Moving back to ON_QA, please see comment 16 and comment 18, this is not how it's supposed to work. Satellite installer will not uninstall ansible package. Also Satellite depends on rubygem-smart_proxy_ansible which depends on ansible. This is not optional dependency.

Comment 21 Lai 2018-09-20 16:11:50 UTC
Created attachment 1485212 [details]
Ansible in capsule

Ansible autoinstalls with satellite package and verified that it's on sat6.4 after satellite-install --scenario satellite.

-bash-4.2# ansible --version
ansible 2.6.3
  config file = /etc/ansible/ansible.cfg
  configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python2.7/site-packages/ansible
  executable location = /usr/bin/ansible
  python version = 2.7.5 (default, May 31 2018, 09:41:32) [GCC 4.8.5 20150623 (Red Hat 4.8.5-28)]

Verified that after adding capsule to sat6.4, I see ansible on capsule as indicative of the attached screenshot.

Verified on snap_6.4.0_22.0

Comment 22 Bryan Kearney 2018-10-16 19:03:55 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2018:2927