Wednesday, 2022-02-16

-@gerrit:opendev.org- Ian Wienand proposed: [zuul/zuul-jobs] 828818: encrypt-file : role to encrypt a file https://review.opendev.org/c/zuul/zuul-jobs/+/82881802:06
-@gerrit:opendev.org- Ian Wienand proposed: [zuul/zuul-jobs] 828818: encrypt-file : role to encrypt a file https://review.opendev.org/c/zuul/zuul-jobs/+/82881802:53
-@gerrit:opendev.org- Ian Wienand proposed: [zuul/zuul-jobs] 828818: encrypt-file : role to encrypt a file https://review.opendev.org/c/zuul/zuul-jobs/+/82881803:10
-@gerrit:opendev.org- Ian Wienand proposed: [zuul/zuul-jobs] 828818: encrypt-file : role to encrypt a file https://review.opendev.org/c/zuul/zuul-jobs/+/82881803:19
-@gerrit:opendev.org- Ian Wienand proposed: [zuul/zuul-jobs] 828818: encrypt-file : role to encrypt a file https://review.opendev.org/c/zuul/zuul-jobs/+/82881803:24
-@gerrit:opendev.org- Simon Westphahl proposed: [zuul/zuul] 829491: Don't submit empty node requests to Zookeeper https://review.opendev.org/c/zuul/zuul/+/82949108:43
-@gerrit:opendev.org- Simon Westphahl proposed: [zuul/zuul] 829310: Release tenant read lock early on pending reconfig https://review.opendev.org/c/zuul/zuul/+/82931009:00
-@gerrit:opendev.org- Simon Westphahl proposed: [zuul/zuul] 829491: Don't submit empty node requests to Zookeeper https://review.opendev.org/c/zuul/zuul/+/82949110:33
-@gerrit:opendev.org- Simon Westphahl proposed on behalf of James E. Blair https://matrix.to/#/@jim:acmegating.com: [zuul/zuul] 827935: Populate missing change cache entries https://review.opendev.org/c/zuul/zuul/+/82793511:04
-@gerrit:opendev.org- Simon Westphahl proposed on behalf of James E. Blair https://matrix.to/#/@jim:acmegating.com: [zuul/zuul] 827935: Populate missing change cache entries https://review.opendev.org/c/zuul/zuul/+/82793512:46
-@gerrit:opendev.org- Szymon Datko proposed: [zuul/zuul-jobs] 829533: [ensure-python] Fix for CentOS/RHEL 9 packages https://review.opendev.org/c/zuul/zuul-jobs/+/82953312:48
-@gerrit:opendev.org- Szymon Datko proposed: [zuul/zuul-jobs] 829533: [ensure-python] Fix for CentOS/RHEL 9 packages https://review.opendev.org/c/zuul/zuul-jobs/+/82953312:49
-@gerrit:opendev.org- Szymon Datko proposed: [zuul/zuul-jobs] 829533: [ensure-python] Fix for CentOS/RHEL 9 packages https://review.opendev.org/c/zuul/zuul-jobs/+/82953313:27
-@gerrit:opendev.org- Szymon Datko proposed: [zuul/zuul-jobs] 829544: [ensure-python] Allow overriding package name https://review.opendev.org/c/zuul/zuul-jobs/+/82954413:48
-@gerrit:opendev.org- Zuul merged on behalf of Jeremy Stanley https://matrix.to/#/@fungicide:matrix.org: [zuul/zuul] 828888: Add a reconfig reminder to tenant config doc https://review.opendev.org/c/zuul/zuul/+/82888815:18
@y2kenny:matrix.orgGerrit has some kind of automatic rebase (Rebase if necessary submit type) but for some reason, one of the change got stuck in 'merge conflict' state while Zuul seems to stuck in a loop repeatedly triggering jobs in the gate pipeline.  A manual click on Gerrit's web UI rebase button resolved the issue (so the rebase is basically trivial.)  Am I missing some configuration on Zuul side?15:31
-@gerrit:opendev.org- Simon Westphahl proposed: [zuul/zuul] 829310: Release tenant read lock early on pending reconfig https://review.opendev.org/c/zuul/zuul/+/82931015:37
@y2kenny:matrix.orgok nevermind, looks like it may be a gerrit side issue with content merging.15:48
@y2kenny:matrix.orgon a submit related issue, newer version of Gerrit has a way to "submit together" a relation chain, is that something that can be done with Zuul?15:54
@clarkb:matrix.orgI don't know that there is submit together support explicitly in Zuul yet. But Zuul does allow cycles in its dependency trees to be submitted together and functionally they should be similar. May just be a matter of adding some equivalency to the cycle handling15:57
@jpew:matrix.orgWhen I remove a required score (e.g. Workflow +1) on a Gerrit, Zuul doesn't deqeue it. Is this expected and can I (or should I) fix it?15:59
@clarkb:matrix.orgThe behavior is known. I think that Gerrit only evaluates submittablity when enqueing and maybe when it attempts to submit? The processing of a new vote doesn't retrigger that query which would dequeue. As a user I prefer this behavior because the approval may be removed while gating is proceeding. If reviewers decide to add it back again (maybe after additional review) before testing completes then you avoid wasting a gate reset cycle16:02
@jpew:matrix.orgYa, I think it's probably confusing from a reviewers perspective16:04
@clarkb:matrix.org * The behavior is known. I think that Zuul only evaluates submittablity when enqueing and maybe when it attempts to submit? The processing of a new vote doesn't retrigger that query which would dequeue. As a user I prefer this behavior because the approval may be removed while gating is proceeding. If reviewers decide to add it back again (maybe after additional review) before testing completes then you avoid wasting a gate reset cycle16:04
@clarkb:matrix.orgA gate reset is implied by a dequeue and they are very expensive to perform if there is more than one change in the gate.16:05
@clarkb:matrix.orgThe change cannot merge without the necessary votes so that aspect is handled.16:06
@jpew:matrix.orgAh! got it. It revalidates the votes when zuul attempts to actually submit the change. I didn't realize that16:06
@jpew:matrix.orgI realize this is probably a bad idea, but can I setup SSH port forwarding over ansible between the executor and the worker node?16:08
@clarkb:matrix.org> <@jpew:matrix.org> Ah! got it. It revalidates the votes when zuul attempts to actually submit the change. I didn't realize that16:10
Yes, Gerrit enforces this. You do need to ensure that the label functions aren't overridden to work around this behavior but it is the default and unlikely to be overridden for something like workflow+1
-@gerrit:opendev.org- Szymon Datko proposed: [zuul/zuul-jobs] 829544: [ensure-python] Allow overriding package name https://review.opendev.org/c/zuul/zuul-jobs/+/82954416:33
@jim:acmegating.comClark: ianw i've confirmed an ansible upgrade is still on my todo list (but not immediate).  i'll probably look at jumping versions to the greatest extent possible.17:29
@jim:acmegating.comClarkianw and i'm going to start looking into the log streaming issue now17:30
-@gerrit:opendev.org- James E. Blair https://matrix.to/#/@jim:acmegating.com proposed: [zuul/zuul] 829591: Protect stream handler thread from exceptions https://review.opendev.org/c/zuul/zuul/+/82959118:11
@jim:acmegating.comzuul-maint: ^ that would be good to merge soon; it's affecting opendev currently and seems like a high probability bug.18:13
@clarkb:matrix.orgI'll take a look. Thank you for diving into that for us18:13
@jim:acmegating.comwell, pretty sure i broke it.  :)18:14
@fungicide:matrix.orgyou can't make omelette without breaking the oeufs18:15
@fungicide:matrix.orgor maybe the reverse of that should be zuul's next slogan... /Zuul: now you *can* make omelette without breaking an oeuf!/18:18
@fungicide:matrix.orgif nothing else, it'd be a fun presentation title18:19
@clarkb:matrix.orgcorvus: question for you on that change18:20
@jim:acmegating.comhrm.  i'm wondering if we should just go back to garbage collection.18:31
-@gerrit:opendev.org- James E. Blair https://matrix.to/#/@jim:acmegating.com proposed: [zuul/zuul] 829591: Protect stream handler thread from exceptions https://review.opendev.org/c/zuul/zuul/+/82959118:51
@jim:acmegating.comtristanC: Clark ^ can you take another look?  i think that may be a bit better.  and thanks :)18:52
@jim:acmegating.comactually i think i spot one more thing we should check18:56
-@gerrit:opendev.org- James E. Blair https://matrix.to/#/@jim:acmegating.com proposed: [zuul/zuul] 829591: Protect stream handler thread from exceptions https://review.opendev.org/c/zuul/zuul/+/82959118:58
@jim:acmegating.comtristanC: Clark ^ okay, once more.  sorry and thanks for your patience :)18:58
@clarkb:matrix.orgwill do. Sorry juggling a couple things right now19:28
@clarkb:matrix.orgcorvus: I've approved it19:51
-@gerrit:opendev.org- Ian Wienand proposed: [zuul/zuul-jobs] 828818: encrypt-file : role to encrypt a file https://review.opendev.org/c/zuul/zuul-jobs/+/82881820:37
-@gerrit:opendev.org- Jonathan Rosser proposed: [zuul/zuul-jobs] 829028: Allow some configure-mirrors repositories to be disabled https://review.opendev.org/c/zuul/zuul-jobs/+/82902820:38
-@gerrit:opendev.org- Jonathan Rosser proposed: [zuul/zuul-jobs] 829028: Allow some configure-mirrors repositories to be disabled https://review.opendev.org/c/zuul/zuul-jobs/+/82902820:39
-@gerrit:opendev.org- Zuul merged on behalf of Jonathan Rosser: [zuul/zuul-jobs] 829028: Allow some configure-mirrors repositories to be disabled https://review.opendev.org/c/zuul/zuul-jobs/+/82902821:48
@clarkb:matrix.orgcorvus: ianw dug into an interesting one in #opendev just now. I think what we have found is that when Zuul is talking to a code review system whose repos have two behaviors Zuul can fail to setRepoState and fail jobs with minimal reporting to the user. Specifically if the repo deletes branches during the time that zuul is trying to setRepoState and the ref the branch points to goes away (so isn't merged into another location) then zuul errors23:33
@clarkb:matrix.orgThis happened with the ansible-collections/community.general repo because they seem to do a rebase merge rather than a proper merge and they put branches into the repo itself that they PR against the repo (rather than in another repo). This means zuul sees their repo at sha foo, wants to setRepoState for that branch but if timing is correct that branch is deleted and so is the sha object because they did a rebase not a merge23:34
@clarkb:matrix.orgI'm not sure how zuul might handle that better since the error git reports back is the same as the object actually not existing23:34
@clarkb:matrix.orgwe do want zuul to fail in the case the object doesn't exist23:34
@clarkb:matrix.orgMaybe zuul needs to do two passes? (we could just race these conditions again with another branch though). Perhaps the best thing is to try and report back to the users a better picture that this happened23:35
@jim:acmegating.comClark: normally you'd set this: https://zuul-ci.org/docs/zuul/latest/tenants.html#attr-tenant.untrusted-projects.%3Cproject%3E.exclude-unprotected-branches23:36
@jim:acmegating.combut that may not be useful in this case23:36
@clarkb:matrix.orgis that beacuse all of their branches may be unprotected?23:37
@jim:acmegating.comClark: but https://review.opendev.org/804177 may be useful23:37
@jim:acmegating.comClark: yeah, or really that i just don't know their branch protection strategy and whether it maps to whatever you're interested in :)23:37
@clarkb:matrix.orggot it and I agree that change looks like it would be useful23:38
@clarkb:matrix.orgsince we could make a proactive declaration about what we care and ignore their proection strategy23:38
@jim:acmegating.comyeah, it would let you say what you're interested in regardless of what's set remotely. yep exactly.23:38
@jim:acmegating.comClark: i think it'd need the followup too, which appears broken23:39
@jim:acmegating.comhttps://review.opendev.org/80417823:39
@jim:acmegating.combut you know, if there's some traction on the first one i can fix up the followup.23:39
@clarkb:matrix.orgdo you want me to review the first one before you rebase? Or just a promise that I'll do my best to review if rebased :)23:40
@jim:acmegating.comClark: but be aware -- you're editing the repo in that case.  i think the maintenance burden will be non-zero23:40
@clarkb:matrix.orgcorvus: right, you're effectively limitign the view on the repo. I think I'm ok with that and if they get failures because the branches they need aren't there that is on them?23:41
@jim:acmegating.comClark: yeah, that's the contract :)23:41
@clarkb:matrix.orgThis really makes me think that non merge merge strategies should be avoided23:41
@clarkb:matrix.orgthis would've been fine if they just merged the commit properly23:42
@clarkb:matrix.orgsince the sha objects would all be present and we would set a branch to that sha for that job even though the branch has been deleted23:42
@clarkb:matrix.orgthen the next buildset would see the branch is gone and ignore it23:42
@jim:acmegating.comtemporary branches can certainly cause problems for systems which guarantee reproducible builds :)23:42
-@gerrit:opendev.org- Ian Wienand proposed: [zuul/zuul] 829617: merger: ignore a missing object when creating refs https://review.opendev.org/c/zuul/zuul/+/82961723:53
@iwienand:matrix.orgeven if that is totally wrong, it would be great to find some way to not swallow this error23:53
@clarkb:matrix.orgya I think reporting back that there was a setRepoState (more human readable string?) error would be good23:54
@jim:acmegating.comsure, reporting an error is good, but if i understand ianw's change correctly it just ignores the error?23:55
@clarkb:matrix.orgya I don't think we should do a blanket ignore23:55
@jim:acmegating.comso that's a -2 from me.23:55
@clarkb:matrix.orgbecause if the repo is actually missing content we need that should be a failure23:56
@iwienand:matrix.orgit logs and ignores there .. but my intiution is that if we need that ref later, we will get a better error message when we try to check it out?23:56
@clarkb:matrix.orgeither we need to determine if the branch is gone (and thus its content being gone is ok), or we need to report the error better23:56
@jim:acmegating.comwe may never try to check it out23:56
@jim:acmegating.combut it can still produce incorrect job results23:56
@jim:acmegating.com(just the absence of a branch or tag can alter jobs)23:56
@clarkb:matrix.orgya we might be able to catch the error and then cehck the remote to see if the ref still exists. If it does then fail. If it doesn't then remove it from the state?23:57
@jim:acmegating.comClark: we'd have to reset the item23:58
@clarkb:matrix.orgbut as mentioned before you can end up where the next deletion trips you over while you process the next pass23:58
@jim:acmegating.comit would be better to just report the error to the user23:58
@jim:acmegating.comthen you+user can figure out how to resolve the branch selection situation23:58
@iwienand:matrix.orgdo you have any intuition on why this was not reported back as an error?23:59
@jim:acmegating.comdid it retry_limit?23:59

Generated by irclog2html.py 2.17.3 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!