Bug 1365946

Summary: rhsmcertd-worker raises an exception "[Errno 17] File exists: '/tmp/sm-entitlements'" in case entitlementCertDir has been changed
Product: Red Hat Enterprise Linux 7 Reporter: Jan Stavel <jstavel>
Component: python-rhsmAssignee: candlepin-bugs
Status: CLOSED NOTABUG QA Contact: Jan Stavel <jstavel>
Severity: medium Docs Contact:
Priority: low    
Version: 7.3CC: redakkan, skallesh, vrjain
Target Milestone: rcKeywords: Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-08-12 13:55:41 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:
Attachments:
Description Flags
bash script to reproduce this issue
none
selected part of a rhsm.log file with an exception none

Description Jan Stavel 2016-08-10 14:51:40 UTC
Created attachment 1189677 [details]
bash script to reproduce this issue

Description of problem:

rhsmcertd-wrapper raises an exception in case entitlements certs dir has been changed.

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

   Red Hat Enterprise Linux Server release 7.2 (Maipo)
   ----------------------------     ----------------------------
   arch                             x86_64
   kernel version                   3.10.0-327.el7.x86_64
   ----------------------------     ----------------------------
   server type                      Red Hat Subscription Management
   subscription management server   2.0.16-1
   subscription management rules    5.20
   subscription-manager             1.15.9-15.el7
   python-rhsm                      1.15.4-5.el7
   ----------------------------     ----------------------------
   Product                          69.pem
   ----------------------------     ----------------------------
   Entitlement                       
   ----------------------------     ----------------------------

How reproducible:
   everytime


Steps to reproduce:

   Given a system is unregistered
      and configuration is standard

   When I register a system
      and I change a entitlements cert dir 
      and I create temporary directory
      and I set this directory as entitlementCertDir in rhsm.conf
      and I attach a few pools
      and I wait at least 2minutes
   then I see an exception in /var/log/rhsm/rhsm.log


Additional info:

  I have prepared small bash script to reproduce this issue.
  I have attached selected part of rhsm.log file.

Comment 1 Jan Stavel 2016-08-10 14:52:59 UTC
Created attachment 1189684 [details]
selected part of a rhsm.log file with an exception

Comment 2 Jan Stavel 2016-08-10 14:56:47 UTC
I have made a small mistake.

Line "  and I change a entitlements cert dir" should not be in the scenario.

Comment 5 Jan Stavel 2016-08-12 13:55:41 UTC
This is working:

rm -rf /tmp/sm-entitlements
mkdir  /tmp/sm-entitlements

semanage fcontext -a -s system_u -t cert_t "/tmp/sm-entitlements(/.*)?"
restorecon -v -R /tmp/sm-entitlements

Thanks for good advice.
Jan