Bug 1404659

Summary: The atomic client configuration package dialog ends with no summary and fails on RHEL 6
Product: Red Hat Update Infrastructure for Cloud Providers Reporter: Radek Bíba <rbiba>
Component: ToolsAssignee: Patrick Creech <pcreech>
Status: CLOSED ERRATA QA Contact: Radek Bíba <rbiba>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 3.0.0CC: bizhang, pcreech
Target Milestone: ---   
Target Release: 3.0.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 1405083 (view as bug list) Environment:
Last Closed: 2017-03-01 22:14:52 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:
Bug Depends On:    
Bug Blocks: 1405083    

Description Radek Bíba 2016-12-14 11:37:09 UTC
Description of problem:
The new action in rhui-manager from 20161213, 'o   create an atomic client configuration package', provides no summary when it's done, unlike 'c   create a client configuration RPM from an entitlement certificate', which says "Successfully created client configuration RPM. RPMs can be found at ...".

On RHEL 7, the rhui-manager prompt is displayed again, and the configuration package (tarball) gets created. On RHEL 6, though, the tarball is empty and "an unexpected error occurs" with a traceback in the RHUI log.

Version-Release number of selected component (if applicable):
RHUI 3 ISO 20161213

How reproducible:
Always

Steps to Reproduce:
1. Run rhui-manager.
2. You must have a repo and a cert for it. Add a repo and create a cert for it otherwise.
3. Select 'e    create entitlement certificates and client configuration RPMs'
4. Select 'o    create an atomic client configuration package'
5. Fill out the form, so to speak.

Actual results:
====
rhui (client) => o

Full path to local directory in which the client configuration files generated by this tool
should be stored (if this directory does not exist, it will be created):
/tmp

Name of the tar file (excluding extension):
testcerttar

Full path to the entitlement certificate authorizing the client to access
specific channels:
/tmp/testcert.crt

Full path to the private key for the above entitlement certificate:
/tmp/testcert.key

Port to serve Docker content on (default 5000):


rhui (client) =>
====

On RHEL 6, you also get "An unexpected error has occurred during the last operation. More information can be found in /root/.rhui/rhui.log." And the log reads:

====
Traceback (most recent call last):
  File "/usr/lib/python2.6/site-packages/rhui/tools/shell.py", line 88, in safe_listen
    self.listen(clear=first_run)
  File "/usr/lib/python2.6/site-packages/rhui/tools/shell.py", line 127, in listen
    Shell.listen(self)
  File "/usr/lib/python2.6/site-packages/rhui/common/shell.py", line 186, in listen
    item.func(*args, **item.kwargs)
  File "/usr/lib/python2.6/site-packages/rhui/tools/screens/client.py", line 256, in create_atomic_package
    client_atomic.create_tarball(self.config, answers)
  File "/usr/lib/python2.6/site-packages/rhui/atomic/client.py", line 38, in create_tarball
    with tarfile.open(name=tarball_name, mode='w:gz') as tarball:
AttributeError: 'TarFile' object has no attribute '__exit__'
====

Result, on RHEL 7:
# tar tf /tmp/testcerttar.tar.gz 
install.sh
ca.crt
key.pem
content.crt

But on RHEL 6, there are no files in the archive.

Expected results:
Summary and successful creation of the tarball on RHEL 7 as well as 6.

Comment 2 Radek Bíba 2016-12-15 13:44:59 UTC
Fixed in 20161214 on RHEL 7. Thanks!

rhui (client) => o

Full path to local directory in which the client configuration files generated by this tool
should be stored (if this directory does not exist, it will be created):
/tmp

Name of the tar file (excluding extension):
testtar

Full path to the entitlement certificate authorizing the client to access
specific channels:
/tmp/gluster-samba-31.crt

Full path to the private key for the above entitlement certificate:
/tmp/gluster-samba-31.key

Port to serve Docker content on (default 5000):


Successfully created client configuration package.
Package tar file can be found at /tmp

Still failing on RHEL 6. Is that something that needs a more complicated fix and should be documented a known issue in Beta 2?

Comment 3 Patrick Creech 2016-12-15 13:52:54 UTC
Document as known issue for Beta 2 Rhel6.

This option should only work with Ostree/Atomic RHUA deployments, and therefore should only work on Rhel 7.

The long-term solution for GA would be to detect then exit, or hide the option all together.

Comment 4 Patrick Creech 2016-12-15 13:53:38 UTC
Can we create a new BZ just for the RHEL6 failure?

Comment 5 Radek Bíba 2016-12-15 14:38:53 UTC
Ack, sounds good to me. I'll file a separate bug for RHEL 6.

Comment 6 errata-xmlrpc 2017-03-01 22:14:52 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-2017:0367