Page MenuHomePhabricator

integration-zuul-layoutdiff claims difference when there is none
Closed, ResolvedPublic

Description

The integration-zuul-layoutdiff job no longer properly detects the presence (or absence) of a difference by the current commit.

This is because the output now contains some kind of memory pointer or other temporary identifier that is different each time.
For example, https://gerrit.wikimedia.org/r/#/c/305993/ modifies jjb/misc.yaml only but:

jenkins-bot:

integration-zuul-layoutdiff SUCCESS Review the Zuul layout difference.

https://integration.wikimedia.org/ci/job/integration-zuul-layoutdiff/10625/console:

colordiff '--show-function-line=^Pipeline: ' -u log/before.txt log/current.txt
--- log/before.txt	2016-08-26 01:38:00.998534650 +0000
+++ log/current.txt	2016-08-26 01:38:00.898533526 +0000
@@ -1,5 +1,5 @@
 Pipeline: check
-INFO:zuul.IndependentPipelineManager:  Source: <zuul.source.gerrit.GerritSource object at 0x4a04110>
+INFO:zuul.IndependentPipelineManager:  Source: <zuul.source.gerrit.GerritSource object at 0x357e110>
 INFO:zuul.IndependentPipelineManager:  Requirements:
 INFO:zuul.IndependentPipelineManager:  Events:
 INFO:zuul.IndependentPipelineManager:    <EventFilter types: patchset-created ignore_deletes: True emails: (?x) ^(?!(
@@ -4478,15 +4478,15 @@ Pipeline: check
 INFO:zuul.IndependentPipelineManager:  On start:
 INFO:zuul.IndependentPipelineManager:    []
 INFO:zuul.IndependentPipelineManager:  On success:
-INFO:zuul.IndependentPipelineManager:    [<zuul.reporter.gerrit.GerritReporter object at 0x4a04210>]
+INFO:zuul.IndependentPipelineManager:    [<zuul.reporter.gerrit.GerritReporter object at 0x357e210>]
 INFO:zuul.IndependentPipelineManager:  On failure:
-INFO:zuul.IndependentPipelineManager:    [<zuul.reporter.gerrit.GerritReporter object at 0x4a04250>]
+INFO:zuul.IndependentPipelineManager:    [<zuul.reporter.gerrit.GerritReporter object at 0x357e250>]
 INFO:zuul.IndependentPipelineManager:  On merge-failure:
-INFO:zuul.IndependentPipelineManager:    [<zuul.reporter.gerrit.GerritReporter object at 0x4a04250>]
+INFO:zuul.IndependentPipelineManager:    [<zuul.reporter.gerrit.GerritReporter object at 0x357e250>]
 INFO:zuul.IndependentPipelineManager:  When disabled:
 INFO:zuul.IndependentPipelineManager:    []
 Pipeline: check-only
-INFO:zuul.IndependentPipelineManager:  Source: <zuul.source.gerrit.GerritSource object at 0x4a04290>
+INFO:zuul.IndependentPipelineManager:  Source: <zuul.source.gerrit.GerritSource object at 0x357e290>
 INFO:zuul.IndependentPipelineManager:  Requirements:

Event Timeline

Indeed and that is an issue in Zuul. The objects are used to format the string but lack a string representation method so that fallback to python default of:

<objectname object at someaddress>

Need to patch the various objects to add __repr__().

hashar triaged this task as Medium priority.Aug 29 2016, 10:25 AM

Change 307264 had a related patch set uploaded (by Hashar):
Couple patches pending upstream merge

https://gerrit.wikimedia.org/r/307264

hashar lowered the priority of this task from Medium to Low.Aug 29 2016, 10:40 AM
hashar added a project: Upstream.

Fixed by cherry picking PS2 of https://review.openstack.org/#/c/361064/2 to our branch patch-queue/debian/precise-wikimedia which is used to run the tests.

Will be incorporated in our .deb package version 2.5.0-8-gcbc7f62-wmf2precise1.

What is left to do is to get the change reviewed and merged upstream, then we can close this task.

Change 307264 merged by Hashar:
Couple patches pending upstream merge

https://gerrit.wikimedia.org/r/307264

That has been resolved by deploying a newer version of Zuul on gallium (2.5.0-8-gcbc7f62-wmf2precise1) via T144088.