Bug 1165642

Summary: Promoting CVs with hammer results in error when referencing environment by name
Product: Red Hat Satellite Reporter: Nick Strugnell <nstrug>
Component: HammerAssignee: David Davis <daviddavis>
Status: CLOSED ERRATA QA Contact: Tazim Kolhar <tkolhar>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 6.0.4CC: bbuckingham, cwelton, daviddavis, tkolhar
Target Milestone: UnspecifiedKeywords: Triaged
Target Release: Unused   
Hardware: Unspecified   
OS: Unspecified   
URL: http://projects.theforeman.org/issues/8547
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-08-12 05:19:24 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 Nick Strugnell 2014-11-19 12:15:56 UTC
Description of problem:
When promoting a content view version using hammer, if the lifecycle environment to which we are promoting is referenced by name, we get an error. If we promote by lifecycle environment ID, then the promotion works correctly.


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

How reproducible:
Every time

Steps to Reproduce:
1. Check what lifecycle environments we have available:
# lifecycle-environment list --organization "Default_Organization"
---|---------|--------
ID | NAME    | PRIOR  
---|---------|--------
2  | Crash   | Library
1  | Library |        
---|---------|--------

2. Promote a CV version by name:
# hammer content-view version promote --content-view "acme-7.0.0" --organization "Default_Organization"     --lifecycle-environment "Crash" --id 7


Actual results:
Could not promote the content view:
  Error: environment found more than once


Expected results:
Correct promotion.


Additional info:
Promotion by lifecycle environment ID works fine:
# hammer content-view version promote --content-view "acme-7.0.0" --organization "Default_Organization"     --lifecycle-environment-id 2  --id 7
[.....................................................................................................................................................] [100%]
Task 09187308-173c-4aff-8d46-4b4c6a1c8f49: success

Comment 1 RHEL Program Management 2014-11-19 12:23:34 UTC
Since this issue was entered in Red Hat Bugzilla, the release flag has been
set to ? to ensure that it is properly evaluated for this release.

Comment 3 David Davis 2014-12-02 18:43:00 UTC
The "--lifecycle-environment-id" param was working due to a bug in the code. The actual params are "--to-lifecycle-environment-id" and "--to-lifecycle-environment". I fixed it so that it shows the correct error message when neither option is supplied:

Could not promote the content view:
  Error: Missing options to search lifecycle_environment

However, this bug fix causes "--lifecycle-environment-id" to stop working. My concern was that users might be using this but I talked to Justin who said that since the option was never in the help screen (and worked due to a bug) we can drop it.

Comment 4 Partha Aji 2014-12-02 18:43:29 UTC
Created redmine issue http://projects.theforeman.org/issues/8547 from this bug

Comment 5 David Davis 2014-12-02 18:44:24 UTC
To reproduce, don't supply either "--to-lifecycle-environment-id" and "--to-lifecycle-environment" and you should get an error message:

Could not promote the content view:
  Error: Missing options to search lifecycle_environment

Comment 6 Bryan Kearney 2015-01-15 01:04:49 UTC
Moving to POST since upstream bug http://projects.theforeman.org/issues/8547 has been closed
-------------
David Davis
Applied in changeset commit:hammer-cli-katello|1afcd902eefc9846bdd3014f5189d94bdd2a7815.

Comment 9 Tazim Kolhar 2015-02-13 06:36:31 UTC
VERIFIED:

# rpm -qa | grep foreman
foreman-postgresql-1.7.2.4-1.el7sat.noarch
foreman-vmware-1.7.2.4-1.el7sat.noarch
ruby193-rubygem-foreman_bootdisk-4.0.2.4-1.el7.noarch
foreman-compute-1.7.2.4-1.el7sat.noarch
ruby193-rubygem-foreman_docker-1.1.0.2-1.el7sat.noarch
ruby193-rubygem-foreman-tasks-0.6.12.1-1.el7sat.noarch
rubygem-hammer_cli_foreman_tasks-0.0.3.1-1.el7.noarch
ruby193-rubygem-foreman_openscap-0.3.0-1.el7sat.noarch
foreman-1.7.2.4-1.el7sat.noarch
foreman-gce-1.7.2.4-1.el7sat.noarch
ruby193-rubygem-foreman_abrt-0.0.5-2.el7sat.noarch
rubygem-hammer_cli_foreman-0.1.4.3-1.el7sat.noarch
qe-sat6-rhel7.usersys.redhat.com-foreman-proxy-client-1.0-1.noarch
foreman-selinux-1.7.2.8-1.el7sat.noarch
foreman-ovirt-1.7.2.4-1.el7sat.noarch
ruby193-rubygem-foreman-redhat_access-0.0.7-2.el7sat.noarch
rubygem-hammer_cli_foreman_bootdisk-0.1.2.4-1.el7.noarch
foreman-proxy-1.7.2.1-1.el7sat.noarch
foreman-libvirt-1.7.2.4-1.el7sat.noarch
ruby193-rubygem-foreman_gutterball-0.0.1.4-1.el7sat.noarch
qe-sat6-rhel7.usersys.redhat.com-foreman-client-1.0-1.noarch
qe-sat6-rhel7.usersys.redhat.com-foreman-proxy-1.0-1.noarch
ruby193-rubygem-foreman_hooks-0.3.7-2.el7sat.noarch

# hammer content-view version promote --content-view "con_view" --organization "Default Organization"     --to-lifecycle-environment "Library"  --force
[Foreman] Username: admin
[Foreman] Password for admin: 
[.....................................................................] [100%]
Task 0c9e6022-3463-4d5c-999e-fca42a0d926f: success

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

Comment 11 errata-xmlrpc 2015-08-12 05:19:24 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