Wednesday, 2021-10-27

@iwienand:matrix.orghrm, still seeing issues building nodepool containers from upstream repos00:49
@iwienand:matrix.org2021-10-27 00:44:35.422342 | ubuntu-focal | [91mE: Failed to fetch https://provo-mirror.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/Debian_11/amd64/crun_1.2-1_amd64.deb  File has unexpected size (253024 != 252748). Mirror sync in progress? [IP: 91.193.113.70 443]00:49
-@gerrit:opendev.org- Zuul merged on behalf of Simon Westphahl: [zuul/zuul] 811955: Pass ZK context to deserialize method of ZKObjects https://review.opendev.org/c/zuul/zuul/+/81195501:35
-@gerrit:opendev.org- Zuul merged on behalf of Simon Westphahl: [zuul/zuul] 812450: Move ZuulMark from configloader to model https://review.opendev.org/c/zuul/zuul/+/81245001:39
-@gerrit:opendev.org- James E. Blair https://matrix.to/#/@jim:acmegating.com proposed on behalf of Matthieu Huin https://matrix.to/#/@mhuin:matrix.org: [zuul/zuul] 735586: Zuul-web: Add authentication-realm attribute to tenants https://review.opendev.org/c/zuul/zuul/+/73558601:50
-@gerrit:opendev.org- James E. Blair https://matrix.to/#/@jim:acmegating.com proposed on behalf of Matthieu Huin https://matrix.to/#/@mhuin:matrix.org: [zuul/zuul] 735586: Zuul-web: Add authentication-realm attribute to tenants https://review.opendev.org/c/zuul/zuul/+/73558602:09
-@gerrit:opendev.org- James E. Blair https://matrix.to/#/@jim:acmegating.com proposed: [zuul/nodepool] 815578: DNM: testing https://review.opendev.org/c/zuul/nodepool/+/81557802:11
@iwienand:matrix.orgi'm not really sure if it will help but i filed an issue @ https://github.com/kubic-project/issues/issues/1502:43
-@gerrit:opendev.org- James E. Blair https://matrix.to/#/@jim:acmegating.com proposed: [zuul/zuul] 815207: Document (and warn about) tag job role checkouts https://review.opendev.org/c/zuul/zuul/+/81520703:08
-@gerrit:opendev.org- Zuul merged on behalf of James E. Blair https://matrix.to/#/@jim:acmegating.com: [zuul/zuul] 815196: Use an election for scheduler periodic stats https://review.opendev.org/c/zuul/zuul/+/81519604:11
-@gerrit:opendev.org- Felix Edel proposed: [zuul/zuul] 814996: Make the ConfigLoader work independently of the Scheduler https://review.opendev.org/c/zuul/zuul/+/81499607:19
-@gerrit:opendev.org- Zuul merged on behalf of Clark Boylan: [zuul/zuul] 815529: Use all but one CPU when unittesting https://review.opendev.org/c/zuul/zuul/+/81552907:50
-@gerrit:opendev.org- Simon Westphahl proposed:10:42
- [zuul/zuul] 815616: Only reset the pipeline state if needed https://review.opendev.org/c/zuul/zuul/+/815616
- [zuul/zuul] 815617: Ensure same layout UUID across schedulers https://review.opendev.org/c/zuul/zuul/+/815617
-@gerrit:opendev.org- Simon Westphahl proposed:10:52
- [zuul/zuul] 815616: Only reset the pipeline state if needed https://review.opendev.org/c/zuul/zuul/+/815616
- [zuul/zuul] 815617: Ensure same layout UUID across schedulers https://review.opendev.org/c/zuul/zuul/+/815617
-@gerrit:opendev.org- Simon Westphahl proposed: [zuul/zuul] 815617: Ensure same layout UUID across schedulers https://review.opendev.org/c/zuul/zuul/+/81561710:56
-@gerrit:opendev.org- Simon Westphahl proposed:12:16
- [zuul/zuul] 815450: Create bundle items during queue deserialization https://review.opendev.org/c/zuul/zuul/+/815450
- [zuul/zuul] 815495: Fix Gerrit change (de-)serialization https://review.opendev.org/c/zuul/zuul/+/815495
- [zuul/zuul] 815616: Only reset the pipeline state if needed https://review.opendev.org/c/zuul/zuul/+/815616
- [zuul/zuul] 815617: Ensure same layout UUID across schedulers https://review.opendev.org/c/zuul/zuul/+/815617
-@gerrit:opendev.org- Simon Westphahl proposed on behalf of James E. Blair https://matrix.to/#/@jim:acmegating.com: [zuul/zuul] 815565: Remove unecessary assignment in re-enqueue https://review.opendev.org/c/zuul/zuul/+/81556512:16
-@gerrit:opendev.org- Zuul merged on behalf of James E. Blair https://matrix.to/#/@jim:acmegating.com: [zuul/zuul] 815553: Fix test race with paused jobs https://review.opendev.org/c/zuul/zuul/+/81555312:19
-@gerrit:opendev.org- Zuul merged on behalf of Simon Westphahl:12:23
- [zuul/zuul] 812451: Recursively delete all sub-nodes of ZKObjects https://review.opendev.org/c/zuul/zuul/+/812451
- [zuul/zuul] 812466: Only retry ZK operations for Kazoo exceptions https://review.opendev.org/c/zuul/zuul/+/812466
-@gerrit:opendev.org- Zuul merged on behalf of Simon Westphahl:12:26
- [zuul/zuul] 812452: Store build sets in Zookeeper https://review.opendev.org/c/zuul/zuul/+/812452
- [zuul/zuul] 812467: Add support for sharded ZKObjects https://review.opendev.org/c/zuul/zuul/+/812467
-@gerrit:opendev.org- Tobias Henkel proposed on behalf of Simon Westphahl: [zuul/zuul] 815278: DNM: execute tests with two schedulers https://review.opendev.org/c/zuul/zuul/+/81527812:28
-@gerrit:opendev.org- Zuul merged on behalf of James E. Blair https://matrix.to/#/@jim:acmegating.com: [zuul/zuul] 812750: Add LocalZKContext for job freezing https://review.opendev.org/c/zuul/zuul/+/81275012:35
-@gerrit:opendev.org- Matthieu Huin https://matrix.to/#/@mhuin:matrix.org proposed:13:55
- [zuul/zuul] 735586: Zuul-web: Add authentication-realm attribute to tenants https://review.opendev.org/c/zuul/zuul/+/735586
- [zuul/zuul] 736968: zuul-web: add pipelines' manager, triggers data in status https://review.opendev.org/c/zuul/zuul/+/736968
- [zuul/zuul] 734082: web UI: user login with OpenID Connect https://review.opendev.org/c/zuul/zuul/+/734082
- [zuul/zuul] 734850: web UI: allow a privileged user to dequeue a change https://review.opendev.org/c/zuul/zuul/+/734850
- [zuul/zuul] 736772: web UI: allow a privileged user to re-enqueue a change https://review.opendev.org/c/zuul/zuul/+/736772
- [zuul/zuul] 768115: Web UI: allow a privileged user to request autohold https://review.opendev.org/c/zuul/zuul/+/768115
- [zuul/zuul] 768199: Web UI: add Autoholds, Autohold page https://review.opendev.org/c/zuul/zuul/+/768199
- [zuul/zuul] 810699: Web UI: Show pipeline types as icons https://review.opendev.org/c/zuul/zuul/+/810699
- [zuul/zuul] 781858: web UI: allow a privileged user to promote a change https://review.opendev.org/c/zuul/zuul/+/781858
- [zuul/zuul] 802559: Web UI: Add "Create Autohold Request" form, improve API error messages https://review.opendev.org/c/zuul/zuul/+/802559
- [zuul/zuul] 769943: Example Docker compose: keycloak integration https://review.opendev.org/c/zuul/zuul/+/769943
-@gerrit:opendev.org- Felix Edel proposed: [zuul/zuul] 814996: Make the ConfigLoader work independently of the Scheduler https://review.opendev.org/c/zuul/zuul/+/81499614:11
-@gerrit:opendev.org- Zuul merged on behalf of James E. Blair https://matrix.to/#/@jim:acmegating.com: [zuul/zuul] 815527: Add some debug logging to change cache https://review.opendev.org/c/zuul/zuul/+/81552714:37
@bridgefan:matrix.orgI was wondering if anyone here knows whether Zuul handles nested Depends-On statements? (eg. patch1 depends on patch2 and patch3 depends on patch1, will patch3 also use patch2?)15:27
@clarkb:matrix.orgbridgefan: what you describe there is a dependency cycle. By default Zuul doesn't allow these but there is a configuration toggle to allow it and then it should be properly supported: https://zuul-ci.org/docs/zuul/reference/queue_def.html#attr-queue.allow-circular-dependencies15:30
@clarkb:matrix.orgianw: corvus neat both nodepool and zuul depend on the same repo for libcontainers' tools but zuul only installs skopeo and seems to not have problems and nodepool installs podman and breaks due to that image not matching the index15:38
@clarkb:matrix.orgI was curiuos why zuul wasn't affected and it seems to be due to the specific packages15:38
@clarkb:matrix.orghrm it failed again. I guess the mirroring of that is load balanced and I see consistent stuff from home?16:49
@jim:acmegating.comClark: it looks like we got through the first batch of sos changes; i think https://review.opendev.org/812760 is up next and waiting for your review16:50
@clarkb:matrix.orgcorvus: yup I'll try to get to that soon16:50
@jim:acmegating.comClark: so you're thinking single bad load-balanced mirror?16:50
@clarkb:matrix.orgcorvus: ya at least looking at the repo from my desktop Packages and Packages.gz matches what I get when I download the crun package16:51
@clarkb:matrix.orgfile size and sha116:51
@clarkb:matrix.orgbut the sha is different when the job fails16:51
@jim:acmegating.comClark: i jut did a wget of  https://provo-mirror.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/Debian_11/amd64/crun_1.2-1_amd64.deb and got 253024 -- that's the bad size right?16:53
@clarkb:matrix.orgno that is what shows up in the Packages file I got16:53
@jim:acmegating.comoh, i guess i don't understand "Hashes of expected file: Filesize:252748"16:54
@jim:acmegating.comi would think that would mean the expected hash of the file.  but i guess that means unexpected hash of the file as received?16:55
@clarkb:matrix.orgThe problem would be getting a different Packages content which expects a different package file or a different package file for a stale Packages16:55
@jim:acmegating.comi confirm that the .deb i got appears okay.16:55
@clarkb:matrix.orgits hard to know but maybe fungi can infer based on the error messages?16:55
@clarkb:matrix.orgoh interesting the latest error complains about the packages file itself not the crun package17:00
@clarkb:matrix.orgprevious failures were for the crun package. Maybe they are updating the Packages file to match and some hash somewhere hasn't been updated? Though I don't know how hashes of the Packages file are verified17:01
@clarkb:matrix.orgis that via the Release file?17:01
@clarkb:matrix.orgyup, if I pull the Releases file and the Packages file they match up17:02
@clarkb:matrix.orgThis feels like some sort of subtle inconsistency that we hit via the test nodes more than local (load balancer etc)17:03
@clarkb:matrix.orgBut now I would expoect zuul to see issues too since Release and Packages will affect skopeo17:08
@bridgefan:matrix.orgClark: thanks17:08
@clarkb:matrix.orgcorvus: question on https://review.opendev.org/c/zuul/zuul/+/812760 I'm happy to approve it as is if that is a non issue17:15
@pearcetyler:matrix.orgHello 👋 My dependent gate pipeline is running tests one at a time instead of testing in parallel (subsequent items in the pipeline remain queued until the previous one completes). I used the quickstart guide to get Zuul running -- Do I need to change any configuration to allow Zuul to test in parallel?17:15
@jim:acmegating.comTyler Pearce: assuming you have enough nodes, that should be enough.  you may have provides/requires or dependencies which cause jobs to wait though.17:16
@jim:acmegating.comor semaphores17:16
@jim:acmegating.comTyler Pearce: if the status page says 'queued' its probably waiting on a node; if it says 'waiting' then it's, well, waiting for something else.17:17
@jim:acmegating.commouseover 'waiting' should tell you what17:17
@pearcetyler:matrix.orgIt does say queued. How do I provision additional nodes?17:17
@jim:acmegating.comTyler Pearce: configure the nodepool launcher for whatever cloud/k8s cluser/set of static nodes you have.  by default, the quickstart configures a single static node as a docker container for demonstration purposes.  you could probably make more of those, but it would be better to use a cloud, or a k8s cluster, or manage a set of static nodes separately from the quickstart docker-compose (that doesn't scale well).17:19
@pearcetyler:matrix.orgAhh I see. Thank you!17:20
@jim:acmegating.comTyler Pearce: here are the docs for nodepool, and you can see the different drivers listed there: https://zuul-ci.org/docs/nodepool/17:20
@pearcetyler:matrix.orgPerfect, thank you!17:20
@clarkb:matrix.orgcorvus: is https://zuul.opendev.org/t/zuul/build/ca5ba7800e5345cc9c6cdd3ca84f3944/log/job-output.txt#10957-10990 the error you were adding debugging to debug?17:29
@clarkb:matrix.orgcorvus: also thought on https://review.opendev.org/c/zuul/zuul/+/813552 but nothing critical17:31
@jim:acmegating.comClark: yep that's the one, i'll take a look thanks17:32
@jim:acmegating.comClark: replied on 81276017:36
@jim:acmegating.comClark: oh that test failure was from before the debug log change merged isn't it?  oh well17:38
@clarkb:matrix.orgah unfortunate17:43
@clarkb:matrix.orgLeft a comment on https://review.opendev.org/c/zuul/zuul/+/813809/ I don't intend on +2/+Aing that but if others feel that is the best way to address that problem I won't -1 either17:43
@jim:acmegating.comClark: yeah, i don't love that change either.  why don't i go ahead and work on a followup to remove that for the end of the stack.  that way we don't have to worry about rearranging the furniture in the middle of that stack, but can have something explicit when the dust settles?17:49
@fungicide:matrix.orgjust catching up, yeah that package checksum and size differences would be an indication that the folks maintaining that package repository aren't careful to upload new packages and then regenerate the indices after that17:50
@clarkb:matrix.org> <@jim:acmegating.com> Clark: yeah, i don't love that change either.  why don't i go ahead and work on a followup to remove that for the end of the stack.  that way we don't have to worry about rearranging the furniture in the middle of that stack, but can have something explicit when the dust settles?17:50
That seems reasonable.
@clarkb:matrix.orgfungi: we are also seeing mismatch between Release content and Package file contents17:51
@fungicide:matrix.orgprobably they do something naive like generate indices elsewhere and then copy them and the files to the site at roughly the same time but possibly out of order, at which point you race getting an old index with a new package17:51
@fungicide:matrix.orgor they forgot to copy a file, if it's persisting17:51
@fungicide:matrix.orgalso they could be overwriting packages in-place rather than incrementing versions, which is a pretty big no-no17:52
@clarkb:matrix.orgit does seem to be persistent17:56
@clarkb:matrix.orgthough dpeending on how often they sync may not have crossed multiple sync periods yet17:56
@ologinov:synapse.sardinasystems.comHi folks!19:38
I have a Zuul (docker-compose) quick installation installed by default. I noticed that the standard installation (where used only gerrit), by changing zuul-config, scheduler can add a tenant, pipelines and jobs for zuul (following the step-by-step guide).It works as expected.Scheduler log after merge to zuul-config(Gerrit) here: https://pastebin.com/uht0hcZn
If I'll add a gitlab connection, projects to etc_zuul/main.yml, do the same with zuul-config, then I will see that the tenant has been created, projects have been created, but not pipelines and jobs.Git diff changes for default zuul and modified for Gitlab connection here: https://pastebin.com/iWdbyCi0
Gitlab: scheduler log after push into zuu-config (master)
https://pastebin.com/zqbLZwXj
I compared the output in debug mode and came to the conclusion that the PipelineManager from zuul/manager/__init__.py not performed in the case of gitlab.
@ologinov:synapse.sardinasystems.comI have no idea at this point what I can do next. Do you have any idea guys?19:40
@clarkb:matrix.orgOleg Loginov: my first hunch is that zuul isn't able to connect to gitlab and pull configs which prevents it from loading any pipelines or jobs20:20
-@gerrit:opendev.org- James E. Blair https://matrix.to/#/@jim:acmegating.com proposed: [zuul/zuul] 815744: Use a metaclass to deserialize event objects https://review.opendev.org/c/zuul/zuul/+/81574420:25
@jim:acmegating.comClark, tobiash, swest: ^ there's an alternative to globals()20:26
@jim:acmegating.comin all honesty, if folks would prefer an explicit list, we can still do that.  this actually seems less error-prone though.  so as much as i normally figure metaclasses are the answer to a question no one asked, maybe this is a reasonable use?20:30
@ologinov:synapse.sardinasystems.comClark: i see that GitLab can send message via webhook to scheduler, and scheduler can leave comment for GitLab MR20:32
@ologinov:synapse.sardinasystems.comit's possibly if zuul-config will be located on Gerrit repo20:33
@ologinov:synapse.sardinasystems.comI mean it tested when pipelines was created from Gerrit repo20:35
@clarkb:matrix.orgOleg Loginov: right that is why I'm wondering if it isn't loading config from gitlab20:35
@ologinov:synapse.sardinasystems.com> <@ologinov:synapse.sardinasystems.com> Clark: i see that GitLab can send message via webhook to scheduler, and scheduler can leave comment for GitLab MR20:36
it's not enough for zuul-config,right?
@ologinov:synapse.sardinasystems.comI saw that scheduler gives messages about each commit/MR/etc, which Gitlab did there20:39
@clarkb:matrix.orgOleg Loginov: the scheduler needs to be able to fetch the repos when it starts up to load their configs20:49
@clarkb:matrix.orgif there are projects in gitlab with the zuul configs and zuul cannot clone/fetch them this could explain the problem20:49
@clarkb:matrix.orgcorvus: re metaclass, I think my only concern with it is that the use of `__init__` seems very underdocumented and typically you'd implement `__new__`, in this case you just want to add an attribute not actually create a new class object so `__init__` is probably the right choice, but I can't find anywhere that indicates `__new__` will call that `__init__` with those args20:50
-@gerrit:opendev.org- James E. Blair https://matrix.to/#/@jim:acmegating.com proposed: [zuul/zuul] 815747: Fix race is test_zookeeper_disconnect https://review.opendev.org/c/zuul/zuul/+/81574720:52
@clarkb:matrix.orgcorvus: I guess in this case s/cls/self/ might be more accurate btu it just happens to be that the object created by the metaclass' `__new__` method is the new class20:54
@clarkb:matrix.orgbecause we're writing a class that emits a class so the first arg to `__init__` is what we think of classically as self it just happens to be a class20:55
@ologinov:synapse.sardinasystems.com> <@clarkb:matrix.org> if there are projects in gitlab with the zuul configs and zuul cannot clone/fetch them this could explain the problem20:55
correctly, but i can fetch repo (project is public) without username/password via http. How can I check it from zuul side that connection is correct, or may be another way for check it?
@clarkb:matrix.orgOleg Loginov: the zuul scheduler log should record stuff about asking for merges for the various projects at startup. Then you can check the merger and executor logs for any failed merges as well as confirming that the scheduler saw those merges complete20:56
@jim:acmegating.comClark: yeah, i'd be happy to s/init/new/ or s/cls/self/.  neither is critical for this usage.20:57
@clarkb:matrix.orgcorvus: I think I have a slight prefernece to s/cls/self/ as its a bit more clear what is going on though it might first create confusion. But not strongly enough to -1 over that20:58
@jim:acmegating.comit's 32 changes away, so we have time20:59
@clarkb:matrix.orgha yes. fwiw it does seem that zuul is having the issues with the skopeo install on the docker images21:00
@clarkb:matrix.orgI wonder if we should be reaching out to suse folks directly21:01
@clarkb:matrix.org(I believe that repo is populated by their OBS service)21:01
@jim:acmegating.commore than https://github.com/kubic-project/issues/issues/15 ?21:01
@clarkb:matrix.orgYa like maybe email Andreas or Colleen directly21:02
@clarkb:matrix.orgor Dirk21:02
@ologinov:synapse.sardinasystems.comClark: thanks for help!21:03
@jim:acmegating.comwhere does provo-mirror come from?21:03
@clarkb:matrix.orgcorvus: I think that the repo url we give apt is getting http redirected to the provo mirror21:04
@clarkb:matrix.organd that may redirect to different locations depending on locality? But I haven't checked that yet21:04
@jim:acmegating.comhrm. if i just visit that in a browser i don't get redirected21:04
@clarkb:matrix.orghuh21:04
@jim:acmegating.comhttps://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/Debian_11/21:04
@clarkb:matrix.orgwe definitely don't put provo-mirror in the apt config we use https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/Debian_11/21:05
@clarkb:matrix.orgoh neat podman is available in Bullseye21:05
@clarkb:matrix.orgmaybe skopeo is too? THere is possibiltiy we could drop the special repo entirely21:06
@clarkb:matrix.orghttps://packages.debian.org/bullseye/skopeo Boom I'll get patches up for nodepool and zuul21:06
@jim:acmegating.comapt-get install skopeo works in a debian:bullseye container21:06
@clarkb:matrix.orgThen I need to do a school run21:06
@jim:acmegating.comClark: i can do the patches if you want to review...? :)21:07
@clarkb:matrix.orgsure21:07
@clarkb:matrix.orgeither way21:07
@jim:acmegating.comon it21:07
@clarkb:matrix.orgianw: ^ fyi21:07
@iwienand:matrix.orgyeah, i was thinking we could probably drop the kubic installs21:09
@jim:acmegating.combtw, if i wget packgaes, i do eventually end up with redirects to provo-mirror.  so i think it's the actual files that have the magic redirect21:09
@jim:acmegating.combullseye has skopeo 1.2.2 rather than 1.3.021:10
@clarkb:matrix.orgI don't expect that will cause problems for our docker image pull/push stuff21:10
@clarkb:matrix.orgbut I've not kept up with their release notes. podman + dib + container element might be the one more likely to break, but I think we try it and this will be far more relaible if it works21:11
@jim:acmegating.com++21:11
@iwienand:matrix.orgwe did get some good dib runs out of that mirror overnight, has it broken again?21:13
@clarkb:matrix.orgianw: yes and now it is a problem with the Packages file so both zuul and nodepool are sad21:14
@clarkb:matrix.orgpreviously it was package specific but now it is the packages index file so all packages are affected21:14
@clarkb:matrix.orgits also not a 100% failure like the redirect is load balancing or the provo-mirror has multiple backends21:14
@iwienand:matrix.orgClark: ahh, ok; so something more systematic on the whole mirror than just one corrupt file. yesterday everything i saw was that one crun .deb21:15
@ologinov:synapse.sardinasystems.comchecked scheduler and executor logs - no messages about failed merge something.I will be glad to any direction of search.21:15
@jim:acmegating.comremote:   https://review.opendev.org/c/zuul/zuul/+/815752 Rely on bullseye image for skopeo in container image [NEW]        21:17
@jim:acmegating.comif folks can see that ^ i wonder if we are missing the bot21:19
@jim:acmegating.combot logs say it just reconnected21:20
@clarkb:matrix.orgI've seen it miss a small number of events. The change loads for me but I'll have to review it after the school run. Back soon21:20
-@gerrit:opendev.org- Zuul merged on behalf of James E. Blair https://matrix.to/#/@jim:acmegating.com: [zuul/zuul] 812760: Add RepoState object https://review.opendev.org/c/zuul/zuul/+/81276021:21
@jim:acmegating.comyay its back21:21
-@gerrit:opendev.org- Ian Wienand proposed: [zuul/nodepool] 815753: Use bullseye podman in container https://review.opendev.org/c/zuul/nodepool/+/81575321:22
@iwienand:matrix.orghttps://review.opendev.org/c/openstack/diskimage-builder/+/815574 [dnm] trying fedora 35 will try ^ out21:23
-@gerrit:opendev.org- Zuul merged on behalf of Simon Westphahl: [zuul/zuul] 812673: Store RepoFiles for a build set in Zookeeper https://review.opendev.org/c/zuul/zuul/+/81267321:23
-@gerrit:opendev.org- James E. Blair https://matrix.to/#/@jim:acmegating.com proposed: [zuul/nodepool] 815754: Rely on bullseye image for podman in container image https://review.opendev.org/c/zuul/nodepool/+/81575421:25
@jim:acmegating.comianw: ^ want to take a look at that?  (and also https://review.opendev.org/815752 ?)21:25
@jim:acmegating.comoh you wrote a change while i was writing it.21:26
-@gerrit:opendev.org- James E. Blair https://matrix.to/#/@jim:acmegating.com proposed: [zuul/nodepool] 815754: Rely on bullseye image for podman in container image https://review.opendev.org/c/zuul/nodepool/+/81575421:27
@jim:acmegating.comianw: ^ i updated mine to include some bits from yours.  main thing is i have omitted install-recommends.  i don't think it's necessary with bullseye.21:27
@jim:acmegating.comianw: so if that works, i think that's preferable.21:27
@iwienand:matrix.orgok, istr that being there for a specific reason to do with some tun/tap thing21:28
@jim:acmegating.comianw: can you take a look at my commit message and see if you disagree?21:28
@jim:acmegating.combased on what was written in the comment, i don't think it should be necessary.  but maybe you have more context.21:29
@jim:acmegating.com```21:29
Depends: init-system-helpers (>= 1.52), libc6 (>= 2.15), libdevmapper1.02.1 (>= 2:1.02.97), libgpgme11 (>= 1.4.1), libseccomp2 (>= 2.4.1), conmon (>= 2.0.18~), containernetworking-plugins (>= 0.8.7), golang-github-containers-common, crun | runc (>= 1.0.0~rc92~), iptables
Recommends: buildah (>= 1.10.1-6~), fuse-overlayfs (>= 1.0.0~), slirp4netns (>= 0.4.1~), catatonit | tini | dumb-init, uidmap, golang-github-containernetworking-plugin-dnsname
```
@iwienand:matrix.orghttps://packages.debian.org/stable/podman21:30
@iwienand:matrix.orgthe rec: slirp4netns was the one i was thinking of21:30
@jim:acmegating.comianw: okay, if you update the comment then i'll abandon mine and +2 yours :)21:31
@iwienand:matrix.organd possibly uidmap was well.  i think it was both about running as non-root21:31
@jim:acmegating.comsomething like the phrase "several programs such as slirp4netns and uidmap which are necessary for running as non-root" would have stopped me from optimizing21:32
@jim:acmegating.comi just assumed that containernetwork-plugins was it, and was in recommends, not requires in kubic21:33
-@gerrit:opendev.org- Ian Wienand proposed: [zuul/nodepool] 815753: Use bullseye podman in container https://review.opendev.org/c/zuul/nodepool/+/81575321:35
@iwienand:matrix.orgcorvus: yes, it's been a dynamic area ... i'll try a follow-on when things stabilise to double check21:37
-@gerrit:opendev.org- James E. Blair https://matrix.to/#/@jim:acmegating.com proposed: [zuul/zuul] 815752: Rely on bullseye image for skopeo in container image https://review.opendev.org/c/zuul/zuul/+/81575221:39
@jim:acmegating.comianw: thanks!  +2 nodepool and updated ^21:40
@clarkb:matrix.orgianw: I +2'd https://review.opendev.org/c/zuul/nodepool/+/815753 but didn't approve it as you indicated youwere testing it with another change. Can you approve it when you are happy with the results?21:57
@clarkb:matrix.orgcorvus: the skopeo change lgtm too21:58
@iwienand:matrix.orgClark: yep, will test with the f35 change in dib21:59
@jim:acmegating.comi'm going to +3 and promote the zuul change22:02
@clarkb:matrix.orgcorvus: ++22:03
@iwienand:matrix.orgCurl error (6): Couldn't resolve host name for https://mirrors.fedoraproject.org/metalink?repo=fedora-35&arch=x86_6422:31
@iwienand:matrix.orgthat's annoying, it seems container networking is broken with the debian podman22:32
@clarkb:matrix.orgDo we need to bind mount in an /etc/hosts?22:34
@clarkb:matrix.orgEr no /etc/resolv.conf22:34
@iwienand:matrix.orgwe never used to have to, but i am conflating two things here -- the f35 update and the debian podman.  it could be either22:36
@iwienand:matrix.org"Several files will be automatically created within the container. These include /etc/hosts, /etc/hostname, and /etc/resolv.conf to manage networking. These will be based on the host’s version of the files, though they can be customized with options" https://docs.podman.io/en/latest/markdown/podman-run.1.html22:40
@clarkb:matrix.orgcorvus: in https://review.opendev.org/c/zuul/zuul/+/813913/10/zuul/model.py why are we maintaining jobs and job_graph separately in the buildset?23:06
@clarkb:matrix.orgDoesn't the job_graph have a list of jobs that we can query23:06
@clarkb:matrix.orgIts also not clear to me how we populate that new attribute of the buildset. Is that jobs dict empty?23:07
@clarkb:matrix.orgianw: on our test nodes we set up a 127.0.0.1 resolver which won't be accessible from the container unless they use host networking23:13
@jim:acmegating.comClark: looking23:14
@clarkb:matrix.orgianw: I wonder if the non debian version is able to detect that and replace stuff appropriately but debian isn't because they don't want people talking to google dns or some such23:14
@jim:acmegating.comClark: a job graph is basically a list of job names and the dependencies between them.  the jobs attribute of the buildset are the actual Job() instances (which contain tons of data)23:17
@jim:acmegating.com(so each has information the other lacks)23:18
@clarkb:matrix.orghrm, but that new attribute isn't really managed at all on the buildset from what I see?23:20
@jim:acmegating.comClark: re 2nd question -- BuildSet.jobs is passed by reference to JobGraph, and JobGraph.addJob mutatates it23:20
@clarkb:matrix.orgbut the change updates to read jobs from it. Just not seeing where we write them23:20
@clarkb:matrix.orgok /me will need to look more closely at addJob23:20
@iwienand:matrix.orgClark: yep, that's what i was thinking too :) https://review.opendev.org/c/openstack/diskimage-builder/+/815763 should dump the resolv.conf, but i'm also trying to get a node on hold 23:21
@clarkb:matrix.orgcorvus: right so addJob does a dict update of the jobgraph but not the buildset jobs?23:21
@clarkb:matrix.orgoh I think I may understand now we're serializing and deserializing the jobs and job graph at the buildset level23:22
@clarkb:matrix.orgwe just haven't done that for jobs yet23:22
@clarkb:matrix.orgthe attribute is added but not really been updated yet?23:22
@jim:acmegating.comClark: JobGraph.jobmap is the BuildSet.jobs object, so that's where the mutation happens23:22
@clarkb:matrix.orgcorvus: right but serialize and deserialize completely ignore it so it appears unused. Its confusing due to that I think23:23
@jim:acmegating.comso this is the old "serialize this object as much as we can, then move on to its child" pattern23:24
@jim:acmegating.comyep, serializing a job is not straightforward, the next few changes set us up for that.23:24
@clarkb:matrix.orgright I think what is confusing is that we actually add the attribute23:24
@clarkb:matrix.orgrather than adding it when we do the serialize/deserialize work23:24
@clarkb:matrix.orgIn previous changes we've left things commented out until they get the actionable work23:25
@jim:acmegating.comi think they're all used?23:25
@jim:acmegating.comBuildSet.jobs is commented out in serialize23:26
@jim:acmegating.combut the actual variable is used; it's JobGraph._job_map23:26
@clarkb:matrix.orgI think I must be very confused. We add the jobs attribute, we don't deserialize/seralize it. And nothing seems to write to it23:27
@clarkb:matrix.orgwe read from it23:27
@clarkb:matrix.orgbut wouldn't it always be an empty dict do dict.get() will return None for those lookups?23:27
@jim:acmegating.comJobGraph.addJob updates BuildSet.jobs23:27
@jim:acmegating.com(and JobGraph.getJobs() reads from it)23:28
@clarkb:matrix.orgIt updates JobGraph._job_map. Where does that become Buildset.jobs?23:28
@jim:acmegating.comin the initializer; it's passed in when created (see comment on JobGraph.__init__)23:29
@jim:acmegating.com * in the initializer; it's passed in when created (see comment on `JobGraph.__init__`)23:29
@clarkb:matrix.orgI might need a break, I just don't see how that happens23:30
@clarkb:matrix.orgin `__init__` we set it to an empty list `[]`23:30
@clarkb:matrix.organd in BuildSet init we set it to an empty dict `{}`23:30
@jim:acmegating.comit's `_job_map` not `jobs` on JobGraph23:31
@jim:acmegating.comline 2246 right after the comment23:31
@clarkb:matrix.orgok the comment says jobs23:31
@jim:acmegating.comthe word "jobs" in the comment wasn't intended to refer to an attribute name, it was intended to refer to the concept of a job23:32
@jim:acmegating.comi guess we could s/job/Job/23:32
@clarkb:matrix.orgok, I'm still not seeing where we map Buildset.jobs -> JobGraph._job_map23:32
@jim:acmegating.comline 290023:33
@clarkb:matrix.orgaha in buildest deserialize23:33
@clarkb:matrix.orgI guess I find this setup of having an attribute that is a class and having an attribute that is a reference to something in that lcass to be ocnfusing23:34
@clarkb:matrix.orgWhy not access everything through the jobgraph?23:34
@jim:acmegating.comyeah, it's not straightforward.  it's there because jobgraph isn't an actual zk object.  it's just a helper class with all the logic encapsulation of handling job dependencies, etc.23:35
@clarkb:matrix.orgYa I guess in my head we could still serialize that to Zk under the job_graph attribute23:35
@jim:acmegating.comit would fit the new pattern better to put all of that on the buildset object, but that would require a cognitive shift and probably a big change in everything that touched 'job_graph'23:36
@clarkb:matrix.orgleft a comment about a different comment that seems to be old/unneeded23:36
@jim:acmegating.comso this is a more minimal change23:36
@clarkb:matrix.orgI didn't approve it in case you want to fix it in that change but suspect you'll tack that on to the end instead and feel free to approve this change if so23:37
@jim:acmegating.comi'll go ahead and fix it in that change23:38
@clarkb:matrix.orgIt would be nice if gerrit had a next change in stack button when the stack is too big and you hvae to click show more to see the next change23:39
@clarkb:matrix.org815752 got bumped out of the gate. I've reapproved it but will let you decide if we should promote it again23:45
@clarkb:matrix.orgOh we don't need to promote because the changes ahead are all failing due to the skopeo install :(23:46
@jim:acmegating.comi'll recheck and promote it23:46
@clarkb:matrix.orgcorvus: I think we may not need to promote23:46
@clarkb:matrix.orgwell I guess promotion in this case is for the other changes23:46
@clarkb:matrix.orgso still helps23:47
@jim:acmegating.comoh i see you already re-enqueued it?23:47
@iwienand:matrix.orghttps://github.com/containers/podman/issues/3277 does not fill me with hope23:47
@clarkb:matrix.orgI approved it which stuck it in the gate23:47
@jim:acmegating.comcool, i promotedi t23:47
@jim:acmegating.comand yeah, it was a severed head which means it would have eventually become the main head without intervention; promoting it restarted the jobs, but at least all the others are behind it now, so overall slightly more efficient)23:48
@clarkb:matrix.orgianw: ya docker gets this stuff wrong too. Its really annoying and I think one of the reasons that systemd wants to do dns over dbus?23:48
@iwienand:matrix.orgat this point even "echo 'nameserver 8.8.8.8' > /etc/resolv.conf" in the container isn't helping23:49
@clarkb:matrix.orgianw: huh that would point at resolv.conf not being the main issue?23:50
@clarkb:matrix.orgcorvus: I've made it up to https://review.opendev.org/c/zuul/zuul/+/814070/ but think I need to pause there to help with dinner stuff. I'll try to review that one and children in the morning23:52
@clarkb:matrix.orgianw: do we think newer podman did fix this?23:52
@clarkb:matrix.orgianw: otherwise I wonder why it isn't working with the debian version. Local debian patches? Might be worth checking the deb packaging for it?23:53
@iwienand:matrix.orgClark: that, or something about the suse packaging and network setup ...23:53
@iwienand:matrix.orgi'm not sure containerfile is turning out to be much more stable than -minimal builds, unfortunately23:54
@clarkb:matrix.orgoh right could be suse fixing it on the other side too. Fun23:54
@jim:acmegating.comClark: thanks!23:57
-@gerrit:opendev.org- James E. Blair https://matrix.to/#/@jim:acmegating.com proposed:23:57
- [zuul/zuul] 813913: Serialize JobGraph objects to ZK https://review.opendev.org/c/zuul/zuul/+/813913
- [zuul/zuul] 814065: Serialize ProjectMetadata on JobGraph https://review.opendev.org/c/zuul/zuul/+/814065
- [zuul/zuul] 814071: Add test_freeze_noop_job https://review.opendev.org/c/zuul/zuul/+/814071
- [zuul/zuul] 814069: Remove setBase from job freeze API https://review.opendev.org/c/zuul/zuul/+/814069
- [zuul/zuul] 814070: Create Abstract and FrozenJob classes https://review.opendev.org/c/zuul/zuul/+/814070
- [zuul/zuul] 814242: Make FrozenJob.updateParentData a static method https://review.opendev.org/c/zuul/zuul/+/814242
- [zuul/zuul] 814281: Remove toDict from FrozenJob https://review.opendev.org/c/zuul/zuul/+/814281
- [zuul/zuul] 814243: Make FrozenJob a ZKObject https://review.opendev.org/c/zuul/zuul/+/814243
- [zuul/zuul] 814329: Implement frozen job serialization/deserialization https://review.opendev.org/c/zuul/zuul/+/814329
- [zuul/zuul] 814679: Store FrozenJob data in separate znodes https://review.opendev.org/c/zuul/zuul/+/814679
- [zuul/zuul] 815154: Update test_inventory to be ZK-friendly https://review.opendev.org/c/zuul/zuul/+/815154
- [zuul/zuul] 815565: Remove unecessary assignment in re-enqueue https://review.opendev.org/c/zuul/zuul/+/815565
- [zuul/zuul] 815744: Use a metaclass to deserialize event objects https://review.opendev.org/c/zuul/zuul/+/815744
- [zuul/zuul] 815764: Add a pipeline change list object to ZK https://review.opendev.org/c/zuul/zuul/+/815764
-@gerrit:opendev.org- James E. Blair https://matrix.to/#/@jim:acmegating.com proposed on behalf of Simon Westphahl:23:57
- [zuul/zuul] 814544: Cleanup stale items after refreshing a pipeline https://review.opendev.org/c/zuul/zuul/+/814544
- [zuul/zuul] 814570: Reference active change queues in pipeline state https://review.opendev.org/c/zuul/zuul/+/814570
- [zuul/zuul] 814571: Update pipeline state when modifying attributes https://review.opendev.org/c/zuul/zuul/+/814571
- [zuul/zuul] 814772: Allow passing extra attributes to ZKObject.fromZK https://review.opendev.org/c/zuul/zuul/+/814772
- [zuul/zuul] 814862: Bail out when a project moves between connections https://review.opendev.org/c/zuul/zuul/+/814862
- [zuul/zuul] 814773: Move re-enqueue to pipeline processing https://review.opendev.org/c/zuul/zuul/+/814773
- [zuul/zuul] 814899: Delete old build sets immediately https://review.opendev.org/c/zuul/zuul/+/814899
- [zuul/zuul] 815309: Cancel jobs before resetting builds https://review.opendev.org/c/zuul/zuul/+/815309
- [zuul/zuul] 815111: Store builds in Zookeeper https://review.opendev.org/c/zuul/zuul/+/815111
- [zuul/zuul] 815276: Add change queues to change queue managers https://review.opendev.org/c/zuul/zuul/+/815276
- [zuul/zuul] 815277: Refresh pipelines before checking for empty queues https://review.opendev.org/c/zuul/zuul/+/815277
- [zuul/zuul] 815428: Fix GitHub PR (de-)serialization https://review.opendev.org/c/zuul/zuul/+/815428
- [zuul/zuul] 815429: Add missing logger to Build and BuildSet classes https://review.opendev.org/c/zuul/zuul/+/815429
- [zuul/zuul] 815450: Create bundle items during queue deserialization https://review.opendev.org/c/zuul/zuul/+/815450
- [zuul/zuul] 815495: Fix Gerrit change (de-)serialization https://review.opendev.org/c/zuul/zuul/+/815495
- [zuul/zuul] 815616: Only reset the pipeline state if needed https://review.opendev.org/c/zuul/zuul/+/815616
- [zuul/zuul] 815617: Ensure same layout UUID across schedulers https://review.opendev.org/c/zuul/zuul/+/815617
-@gerrit:opendev.org- James E. Blair https://matrix.to/#/@jim:acmegating.com proposed on behalf of Simon Westphahl: [zuul/zuul] 815278: DNM: execute tests with two schedulers https://review.opendev.org/c/zuul/zuul/+/81527823:59

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