Comment 1 for bug 1500898

Revision history for this message
Alfredo Deza (cy-launchpad-deactivatedaccount) wrote :

We encountered this today using the latest (4.11) version.

The culprit is how the URL is parsed. Jenkins requires 3 queryargs: 'json', 'name', and 'type'. But the url part is getting created as a big dictionary which causes this (truncated for brevity):

    https://jenkins.ceph.com/computer/doCreateItem?{'json': ...

When it should really be:

    https://jenkins.ceph.com/computer/doCreateItem?json=...

This is caused by:

         self.jenkins_open(Request(
             self._build_url(CREATE_NODE, params), b''))

Where "params" is a big dictionary of options.

On previous versions where this worked it was actually:

        self.jenkins_open(Request(
            self.server + CREATE_NODE % urlencode(params)), b'')

Which correctly parses the query args and constructs the URL that Jenkins is expecting.