Hi guys, with updated rhel-7.3 system, I'm hitting this: ======= $ bkr job-results J:1687827 XML-RPC fault: <type 'exceptions.TypeError'>:to_xml() takes at most 4 arguments (5 given) $ ======= My system has beaker-client-24.0-1.el7sed.noarch taken from baseurl=http://download.lab.bos.redhat.com/beakerrepos/client/RedHatEnterpriseLinux$releasever/ [Open URL] Downgrading to beaker-client-23.3-1 fixes the problem for me. The problem happens in beaker-client-24.0-1.el7sed at: /usr/lib/python2.7/site-packages/bkr/client/main.py:83 ======= 82 try: 83 return cmd.run(*cmd_args, **cmd_opts.__dict__) 84 except krbV.Krb5Error, e: ======= Cheers, Martin
This issue will be resolved after upgrading the beaker production server to beaker 24.0. I have tried running this command against the beaker-devel which has been upgraded to 24.0 with no issue.
So this was only a problem when running bkr client 24.0 against an older server. There was a period of a few weeks between when the 24.0 release was published upstream (and in our internal yum repos) and when our main production Beaker server was upgraded to 24.0. Normally we are supposed to preserve backwards compatibility in the client for talking to older servers, for this exact reason. https://beaker-project.org/dev/guide/code-guidelines.html#clientserver-compatibility This bug was just an accidental incompatibility which we introduced, by passing an additional parameter on an existing XMLRPC method. The older version of the XMLRPC method did not accept the new parameter. Unfortunately there is no particularly nice way to handle that situation, so it's hard to say what we could have done better. Introducing a new XMLRPC method with the extra parameter (or better, switching to a new JSON API) would have broken backwards compatibility with older servers just the same. We could consider updating the server to accept and discard *args on all XMLRPC methods but I am not sure it's wise to do that in the general case, and I would rather just focus on moving to JSON APIs instead. So I am going to close this as WONTFIX, now that our main production Beaker server is upgraded this problem shouldn't be affecting anyone anymore.
*** Bug 1419935 has been marked as a duplicate of this bug. ***
The only issue about this (from my persp) is, that a "testing" version of beaker-client.rpm leaked into the "stable" yum repository at some point. This would be good to avoid in the future. Thanks, guys.
That sounds bad... Do you know exactly which version, and which repo? Roughly when did you see it? I can try and track down what went wrong.
See the bug description: > My system has beaker-client-24.0-1.el7sed.noarch taken from > baseurl=http://download.lab.bos.redhat.com/beakerrepos/client/ > RedHatEnterpriseLinux$releasever/ I've been hitting this one day before I filed this bug, which is 2017-01-25.
(In reply to Martin Cermak from comment #6) That's expected though. beaker-client-24.0-1.el7sed is not a testing build, it is the final release of 24.0 which we released on 25 Jan. As mentioned above, the issue is just that there is (always, unavoidably) some delay between when we publish Beaker releases and when they get deployed on our production server.
Understood. Thanks.