zuul/zuul/driver/gerrit
Joshua Watt fa431cf4f8 Fix missing label evaluation in Gerrit
Fixes the way that missing labels are handled in Gerrit. The intention
is that labels provided by Zuul are removed from the set of missing
labels on the change (and thus ignored). The original code was using the
">" set comparison operator to do this, but this operator is actually
"issuperset()". This means that if there was any disjoint members in the
allow_needs set (that is allow_needs had labels that were not missing),
the comparison would be False, and any actual missing labels would be
ignored.

The fix is to use set difference to calculate the missing labels and
remove the allow_needs set. If any labels are left after this, they are
actually missing and the change cannot be merged

Change-Id: Ibdb5df44e80d75198493f8287443ed19bcf269f1
2024-04-11 11:33:12 -06:00
..
__init__.py Interface to get a driver's trigger event class 2021-03-18 09:23:49 +01:00
auth.py gerrit: Fix 'form' auth 2022-04-25 09:30:48 -05:00
gcloudauth.py Add gcloud_service auth option for Gerrit driver 2020-01-30 08:09:00 -08:00
gerritconnection.py Fix missing label evaluation in Gerrit 2024-04-11 11:33:12 -06:00
gerriteventawskinesis.py Add AWS Kinesis support 2023-07-25 11:04:19 -07:00
gerriteventchecks.py Refactor Gerrit driver event sources 2023-07-13 14:02:46 -07:00
gerriteventgcloudpubsub.py Add gcloud pubsub support to Gerrit driver 2023-08-02 14:50:28 -07:00
gerriteventkafka.py Add Kafka support to Gerrit 2023-07-15 14:41:23 -07:00
gerriteventssh.py Refactor Gerrit driver event sources 2023-07-13 14:02:46 -07:00
gerritmodel.py Update gerrit changes more atomically 2024-02-22 06:37:31 -08:00
gerritreporter.py Finish circular dependency refactor 2024-02-09 07:39:40 -08:00
gerritsource.py Merge "Gerrit driver: fix for topics containing white space" 2024-01-10 16:00:23 +00:00
gerrittrigger.py Use NodesetNotFoundError class 2024-03-18 15:03:58 -07:00