Bug 1420458

Summary: OSAD missing a few commits from spacewalk
Product: Red Hat Satellite 5 Reporter: Eric Herget <eherget>
Component: ClientAssignee: Eric Herget <eherget>
Status: CLOSED WONTFIX QA Contact: Red Hat Satellite QA List <satqe-list>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 580CC: tlestach
Target Milestone: ---Keywords: Reopened
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: 2017-02-21 13:43:48 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 Eric Herget 2017-02-08 17:22:25 UTC
Description of problem:
While working an issue, I discovered a few commits in spacewalk osad that are missing from satellite.

Version-Release number of selected component (if applicable):
osa*-5.11.63-8

Comment 1 Tomas Lestach 2017-02-09 11:04:25 UTC
Do we know, what bugs/faulty behavior those commits address?

Comment 2 Eric Herget 2017-02-09 15:02:37 UTC
Here is the current list of commits that appear to be missing from satellite:

ce8d3325dfef8518cc0be509b4250f74223ed360
Made on: 2015-05-20
Commit Message:
    Drop code used from the Perl stack to 'trickle' OSAD
    
    This was a hack to begin with, Perl side was removed, this
    patch removes the Python side as well.
    
    https://github.com/spacewalkproject/spacewalk/blob/SPACEWALK-2.1/web/modules/rhn/RHN/DB/Scheduler.pm#L40
What it does:
  - Removes port as a configurable value when communicating with jabberd
  - Drops port column from rhnPushDispatcher table
  - Introduced bug that should prevent osa-dispatcher from registering as
    a new client to jabberd, which causes osa-dispatcher to exit just after
    starting up if it isn't already registered with jabberd
Files modified:
client/tools/osad/src/osa_dispatcher.py
schema/spacewalk/common/tables/rhnPushDispatcher.sql
schema/spacewalk/upgrade/spacewalk-schema-2.6-to-spacewalk-schema-2.7/001-rhnPushDispatcher-drop-port.sql


4fad52394b6de3b3449a0938790d2a08fa25f1cb
Made on: 2017-02-07
Commit Message:
    1419199 - fix osa_dispatcher so it can successfully register with jabberd
What it does:
  - fixes definition of member variable to be a instance of Notifier class
    instead of the class itself - fixes issue mentioned in above commit.
Files modified:
client/tools/osad/src/osa_dispatcher.py


88567455f886a590076d7c44ac834c6401f3a075
Made on: 2016-04-08
Commit Message:
    Adapt osad to work  in python 2/3
What it does:
  - mainly string manipulation changes
  - some exception handling tweeks
  - import changes to handle python 2 vs python 3
  - use of bstr() method wrapping some text handling code
Files modified:
client/tools/osad/invocation.py
client/tools/osad/osad.spec
client/tools/osad/src/dispatcher_client.py
client/tools/osad/src/jabber_lib.py
client/tools/osad/src/osa_dispatcher.py
client/tools/osad/src/osad.py
client/tools/osad/src/osad_client.py
client/tools/osad/src/osad_config.py
client/tools/osad/src/rhn_log.py
client/tools/osad/test/simple-client.py
client/tools/osad/test/test_lib.py


cca78e738c2ac6e98f14cc0d26df44212c79fec4
Made on: 2016-11-21
Commit Message:
    1397078: fix python2/3 StringIO import
What it does:
  - fixes import of python 2 vs python 3 libs in jabber_lib.py
Files modified:
client/tools/osad/src/jabber_lib.py

55f848092fc9ba3286553f3cd9d392a74162a6a8
Made on: 2014-11-21
Commit Message:
    Updating function names
    
    convert_url_from_pune -> convert_url_from_puny
    convert_url_to_pune   -> convert_url_to_puny
    idn_ascii_to_pune     -> idn_ascii_to_puny
    idn_pune_to_unicode   -> idn_puny_to_unicode
What it does:
  - Changes function names as described above
Files modified:
backend/common/rhnMail.py
backend/common/rhnTB.py
backend/satellite_exporter/satexport.py
backend/satellite_tools/rhn_satellite_activate.py
backend/satellite_tools/satsync.py
backend/server/handlers/sat/auth.py
client/debian/packages-already-in-debian/rhn-client-tools/src/bin/rhnreg_ks.py
client/debian/packages-already-in-debian/rhn-client-tools/src/up2date_client/config.py
client/debian/packages-already-in-debian/rhn-client-tools/src/up2date_client/rhnregGui.py
client/debian/packages-already-in-debian/rhn-client-tools/src/up2date_client/tui.py
client/debian/packages-already-in-debian/rhnlib/rhn/connections.py
client/rhel/rhn-client-tools/src/bin/rhnreg_ks.py
client/rhel/rhn-client-tools/src/up2date_client/config.py
client/rhel/rhn-client-tools/src/up2date_client/rhnregGui.py
client/rhel/rhn-client-tools/src/up2date_client/tui.py
client/rhel/rhnlib/rhn/connections.py
client/solaris/rhnclient/rhnreg_ks.py
client/tools/osad/src/osa_dispatcher.py
client/tools/rhnpush/rhnpush.py
client/tools/spacewalk-remote-utils/spacewalk-create-channel/spacewalk-create-channel

Comment 3 Eric Herget 2017-02-09 15:22:26 UTC
This last commit in the above comment was, in fact, applied the satellite codebase on 2014-11-21 as commit 55f848092fc9ba3286553f3cd9d392a74162a6a8

However, when grepping for diffs between the current spacewalk and satellite code, several files showed up in satellite that did not have the updated function names - still using either idn_ascii_to_pune or idn_pune_to_unicode:

idn_ascii_to_pune:
backend/satellite_tools/satsync.py
client/tools/osad/src/osa_dispatcher.py
client/tools/rhnpush/rhnpush_main.py

idn_pune_to_unicode:
backend/satellite_exporter/satexport.py
backend/common/rhnMail.py
backend/common/rhnTB.py:
backend/satellite_tools/satsync.py
backend/server/handlers/sat/auth.py

Git blame shows the following 2 commits reverted back to the old function names:


40d973119c21def288250b67953f21af084f8c77
Made on: 2016-08-01
Commit Message:
    fix pylint
Files modified:
backend/common/rhnMail.py
backend/common/rhnTB.py
backend/satellite_exporter/satexport.py
backend/satellite_tools/repo_plugins/__init__.py
backend/satellite_tools/rhn_satellite_activate.py
backend/satellite_tools/satsync.py
backend/server/handlers/sat/auth.py


80d9696ae478bf25c5b0217bfeb8496c8acbe3a0
Made on: 2016-09-16
Commit message:
    use old function names (from old version of rhnlib)
Files modified:
backend/cdn_tools/cdn-sync
backend/satellite_tools/satsync.py
client/tools/osad/src/osa_dispatcher.py
client/tools/rhnpush/rhnpush_main.py
client/tools/spacewalk-remote-utils/spacewalk-create-channel/spacewalk-create-channel

Comment 4 Eric Herget 2017-02-09 16:12:53 UTC
After discussion, we will not apply any of these missing commits to the satellite codebase.

ce8d3325dfef8518cc0be509b4250f74223ed360 - This "perl stack 'trickle'" stuff appears superfluous in that (for OSAD) it doesn't actually fix anything while it does introduce a maintenance and support risk because of the database change and slight design change of removing option to specify alternate jabberd port.

4fad52394b6de3b3449a0938790d2a08fa25f1cb - This isn't necessary if ce8d3325df isn't applied since it fixed a bug introduced there.

88567455f886a590076d7c44ac834c6401f3a075 & cca78e738c2ac6e98f14cc0d26df44212c79fec4 - We don't need to pull in python 2/3 support changes

pune -> puny changes - These impact a rhel lib... don't touch.

Comment 5 Eric Herget 2017-02-09 16:14:14 UTC
Changing back to ASSIGNED for now, so it doesn't get lost before its linked on upcoming 59concerns wiki page.