Red Hat Satellite engineering is moving the tracking of its product development work on Satellite to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "Satellite project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs will be migrated starting at the end of May. If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "Satellite project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/SAT-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 1325124 - hammer import activation-key fails to create composite CVs
Summary: hammer import activation-key fails to create composite CVs
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Satellite
Classification: Red Hat
Component: Uncategorized
Version: 6.2.0
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: Unspecified
Assignee: Tom McKay
QA Contact: Lukas Pramuk
URL: http://projects.theforeman.org/issues...
Whiteboard:
Depends On: 1337746
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-04-08 10:51 UTC by Lukas Pramuk
Modified: 2019-09-26 14:47 UTC (History)
5 users (show)

Fixed In Version: rubygem-hammer_cli_import-0.11.0-1
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-07-27 11:06:09 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Foreman Issue Tracker 14614 0 None None None 2016-04-22 16:50:01 UTC

Description Lukas Pramuk 2016-04-08 10:51:24 UTC
Description of problem:
hammer import activation-key fails to create composite CVs. Import activation-key used to use imported CVs and create composite CV out of them (=grouping base and child channel based CVs togheter).
But CV import was broken for sometime so that broken ability to create a composite CV during AK import cannot be simply revealed till now as BZ #1316110 has been fixed. 

Version-Release number of selected component (if applicable):
@Sat6.2.0-Beta-Snap6.2
tfm-rubygem-hammer_cli_import-0.10.23-1.el6sat.noarch

How reproducible:
always

Steps to Reproduce:
0. Import a organization and upload manifest (manually)

1. Run import repository-enable for RH repositories (manually) and sync 'em (rhel-x86_64-server-7 + rhn-tools-rhel-x86_64-server-7)

2. Prepare csv file for AK import
# cat activation-keys.csv
org_id,token,note,usage_limit,is_disabled,deploys_configs,entitlement,channel_label,base_channel_id,child_channel_id,cfg_channel_pos,server_group,server_group_id,package_name
1,1-key,None,,0,N,enterprise_entitled;monitoring_entitled;provisioning_entitled,rhel-x86_64-server-7;rhn-tools-rhel-x86_64-server-7,103;None,None;106,config-1|1,,,

3. Run AK import
# hammer import activation-key --verbose --csv-file activation-keys.csv
Importing from activation-keys.csv
Creating new activation key: 1-key
Creating new ak content view: ak_1
Caught RestClient::InternalServerError:500 Internal Server Error while processing activation key 1
Summary
  Created 1 activation_key.

Actual results:
500 ISE, composite CV not created

Expected results:
composite CV successfully created

Additional info:
the error message is the same as with BZ #1316110 - undefined method `composite?' for nil:NilClass

Comment 1 Lukas Pramuk 2016-04-08 10:57:16 UTC
With successive runs you can hit it still:

# hammer import activation-key --verbose --csv-file activation-keys.csv
Importing from /tmp/exports/activation-keys.csv
Activation key [1-key->1] already imported.
Creating new ak content view: ak_1
Caught RestClient::InternalServerError:500 Internal Server Error while processing activation key 1
Summary
  Found 1 activation_key.
  No action taken.

hammer -d show us more:

[ INFO 2016-04-08 12:38:15 API] POST /katello/api/organizations/4/content_views
[DEBUG 2016-04-08 12:38:15 API] Params: {
             :name => "ak_1",
            :label => "ak_1",
        :composite => true,
      :description => "Composite content view for activation key 1-key",
    :component_ids => [
        [0] 19,
        [1] 37
    ]
}
[DEBUG 2016-04-08 12:38:15 API] Headers: {}
[DEBUG 2016-04-08 12:38:15 API] 500 Internal Server Error
{
    "displayMessage" => "undefined method `composite?' for nil:NilClass",
            "errors" => [
        [0] "undefined method `composite?' for nil:NilClass"
    ]
}
Caught RestClient::InternalServerError:500 Internal Server Error while processing activation key 1
Summary
  Found 1 activation_key.
  No action taken.

Comment 3 Lukas Pramuk 2016-04-08 12:10:00 UTC
More descriptive reproducer:

1. # cat users.csv 
organization_id,organization,user_id,username,last_name,first_name,position,email,role,creation_time,last_login_time,active
1,SatelliteQE,1,admin,Admin,Admin,,root@localhost,Satellite Administrator,2014-09-10 19:39:59,2016-04-07 01:00:14,enabled

2. # hammer import organization --verbose --csv-file users.csv 
Importing from users.csv
Creating new organization: SatelliteQE
Summary
  Created 1 organization.

3. # hammer subscription upload --organization SatelliteQE --file manifest.zip 
[...................................................................................................................................................] [100%]

4. # cat channels.csv 
channel_id,channel_label,channel_name,number_of_packages,org_id
103,rhel-x86_64-server-7,Red Hat Enterprise Linux Server (v. 7 for 64-bit x86_64),0,
106,rhn-tools-rhel-x86_64-server-7,RHN Tools for RHEL Server (v. 7 for x86_64),25,

5. # hammer import repository-enable --verbose --csv-file channels.csv --synchronize --wait
Importing from channels.csv
Enabling /content/dist/rhel/server/7/7Server/x86_64/os/Packages for channel rhel-x86_64-server-7 in org 7
Mapping redhat repository [[1, 103]->74].
Registering tasks for uuids: ["b11f9a35-fb4a-4528-957f-20fc92303994"].
Starting thread for async tasks
Enabling /content/dist/rhel/server/7/7Server/x86_64/rhn-tools/os/Packages for channel rhn-tools-rhel-x86_64-server-7 in org 7
Mapping redhat repository [[1, 106]->75].
Registering tasks for uuids: ["9b9fb539-e6be-4932-9fe4-195156ce637d"].
Waiting for async tasks to finish
Asynchronous tasks: 0 of 2 done (~ 0.25%)
...
Condition ["b11f9a35-fb4a-4528-957f-20fc92303994"] met
Creating new redhat content view: Red Hat Enterprise Linux Server (v. 7 for 64-bit x86_64)
Asynchronous tasks: 2 of 2 done (~100.00%)
Exiting thread (exit requested, all tasks done).
Summary
  Mapped 2 redhat_repositories.
  Created 2 redhat_content_views.

6. # cat activation-keys.csv 
org_id,token,note,usage_limit,is_disabled,deploys_configs,entitlement,channel_label,base_channel_id,child_channel_id,cfg_channel_pos,server_group,server_group_id,package_name
1,1-key,None,,0,N,enterprise_entitled;monitoring_entitled;provisioning_entitled,rhel-x86_64-server-7;rhn-tools-rhel-x86_64-server-7,103;None,None;106,config-1|1,,,

7. # hammer import activation-key --verbose --csv-file activation-keys.csv
Importing from activation-keys.csv
Creating new activation key: 1-key
Creating new ak content view: ak_5
Caught RestClient::InternalServerError:500 Internal Server Error while processing activation key 5
Summary
  Created 1 activation key.

Comment 4 Tom McKay 2016-04-13 14:45:47 UTC
Created redmine issue http://projects.theforeman.org/issues/14614 from this bug

Comment 5 Bryan Kearney 2016-04-13 16:11:19 UTC
Upstream bug component is Uncategorized

Comment 6 Bryan Kearney 2016-04-13 20:11:22 UTC
Upstream bug component is Uncategorized

Comment 7 Tom McKay 2016-07-08 17:28:26 UTC
On a fresh install of Sat-6.2, can I get the full steps and Sat-5 export data? I am not able to reproduce any issues w/ activation keys but I suspect it may be due to my setup not matching. The composite content views created for me have just one CV in them.


$ hammer import activation-key --verbose --csv-file /home/thomasmckay/data/1-small/exports/activation-keys.csv
Importing from /home/thomasmckay/data/1-small/exports/activation-keys.csv
Creating new activation key: 5-key
Activation key [4-key->9] already imported.
Activation key [3-key->8] already imported.
Activation key [1-key->6] already imported.
Activation key [2-key->7] already imported.
Creating new ak content view: ak_10
  Publishing content view: 25
  Associating activation key [10] with content view [25]
Updating activation key with id: 10
  Content view ak_9 already created, reusing.
  Associating activation key [9] with content view [24]
Updating activation key with id: 9
  Content view ak_8 already created, reusing.
  Associating activation key [8] with content view [23]
Updating activation key with id: 8
  Content view ak_6 already created, reusing.
  Associating activation key [6] with content view [20]
Updating activation key with id: 6
  Content view ak_7 already created, reusing.
  Associating activation key [7] with content view [21]
Updating activation key with id: 7
Summary
  Created 1 activation key.
  Created 1 ak content view.
  Found 4 activation_keys.

Comment 8 Lukas Pramuk 2016-07-11 13:39:24 UTC
RE can I get the full steps and Sat-5 export data?

Comment #3 provides them all

Comment 9 Lukas Pramuk 2016-07-11 13:54:52 UTC
cut'n'paste friendly format :-) 

1)
cat > users.csv << EOF
organization_id,organization,user_id,username,last_name,first_name,position,email,role,creation_time,last_login_time,active
1,SatelliteQE,1,admin,Admin,Admin,,root@localhost,Satellite Administrator,2014-09-10 19:39:59,2016-04-07 01:00:14,enabled
EOF

2)
hammer import organization --verbose --csv-file users.csv

3)
hammer subscription upload --organization SatelliteQE --file manifest.zip

4)
cat > channels.csv << EOF
channel_id,channel_label,channel_name,number_of_packages,org_id
103,rhel-x86_64-server-7,Red Hat Enterprise Linux Server (v. 7 for 64-bit x86_64),0,
106,rhn-tools-rhel-x86_64-server-7,RHN Tools for RHEL Server (v. 7 for x86_64),25,
EOF

5)
hammer import repository-enable --verbose --csv-file channels.csv --synchronize --wait

6)
cat > activation-keys.csv << EOF 
org_id,token,note,usage_limit,is_disabled,deploys_configs,entitlement,channel_label,base_channel_id,child_channel_id,cfg_channel_pos,server_group,server_group_id,package_name
1,1-key,None,,0,N,enterprise_entitled;monitoring_entitled;provisioning_entitled,rhel-x86_64-server-7;rhn-tools-rhel-x86_64-server-7,103;None,None;106,config-1|1,,,
EOF

7)
hammer import activation-key --verbose --csv-file activation-keys.csv

Comment 10 Lukas Pramuk 2016-07-11 21:26:03 UTC
This bug is not hammer import specific, rather it is about that hammer generally is not able to create composite CV: 

# hammer content-view create --organization-id 3 --composite --name my_ak1 --component-ids 5,6
Could not create the content view:
  undefined method `composite?' for nil:NilClass

This needs to be fixed at model?! 
As similar BZ 1316110 (undefined method `composite?' for nil:NilClass) was surprisingly fixed that way.
See PR https://github.com/Katello/katello/pull/5927

Comment 11 Bryan Kearney 2016-07-12 12:13:08 UTC
Upstream bug component is Uncategorized

Comment 12 Mike McCune 2016-07-12 21:14:38 UTC
I filed a new bug for the content-view composite bug as that is unrelated to this bug:

https://bugzilla.redhat.com/show_bug.cgi?id=1355894

can we have this bug focus entirely on importing activation keys via hammer import?

If this is unreproducable I'd consider moving this to ON_QA for a re-test or VERIFIED if we know it works fine in SNAP19+

Comment 13 Lukas Pramuk 2016-07-13 07:40:12 UTC
It was already filed as
BZ 1337746 hammer content-view create fails when component-ids are specified

OK, once that BZ is fixed we can test if that fix helps to resolve this hammer import BZ.

Comment 14 Lukas Pramuk 2016-07-13 07:44:46 UTC
As this BZ having blocker+ is blocked by BZ 1337746 in sat-backlog we should prioritize the same way the blocking BZ.

Comment 15 Lukas Pramuk 2016-07-18 11:04:21 UTC
BZ 1337746 is VERIFIED now.
We can procceed with this one too.

Comment 16 Lukas Pramuk 2016-07-18 11:08:30 UTC
VERIFIED.

satellite-6.2.0-20.1.el7sat.noarch

# hammer import activation-key --verbose --csv-file activation-keys.csv
Importing from activation-keys.csv
Creating new activation key: 1-key
Creating new ak content view: ak_2                    <<< yay it works
  Publishing content view: 11
  Associating activation key [2] with content view [11]
Updating activation key with id: 2
Summary
  Created 1 activation key.
  Created 1 ak content view.                          <<< yay it works

Comment 17 Bryan Kearney 2016-07-27 11:06:09 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/RHBA-2016:1501


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