Bug 1205826

Summary: Docker CLI initialization error
Product: Red Hat Satellite Reporter: Mike McCune <mmccune>
Component: Container ManagementAssignee: Partha Aji <paji>
Status: CLOSED ERRATA QA Contact: Elyézer Rezende <erezende>
Severity: high Docs Contact:
Priority: unspecified    
Version: 6.1.0CC: bkearney, erezende, jmontleo, omaciel
Target Milestone: UnspecifiedKeywords: Regression, Triaged
Target Release: Unused   
Hardware: Unspecified   
OS: Unspecified   
URL: http://projects.theforeman.org/issues/10211
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-08-12 05:30:37 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:
Embargoed:

Description Mike McCune 2015-03-25 17:06:05 UTC
Running the latest downstream build of the docker cli generates a stacktrace:

# rpm -q ruby193-rubygem-foreman_docker
ruby193-rubygem-foreman_docker-1.2.0.7-1.el6_6sat.noarch
# hammer -v
[ERROR 2015-03-25 13:02:18 Modules] Error while loading module hammer_cli_gutterball
Warning: An error occured while loading module hammer_cli_gutterball
[ERROR 2015-03-25 13:02:18 Modules] <HammerCLI::CommandConflict> can't replace subcommand docker
(HammerCLIForemanDocker::DockerCommand) with docker (Class)
        /usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.4.8/lib/hammer_cli/subcommand.rb:56:in `subcommand'
        /usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.4.8/lib/hammer_cli/subcommand.rb:68:in `lazy_subcommand'
        /usr/lib/ruby/gems/1.8/gems/hammer_cli_katello-0.0.7.5/lib/hammer_cli_katello.rb:120
        /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
        /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
        /usr/lib/ruby/gems/1.8/gems/hammer_cli_gutterball-0.0.1.2/lib/hammer_cli_gutterball.rb:2
        /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in `gem_original_require'
        /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in `require'
        /usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.4.8/lib/hammer_cli/modules.rb:78:in `require_module'
        /usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.4.8/lib/hammer_cli/modules.rb:57:in `load!'
        /usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.4.8/lib/hammer_cli/modules.rb:72:in `load'
        /usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.4.8/lib/hammer_cli/modules.rb:83:in `load_all'
        /usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.4.8/lib/hammer_cli/modules.rb:82:in `each'
        /usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.4.8/lib/hammer_cli/modules.rb:82:in `load_all'
        /usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.4.8/bin/hammer:95
        /usr/bin/hammer:19:in `load'
        /usr/bin/hammer:19
[ERROR 2015-03-25 13:02:18 Modules] Error while loading module hammer_cli_katello
Warning: An error occured while loading module hammer_cli_katello
[ERROR 2015-03-25 13:02:18 Modules] <HammerCLI::CommandConflict> can't replace subcommand 
activation-key (HammerCLIKatello::ActivationKeyCommand) with activation-key (Class)
        /usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.4.8/lib/hammer_cli/subcommand.rb:56:in `subcommand'
        /usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.4.8/lib/hammer_cli/subcommand.rb:68:in `lazy_subcommand'
        /usr/lib/ruby/gems/1.8/gems/hammer_cli_katello-0.0.7.5/lib/hammer_cli_katello.rb:27
        /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
        /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
        /usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.4.8/lib/hammer_cli/modules.rb:78:in `require_module'
        /usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.4.8/lib/hammer_cli/modules.rb:57:in `load!'
        /usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.4.8/lib/hammer_cli/modules.rb:72:in `load'
        /usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.4.8/lib/hammer_cli/modules.rb:83:in `load_all'
        /usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.4.8/lib/hammer_cli/modules.rb:82:in `each'
        /usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.4.8/lib/hammer_cli/modules.rb:82:in `load_all'
        /usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.4.8/bin/hammer:95
        /usr/bin/hammer:19:in `load'
        /usr/bin/hammer:19
Usage:
   hammer [OPTIONS] SUBCOMMAND [ARG] ...
 
Parameters:
SUBCOMMAND                    subcommand
[ARG] ...                     subcommand arguments
 
Subcommands:
activation-key                Manipulate activation keys.
architecture                  Manipulate architectures.
auth                          Foreman connection login/logout.
auth-source                   Manipulate auth sources.
bootdisk                      Download boot disks

Comment 2 Partha Aji 2015-03-25 18:16:59 UTC
https://github.com/mbacovsky/hammer-cli-katello/commit/6de2776b55f00e19238b1b61f2556ffc2162bf15 needs to be cherry picked over.

Comment 5 Elyézer Rezende 2015-04-06 14:23:41 UTC
Failed on Satellite-6.1.0-RHEL-7-20150331.1. No docker CLI is being installed in the latest compose, because this, is not possible to verify if the bug still around or not.


Steps:

# hammer -v
Usage:
    hammer [OPTIONS] SUBCOMMAND [ARG] ...

Parameters:
 SUBCOMMAND                    subcommand
 [ARG] ...                     subcommand arguments

Subcommands:
 activation-key                Manipulate activation keys.
 architecture                  Manipulate architectures.
 auth                          Foreman connection login/logout.
...

# hammer docker --help
Error: No such sub-command 'docker'

See: 'hammer --help'

Comment 6 Mike McCune 2015-04-06 16:07:24 UTC
WORKAROUND:

you have to install it yourself, we don't install it by default:

# yum -y install rubygem-hammer_cli_foreman_docker.noarch
...

# hammer docker
Usage:
    hammer docker [OPTIONS] SUBCOMMAND [ARG] ...
..

Comment 7 Elyézer Rezende 2015-04-06 20:25:04 UTC
The workaround works:

# hammer --version
hammer (0.1.4.8)
 * hammer_cli_foreman (0.1.4.7)
 * hammer_cli_foreman_bootdisk (0.1.2.5)
 * hammer_cli_foreman_discovery (0.0.1.4)
 * hammer_cli_gutterball (unknown version)
 * hammer_cli_import (0.10.6.3)
 * hammer_cli_katello (0.0.7.6)

# hammer -v
Usage:
    hammer [OPTIONS] SUBCOMMAND [ARG] ...

Parameters:
 SUBCOMMAND                    subcommand
 [ARG] ...                     subcommand arguments

Subcommands:
 activation-key                Manipulate activation keys.
 architecture                  Manipulate architectures.
 auth                          Foreman connection login/logout.
 auth-source                   Manipulate auth sources.
 bootdisk                      Download boot disks
 capsule                       Manipulate capsule
 compute-resource              Manipulate compute resources.
 content-host                  Manipulate content hosts on the server
 content-report                View Content Reports
 content-view                  Manipulate content views.
 discovery                     Discovery related actions.
 domain                        Manipulate domains.
...

# yum -y install rubygem-hammer_cli_foreman_docker.noarch
...

# hammer --version
hammer (0.1.4.8)
 * hammer_cli_foreman (0.1.4.7)
 * hammer_cli_foreman_bootdisk (0.1.2.5)
 * hammer_cli_foreman_discovery (0.0.1.4)
 * hammer_cli_foreman_docker (unknown version)
 * hammer_cli_gutterball (unknown version)
 * hammer_cli_import (0.10.6.3)
 * hammer_cli_katello (0.0.7.6)

# hammer -v
Usage:
    hammer [OPTIONS] SUBCOMMAND [ARG] ...

Parameters:
 SUBCOMMAND                    subcommand
 [ARG] ...                     subcommand arguments

Subcommands:
 activation-key                Manipulate activation keys.
 architecture                  Manipulate architectures.
 auth                          Foreman connection login/logout.
 auth-source                   Manipulate auth sources.
 bootdisk                      Download boot disks
 capsule                       Manipulate capsule
 compute-resource              Manipulate compute resources.
 content-host                  Manipulate content hosts on the server
 content-report                View Content Reports
 content-view                  Manipulate content views.
 discovery                     Discovery related actions.
 docker                        Manipulate docker content
 domain                        Manipulate domains.
...

Comment 8 Partha Aji 2015-04-20 19:46:37 UTC
Connecting redmine issue http://projects.theforeman.org/issues/10211 from this bug

Comment 9 Partha Aji 2015-04-20 19:47:53 UTC
should be fixed when https://github.com/Katello/katello/pull/5187 gets merged

Comment 10 Bryan Kearney 2015-05-11 20:21:15 UTC
commit 1d636013c815389699fa6b23ca72796d01a37520
Author: Bryan Kearney <bkearney>
Date:   Mon May 11 16:20:46 2015 -0400

    1205826: Add in a require for hammer_cli_foreman_docker

Comment 12 Elyézer Rezende 2015-05-14 17:02:04 UTC
Verified on Satellite-6.1.0-RHEL-7-20150513.0

Steps to verify:

# hammer docker --help
Usage:
    hammer docker [OPTIONS] SUBCOMMAND [ARG] ...

Parameters:
 SUBCOMMAND                    subcommand
 [ARG] ...                     subcommand arguments

Subcommands:
 container                     Manage docker containers
 image                         Manage docker images
 tag                           Manage docker tags

Options:
 -h, --help                    print help

The docker hammer plugin is now being installed and is working properly.

Comment 13 Bryan Kearney 2015-08-11 13:27:01 UTC
This bug is slated to be released with Satellite 6.1.

Comment 14 errata-xmlrpc 2015-08-12 05:30:37 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-2015:1592