Bug 1395894 - Config diff failure on Fedora 23
Summary: Config diff failure on Fedora 23
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Satellite 5
Classification: Red Hat
Component: Client
Version: 580
Hardware: All
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Tomáš Kašpárek
QA Contact: Pavel Studeník
URL:
Whiteboard:
Depends On: 1381343
Blocks: sat580-spw-retest
TreeView+ depends on / blocked
 
Reported: 2016-11-16 21:20 UTC by Jan Hutař
Modified: 2017-06-21 12:15 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of: 1381343
Environment:
Last Closed: 2017-06-21 12:15:00 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Jan Hutař 2016-11-16 21:20:45 UTC
We have tested (or attempted to test) bug like this when Spacewalk 2.6 was to be released. This is a clone of that bug to get it re-tested on Satellite 5.8.0. In some cases bug can be completely irrelevant (in such cases I suggest to close the bug as NOTABUG), in some cases it might be wise to take the bug as a note that something changed in a given area and we might want to sanity-test that area (and mark the bug as VERIFIED with "SanityOnly" keyword) and in some cases bug might be totally relevant to Satellite.



+++ This bug was initially created as a clone of Bug #1381343 +++

Description of problem:
Spacewalk client 2.5 fails to diff config files on Fedora 23

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

How reproducible:
Can reproduce

Steps to Reproduce:
1. Install client on latest updated Fedora 23
2. Deploy config file to system
3. Attempt to diff the config file

Actual results:
Returns python error due to <str> missing decode function:
(excerpt from /var/log/up2date)
File "/usr/share/rhn/actions/configfiles.py", line 332, in is_utf8
    input.decode('utf-8')
<class 'AttributeError'>: 'str' object has no attribute 'decode'

Expected results:
Diff to pass without errors.

Additional info:
Investigation indicates this is due to newer versions of Python 3. Per updated versions, the .decode function for strings has been removed due to adjustments in string handling.

Adjustment of the configfiles.py to always return true does not overtly show fault while enabling the script to continue.

--- Additional comment from Gennadii Altukhov on 2016-10-20 12:32:08 EDT ---

The problem is in diff action in rhncfg-action-control.

Actual steps to reproduce:

1. Register Fedora 23 system in Spacewalk
2. If there is no config channel, create one
3. Subscribe registered system to config channel (Systems -> <system_name> -> Configuration -> Manage Configuration Channels -> Subscribe to Channels)
4. On Fedora 23 system deploy configuration file from Channel:
   # rhncfg-client get
5. On Fedora 23 system install rhncfg* and enable all actions (actually we need    only 'diff')
   # dnf install rhncfg*
   # rhn-actions-control --enable-all
6. Change some of the deployed to Fedora 23 configuration files
7. In Spacewalk Web UI try to get diff between file deployed on Fedora 23 system and file in Spacewalk Configuration Channel (Systems -> <system_name> -> Configuration -> Compare Files)

Results:
cannot get diff, error in /var/log/up2date

--- Additional comment from Gennadii Altukhov on 2016-10-20 12:32:33 EDT ---

spacewalk.git:
963fba6b14206fbd42dd0feada1b7ead1490eb99

--- Additional comment from Radovan Drazny on 2016-11-11 05:51:12 EST ---

Reproduced on rhncfg-client-5.10.93-1.fc23 using the reproducer from comment #1, with the result described in initial report (<class 'AttributeError'>: 'str' object has no attribute 'decode').

After update to rhncfg-client-5.10.98-1 and rescheduling the "Compare files" event, the comparison in performed correctly, and it is possible to display the diff output in WebUI. 
VERIFIED

Comment 1 Pavel Studeník 2017-05-10 11:27:50 UTC
Verified with packages:

RHEL6:
rhncfg-client-5.10.74-10.el6sat.noarch

RHEL7:
rhncfg-client-5.10.74-11.el7sat.noarch

RHEL5:
rhncfg-client-5.10.74-10.el5sat

Comment 2 Pavel Studeník 2017-05-10 13:18:16 UTC
fix correct packages:

rhncfg-actions-5.10.87-9.el5sat
rhncfg-client-5.10.87-10.el6sat.noarch
rhncfg-client-5.10.87-9.el7sat.noarch


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