Bug 1461689 - package_availability check get error due to the cockpit-shell rpm package name has been changed
package_availability check get error due to the cockpit-shell rpm package nam...
Product: OpenShift Container Platform
Classification: Red Hat
Component: Installer (Show other bugs)
Unspecified Unspecified
high Severity high
: ---
: 3.9.0
Assigned To: Scott Dodson
Wenkai Shi
Depends On:
  Show dependency treegraph
Reported: 2017-06-15 04:06 EDT by Wenkai Shi
Modified: 2018-06-18 14:26 EDT (History)
7 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
The package availability checks now account for the cockpit-system dependency change.
Story Points: ---
Clone Of:
Last Closed: 2018-06-18 10:37:08 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Wenkai Shi 2017-06-15 04:06:20 EDT
Description of problem:
The cockpit-shell rpm package name has been changed, but still shown in our playbooks. package_availability check will get error cause the name "cockpit-shell".

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1. Install OCP

Actual results:
# ansible-playbook -i hosts -v /usr/share/ansible/openshift-ansible/playbooks/byo/config.yml
fatal: [openshift.example.com]: FAILED! => {
        "package_availability": {
            "failed": true, 
            "invocation": {
                "module_args": {
                    "packages": [
            "msg": "Cannot install all of the necessary packages. Unavailable:\n  cockpit-shell\nYou may need to enable one or more yum repositories to make this content available."


One or more checks failed

Expected results:
Installation succeed

Additional info:
BZ #1419718  Rename cockpit-shell to cockpit-system

# yum search cockpit-shell cockpit-system
cockpit-system.noarch : Cockpit admin interface package for configuring and troubleshooting a system
Warning: No matches found for: cockpit-shell

# grep -nir "cockpit-shell" /usr/share/ansible/openshift-ansible/
./playbooks/adhoc/uninstall.yml:106:        - cockpit-shell
./playbooks/adhoc/uninstall.yml:349:    - cockpit-shell
./roles/cockpit/tasks/main.yml:6:    - cockpit-shell
./roles/openshift_health_checker/openshift_checks/package_availability.py:39:            "cockpit-shell",
Comment 1 Rodolfo Carvalho 2017-06-16 06:01:38 EDT
The cockpit role still tries to install 'cockpit-shell', so the check is consistent with what the installer will try to use.

I found no reference to 'cockpit-system' in openshift-ansible.

$ git grep -n cockpit-shell
playbooks/adhoc/uninstall.yml:106:        - cockpit-shell
playbooks/adhoc/uninstall.yml:349:    - cockpit-shell
roles/cockpit/tasks/main.yml:6:    - cockpit-shell
roles/openshift_health_checker/openshift_checks/package_availability.py:39:            "cockpit-shell",

$ git grep -n cockpit-system

I've opened https://github.com/openshift/openshift-ansible/pull/4474 to update the package name.
Comment 2 Rodolfo Carvalho 2017-06-16 06:09:41 EDT
I believe in this case the check is performing what it is supposed to do -- it fails the install BEFORE spending a lot of time and having the install fail later. Or worse, perhaps part of cockpit was not being properly installed?!

It shouldn't be a TestBlocker because as part of the ansible-playbook output it shows how to disable the check:

# ansible-playbook -i hosts -v /usr/share/ansible/openshift-ansible/playbooks/byo/config.yml -e openshift_disable_check=package_availability
Comment 3 Rodolfo Carvalho 2017-06-27 12:09:56 EDT
The PR https://github.com/openshift/openshift-ansible/pull/4474 is merged.

@Wenkai could you please test this again?
Comment 4 Wenkai Shi 2017-06-28 04:44:08 EDT
Verified with version openshift-ansible-, no more cockpit-shell.

# grep -nir "cockpit-shell" /usr/share/ansible/openshift-ansible/
# grep -nir "cockpit-system" /usr/share/ansible/openshift-ansible/
/usr/share/ansible/openshift-ansible/playbooks/adhoc/uninstall.yml:106:        - cockpit-system
/usr/share/ansible/openshift-ansible/playbooks/adhoc/uninstall.yml:350:    - cockpit-system
/usr/share/ansible/openshift-ansible/roles/cockpit/tasks/main.yml:6:    - cockpit-system
/usr/share/ansible/openshift-ansible/roles/openshift_health_checker/openshift_checks/package_availability.py:39:            "cockpit-system",

Note You need to log in before you can comment on or make changes to this bug.