Tuesday, 2020-05-05

*** jamesmcarthur has quit IRC00:14
*** cdearborn has quit IRC01:06
*** swest has quit IRC01:55
erbarrsoo, if I added a new job and I see it on the queue but it just stays as queued and gets skipped, what am I missing?02:05
*** rlandy has quit IRC02:08
clarkberbarr: queued means waiting for a test node iirc02:09
*** swest has joined #zuul02:09
clarkbyou might want to check nodepool logs for that label type?02:09
*** rlandy has joined #zuul02:10
erbarrclarkb: ok, i'll check on that, i'm pretty sure they're all the same label02:11
*** rlandy has quit IRC02:12
*** bhavikdbavishi has joined #zuul02:43
*** bhavikdbavishi1 has joined #zuul02:45
*** bhavikdbavishi has quit IRC02:47
*** bhavikdbavishi1 is now known as bhavikdbavishi02:47
*** zxiiro has quit IRC03:03
*** jamesmcarthur has joined #zuul03:06
openstackgerritIan Wienand proposed zuul/nodepool master: Test buildx  https://review.opendev.org/72545604:28
*** jamesmcarthur has quit IRC04:29
*** evrardjp has quit IRC04:35
*** evrardjp has joined #zuul04:36
*** jamesmcarthur has joined #zuul04:47
*** sanjayu_ has joined #zuul04:48
*** jamesmcarthur has quit IRC04:52
*** sgw has quit IRC04:54
*** jamesmcarthur has joined #zuul04:57
*** jamesmcarthur has quit IRC05:25
*** jamesmcarthur has joined #zuul05:25
*** jamesmcarthur has quit IRC05:30
*** ysandeep|away is now known as ysandeep05:49
*** dpawlik has joined #zuul05:59
openstackgerritMerged zuul/zuul-jobs master: Fix fetch-sphinx-tarball fails  https://review.opendev.org/72521006:05
*** jamesmcarthur has joined #zuul06:05
*** jamesmcarthur has quit IRC06:15
openstackgerritAndreas Jaeger proposed zuul/zuul-jobs master: DNM: TEst sphinx failures 1  https://review.opendev.org/72547206:33
openstackgerritAndreas Jaeger proposed zuul/zuul-jobs master: DNM: Test sphinx failure 2  https://review.opendev.org/72547306:33
*** bhavikdbavishi has quit IRC06:42
*** jamesmcarthur has joined #zuul06:48
openstackgerritAndreas Jaeger proposed zuul/zuul-jobs master: DNM: Test sphinx 3  https://review.opendev.org/72547906:51
*** jamesmcarthur has quit IRC06:52
*** sanjayu_ has quit IRC07:09
*** lseki has quit IRC07:09
*** ianw has quit IRC07:09
*** toabctl has quit IRC07:09
*** iurygregory has quit IRC07:09
*** pots has quit IRC07:09
*** reiterative has quit IRC07:09
*** threestrands has quit IRC07:09
*** tobias-urdin has quit IRC07:09
*** noonedeadpunk has quit IRC07:09
*** msuszko has quit IRC07:09
*** AJaeger has quit IRC07:09
*** PrinzElvis has quit IRC07:10
*** tflink has quit IRC07:10
*** zenkuro has quit IRC07:10
*** logan- has quit IRC07:10
*** johanssone has quit IRC07:10
*** ianychoi_ has quit IRC07:10
*** sugaar has quit IRC07:10
*** Tahvok has quit IRC07:10
*** jlk has quit IRC07:10
*** yoctozepto has quit IRC07:10
*** nhicher has quit IRC07:10
*** dpawlik has quit IRC07:10
*** panda|pto has quit IRC07:10
*** ChanServ has quit IRC07:10
*** mnaser has quit IRC07:10
*** evgenyl has quit IRC07:10
*** stevthedev has quit IRC07:10
*** mugsie has quit IRC07:10
*** gundalow has quit IRC07:10
*** mnasiadka has quit IRC07:10
*** adam_g has quit IRC07:10
*** evrardjp has quit IRC07:10
*** jtanner has quit IRC07:10
*** andreaf has quit IRC07:10
*** fbo|off has quit IRC07:10
*** ttx has quit IRC07:10
*** tdasilva has quit IRC07:10
*** donnyd has quit IRC07:10
*** rfolco has quit IRC07:10
*** jkt has quit IRC07:10
*** cloudnull has quit IRC07:10
*** sshnaidm|afk has quit IRC07:10
*** dmsimard has quit IRC07:10
*** fdegir has quit IRC07:10
*** jhesketh has quit IRC07:10
*** corvus has quit IRC07:10
*** pleia2 has quit IRC07:10
*** tristanC has quit IRC07:10
*** irclogbot_0 has quit IRC07:10
*** EmilienM has quit IRC07:10
*** Miouge has quit IRC07:10
*** arxcruz has quit IRC07:10
*** SpamapS has quit IRC07:10
*** decimuscorvinus has quit IRC07:10
*** masterpe has quit IRC07:10
*** Open10K8S has quit IRC07:10
*** kklimonda has quit IRC07:10
*** smyers has quit IRC07:10
*** mwhahaha has quit IRC07:10
*** tributarian has quit IRC07:10
*** persia has quit IRC07:10
*** dcastellani has quit IRC07:10
*** samccann has quit IRC07:10
*** bstinson has quit IRC07:10
*** mgagne has quit IRC07:10
*** openstackgerrit has quit IRC07:10
*** mgoddard has quit IRC07:10
*** frickler has quit IRC07:10
*** bolg has quit IRC07:10
*** ysandeep has quit IRC07:10
*** swest has quit IRC07:10
*** zbr has quit IRC07:10
*** mordred has quit IRC07:10
*** maxamillion has quit IRC07:10
*** vblando has quit IRC07:10
*** rpittau|afk has quit IRC07:10
*** jpena|off has quit IRC07:10
*** ironfoot has quit IRC07:10
*** aspiers has quit IRC07:10
*** erbarr has quit IRC07:10
*** johnsom has quit IRC07:10
*** SotK has quit IRC07:10
*** iamweswilson has quit IRC07:10
*** webknjaz has quit IRC07:10
*** ChrisShort has quit IRC07:10
*** ofosos has quit IRC07:10
*** gmann has quit IRC07:10
*** fungi has quit IRC07:10
*** dmellado has quit IRC07:10
*** shanemcd has quit IRC07:10
*** etp has quit IRC07:10
*** clarkb has quit IRC07:10
*** aluria has quit IRC07:10
*** calebb has quit IRC07:10
*** portdirect has quit IRC07:10
*** Pilou has quit IRC07:10
*** jbryce has quit IRC07:10
*** tobberydberg has quit IRC07:10
*** marvs has quit IRC07:10
*** andreykurilin has quit IRC07:10
*** amotoki has quit IRC07:10
*** freefood has quit IRC07:10
*** mmedvede has quit IRC07:10
*** gothicmindfood has quit IRC07:10
*** jcapitao has joined #zuul07:16
*** avass has joined #zuul07:16
*** dpawlik has joined #zuul07:16
*** sanjayu_ has joined #zuul07:16
*** evrardjp has joined #zuul07:16
*** swest has joined #zuul07:16
*** rfolco has joined #zuul07:16
*** threestrands has joined #zuul07:16
*** lseki has joined #zuul07:16
*** zenkuro has joined #zuul07:16
*** panda|pto has joined #zuul07:16
*** gundalow has joined #zuul07:16
*** dmellado has joined #zuul07:16
*** jkt has joined #zuul07:16
*** ianw has joined #zuul07:16
*** irclogbot_0 has joined #zuul07:16
*** iurygregory has joined #zuul07:16
*** toabctl has joined #zuul07:16
*** zbr has joined #zuul07:16
*** pots has joined #zuul07:16
*** openstackgerrit has joined #zuul07:16
*** johanssone has joined #zuul07:16
*** cloudnull has joined #zuul07:16
*** sugaar has joined #zuul07:16
*** masterpe has joined #zuul07:16
*** PrinzElvis has joined #zuul07:16
*** reiterative has joined #zuul07:16
*** yoctozepto has joined #zuul07:16
*** tflink has joined #zuul07:16
*** ianychoi_ has joined #zuul07:16
*** Tahvok has joined #zuul07:16
*** jlk has joined #zuul07:16
*** ChanServ has joined #zuul07:16
*** AJaeger has joined #zuul07:16
*** msuszko has joined #zuul07:16
*** noonedeadpunk has joined #zuul07:16
*** tobias-urdin has joined #zuul07:16
*** logan- has joined #zuul07:16
*** mgagne has joined #zuul07:16
*** sshnaidm|afk has joined #zuul07:16
*** mordred has joined #zuul07:16
*** mnaser has joined #zuul07:16
*** maxamillion has joined #zuul07:16
*** vblando has joined #zuul07:16
*** tepper.freenode.net sets mode: +o ChanServ07:16
*** Open10K8S has joined #zuul07:16
*** kklimonda has joined #zuul07:16
*** dmsimard has joined #zuul07:16
*** jtanner has joined #zuul07:16
*** portdirect has joined #zuul07:16
*** fdegir has joined #zuul07:16
*** jhesketh has joined #zuul07:16
*** mugsie has joined #zuul07:16
*** stevthedev has joined #zuul07:16
*** evgenyl has joined #zuul07:16
*** andreaf has joined #zuul07:16
*** adam_g has joined #zuul07:16
*** mnasiadka has joined #zuul07:16
*** Pilou has joined #zuul07:16
*** ttx has joined #zuul07:16
*** tobberydberg has joined #zuul07:16
*** rpittau|afk has joined #zuul07:16
*** smyers has joined #zuul07:16
*** nhicher has joined #zuul07:16
*** EmilienM has joined #zuul07:16
*** mgoddard has joined #zuul07:16
*** corvus has joined #zuul07:16
*** pleia2 has joined #zuul07:16
*** Miouge has joined #zuul07:16
*** fbo|off has joined #zuul07:16
*** jpena|off has joined #zuul07:16
*** mwhahaha has joined #zuul07:16
*** tributarian has joined #zuul07:16
*** ironfoot has joined #zuul07:16
*** aspiers has joined #zuul07:16
*** frickler has joined #zuul07:16
*** ofosos has joined #zuul07:16
*** bolg has joined #zuul07:16
*** shanemcd has joined #zuul07:16
*** marvs has joined #zuul07:16
*** andreykurilin has joined #zuul07:16
*** donnyd has joined #zuul07:16
*** tdasilva has joined #zuul07:16
*** arxcruz has joined #zuul07:16
*** SpamapS has joined #zuul07:16
*** ysandeep has joined #zuul07:16
*** decimuscorvinus has joined #zuul07:16
*** persia has joined #zuul07:16
*** tristanC has joined #zuul07:16
*** erbarr has joined #zuul07:16
*** freefood has joined #zuul07:16
*** johnsom has joined #zuul07:16
*** calebb has joined #zuul07:16
*** SotK has joined #zuul07:16
*** etp has joined #zuul07:16
*** iamweswilson has joined #zuul07:16
*** webknjaz has joined #zuul07:16
*** dcastellani has joined #zuul07:16
*** samccann has joined #zuul07:16
*** ChrisShort has joined #zuul07:16
*** gmann has joined #zuul07:16
*** jbryce has joined #zuul07:16
*** amotoki has joined #zuul07:16
*** clarkb has joined #zuul07:16
*** mmedvede has joined #zuul07:16
*** gothicmindfood has joined #zuul07:16
*** fungi has joined #zuul07:16
*** bstinson has joined #zuul07:16
*** aluria has joined #zuul07:16
*** yolanda has joined #zuul07:29
*** tosky has joined #zuul07:32
*** rpittau|afk is now known as rpittau07:34
*** bhavikdbavishi has joined #zuul07:43
*** jpena|off is now known as jpena07:52
*** guillaumec has joined #zuul07:53
*** threestrands has quit IRC08:01
*** ysandeep is now known as ysandeep|lunch08:17
zbrAJaeger: https://review.opendev.org/#/c/725091/ if you can, is the kind of review that can easily need rebase if it gets outdated08:19
openstackgerritMerged zuul/zuul master: Add a link to the user survey to the end of the quickstart.  https://review.opendev.org/72541508:21
*** jamesmcarthur has joined #zuul08:26
*** decimuscorvinus has quit IRC08:34
*** decimuscorvinus has joined #zuul08:34
*** jamesmcarthur has quit IRC08:35
*** bhavikdbavishi has quit IRC08:45
*** bhavikdbavishi has joined #zuul08:46
openstackgerritMerged zuul/zuul-jobs master: Enable yamllint  https://review.opendev.org/72509108:46
openstackgerritJan Kubovy proposed zuul/zuul master: Connect fingergw to Zookeeper  https://review.opendev.org/71687508:55
*** hashar has joined #zuul09:08
zbrAJaeger: thanks!09:09
openstackgerritSorin Sbarnea (zbr) proposed zuul/zuul-jobs master: yamlint: EOF newlines and comments indent  https://review.opendev.org/72551609:16
*** sshnaidm|afk is now known as sshnaidm09:22
*** bhavikdbavishi has quit IRC10:02
*** tobias-urdin has quit IRC10:30
*** AJaeger has quit IRC10:30
*** hashar has quit IRC10:30
*** noonedeadpunk has quit IRC10:30
*** AJaeger has joined #zuul10:30
*** noonedeadpunk has joined #zuul10:31
*** jamesmcarthur has joined #zuul10:31
*** ysandeep|lunch is now known as ysandeep10:38
*** jamesmcarthur has quit IRC10:46
*** rpittau is now known as rpittau|bbl10:52
*** jcapitao is now known as jcapitao_lunch11:00
*** armstrongs has joined #zuul11:04
*** jpena is now known as jpena|lunch11:40
*** bhavikdbavishi has joined #zuul11:42
*** hashar has joined #zuul11:51
*** smyers has quit IRC12:03
*** smyers has joined #zuul12:04
*** rpittau|bbl is now known as rpittau12:06
*** bhavikdbavishi has quit IRC12:07
*** jcapitao_lunch is now known as jcapitao12:22
*** rlandy has joined #zuul12:31
openstackgerritSorin Sbarnea (zbr) proposed zuul/zuul-jobs master: Made sequence indent consistent  https://review.opendev.org/72553812:33
*** Goneri has joined #zuul12:42
*** jpena|lunch is now known as jpena12:43
openstackgerritTobias Henkel proposed zuul/zuul master: Support per branch change queues  https://review.opendev.org/71853112:44
*** bhavikdbavishi has joined #zuul12:46
openstackgerritTobias Henkel proposed zuul/zuul master: WIP: Move queue from pipeline to project  https://review.opendev.org/72018212:47
*** ysandeep is now known as ysandeep|brb12:47
AJaegermnaser: can we merge https://review.opendev.org/724132 now, please?12:50
mnaserAJaeger: +2 but tbh not feeling great that we cant really test it :\12:51
* mordred is landing the buildx patch - it has 3x +212:58
*** sgw has joined #zuul13:03
AJaegermnaser: understood - do you have a quick way to test it once it merges?13:05
mnaserAJaeger: short of merging a change that promotes an image (i'll probably do that at some point today in our operator work).. nope13:07
AJaegermnaser: I see - ok.13:09
avassmnser: yeah I don't like it either13:10
avassmnaser, AJaeger: it would be good if we could come up with a way to do that13:11
mordred++13:18
openstackgerritMerged zuul/zuul-jobs master: Support multi-arch image builds with docker buildx  https://review.opendev.org/72233913:22
*** tobiash has joined #zuul13:23
*** ysandeep|brb is now known as ysandeep13:24
tristanCtobiash: hello, welcome back! when you have a moment, could you please check some operator refactor, starting from https://review.opendev.org/719965 . Otherwise if that's ok with you, i'd like to move forward with those13:31
tobiashtristanC: sure, I'll have a look later today13:32
*** bhavikdbavishi has quit IRC13:36
tristanCmnaser: corvus: mordred: following up on the cert-manager discussion, the zuul-operator can now uses Issuer and Certificate ressources by default and setting the `withCertManager` attribute to false enables backward compatibility using the legacy cert creation tasks. Is that ok for you? (implementation is https://review.opendev.org/718840 , https://review.opendev.org/719110 and13:40
tristanChttps://review.opendev.org/719185)13:40
*** jamesmcarthur has joined #zuul13:59
*** michael-beaver has joined #zuul14:04
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: Write buildkitd.toml in use-buildset-registry  https://review.opendev.org/72483714:06
mordredtobiash: https://review.opendev.org/#/c/725431/ <-- clarkb found that jemalloc with py3.7 and py3.8 seems to be related to our memory leak issue. I believe you pinned to 3.6 for leak issues - thought you might be interested. winning combo for us seems like it might be 3.8 with no jemalloc14:14
tobiashmordred: interesting, it's correct that we pinned to 3.6 due to leak issues14:15
tobiashour zuul-web still has leak issues btw, but we don't care atm due to openshift14:15
*** armstrongs has quit IRC14:16
openstackgerritMerged zuul/zuul-operator master: Refactor file creation to function files  https://review.opendev.org/71996514:17
openstackgerritMerged zuul/zuul-operator master: Refactor kubernetes resources constructor to the function file  https://review.opendev.org/71999114:18
mordredtobiash: nod14:18
mordredtobiash: well - we'll let you know how zuul-web does for us with 3.814:19
tobiashmordred: cool, thanks14:19
openstackgerritMonty Taylor proposed zuul/nodepool master: Build multi-arch images for x86 and arm  https://review.opendev.org/72248314:23
openstackgerritMonty Taylor proposed zuul/nodepool master: Build nodepool with python3.8  https://review.opendev.org/72561114:23
openstackgerritMerged zuul/zuul-operator master: Refactor deployment and statefulset functions  https://review.opendev.org/72000714:23
openstackgerritMerged zuul/zuul-operator master: Refactor backend services  https://review.opendev.org/72001914:23
openstackgerritMerged zuul/zuul-operator master: Refactor Zuul services  https://review.opendev.org/72002414:23
openstackgerritMonty Taylor proposed zuul/zuul-registry master: Bump to python 3.8 base images  https://review.opendev.org/72561214:24
jktwhat is the status of that merger failure? (false messages "change failed to merge", and/or a job testing something else than supposed to test)14:27
jktI think it was fixed by https://opendev.org/zuul/zuul/commit/9b300bc8dfc59584e3046337e7c001fc927d670f, but then I saw https://review.opendev.org/#/c/723800/14:28
mordredcorvus, avass, clarkb, tristanC: when you get a sec, https://review.opendev.org/#/c/724837/ is green, and so is the tempfile cleanup: https://review.opendev.org/#/c/725387/ - also, https://review.opendev.org/#/c/725380/ is another buildx cleanup that clarkb noticed14:34
openstackgerritMerged zuul/zuul-jobs master: Revert "Revert "Do not set buildset_fact if it's not present in results.json""  https://review.opendev.org/72413214:35
*** jamesmcarthur has quit IRC14:53
*** jamesmcarthur_ has joined #zuul14:53
*** zxiiro has joined #zuul15:08
openstackgerritMerged zuul/zuul-jobs master: Don't pull and retag in buildx workflow  https://review.opendev.org/72538015:14
*** ysandeep is now known as ysandeep|afk15:15
AJaegerzuul-jobs maintainers, two reviews for buildset-registry, please: https://review.opendev.org/724841 and https://review.opendev.org/72471715:17
AJaegerand a third one: https://review.opendev.org/72484015:19
AJaegermordred: did you see the comment on https://review.opendev.org/#/c/725387/1/roles/build-docker-image/tasks/setup-buildx.yaml15:25
clarkbmordred: tristanC has a good comment on the tempfile change15:35
clarkbmordred: and it applies to the next change in the series15:37
*** ysandeep|afk is now known as ysandeep15:38
clarkbmordred: I left a couple of things on https://review.opendev.org/#/c/724837/6 where I don't feel I know enough about ansible or buildkit to know if those are issues15:44
clarkbbutI think they should eb considered and ruled out at least15:44
*** panda|pto has quit IRC15:46
*** jamesmcarthur_ has quit IRC15:49
*** ysandeep is now known as ysandeep|away16:02
mordredclarkb, tristanC : oh - hah. for some reason I thought they'd get cleaned up - but no, we do need to rm them ourselves. I'll update that16:05
tobiashcorvus: the repl just saved my ass, we had an endless loop in processQueue of one pipeline and a huge queue of running items and a blocking zuul dequeue command16:08
tobiashthe repl server allowed me to dequeue out of band the items of that pipeline :)16:08
corvustobiash: wow, that's great it was there and terrible there was a bug like that -- do you know the endless loop happened?16:09
tobiashthe scenario was one project had a queue in the gate and force merged a config change that removed a project-template with some jobs because they were broken. This lead to a tenant reconfig removing those jobs from the live items. Then the processQueue always returned changed=True despite doing nothing in that pipeline16:10
tobiashI suspect something in processOneItem marked the item as changed but I didn't find anything yet, and there was also no useful logging about why it thought it changed an item16:11
AJaegerspeaking about tempfile, do we need cleanup these tempfile usages as well: https://review.opendev.org/#/c/718694/10/roles/ensure-dhall/tasks/main.yaml and https://review.opendev.org/#/c/717507/13/roles/ensure-package-repositories/tasks/RedHat.yaml ?16:12
*** rpittau is now known as rpittau|afk16:14
*** michael-beaver has quit IRC16:14
corvustristanC: looks great, thanks!16:18
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: Use tempfile in buildx build  https://review.opendev.org/72538716:19
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: Write buildkitd.toml in use-buildset-registry  https://review.opendev.org/72483716:19
*** sgw has quit IRC16:20
mordredclarkb, tristanC, corvus: ^^I cleaned up the tempfiles. in the first patch I did not remove the buildkitd.toml tempfile, because it gets bind-mounted in. we get rid of that tempfile in the next patch, so I think it's ok16:20
corvusjkt: i don't think we understand the error surfaced by https://opendev.org/zuul/zuul/commit/9b300bc8dfc59584e3046337e7c001fc927d670f yet to know if https://review.opendev.org/723800 is a good idea -- our best guess is that maybe we need to put a slightly longer delay than "now" on the gc, but i don't think anyone has gotten a reproducer yet to verify16:20
clarkbmordred: re mirror locations if the job was run on a static host and then run again (granted not cleaning up after all that seems like it brings its own set of problems)16:22
avassAJaeger: We probably should but I don't think it's urgent16:24
avassAJaeger: oh, but those actually use the tempfile module?16:25
clarkbmordred: ya looks like tristanC has pointed out that same mirror duplicates issue. I think we should address that since it is simple to do so16:26
mordredclarkb: ok. let's do it in a followup - because we should update the other file that this was copied from too16:27
AJaegeravass: does tempfile module clean up? Checking the docs, it does not. Let me propose a change...16:27
clarkbmordred: ya tristanc has already done that16:27
clarkbmordred: its linked to in the change16:27
clarkbfwiw I think my suggestion is a simpler fix than the one tristanC has proposed in the other python module16:28
clarkbbut maybe I don't understand the data structurethere16:28
avassAJaeger: it doesn't clean it up as far as I know but it (tries) to make sure it's put in a place where it can put the file16:28
*** panda has joined #zuul16:29
AJaegeravass: yes - and uses restrictive access.16:30
openstackgerritAndreas Jaeger proposed zuul/zuul-jobs master: Remove some temporary files  https://review.opendev.org/72565016:30
AJaegeravass, ^16:30
avassAJaeger: where is the ensure-dhall tempfile created?16:31
*** sgw has joined #zuul16:31
AJaegeravass: top of the file16:32
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: Use tempfile in buildx build  https://review.opendev.org/72538716:33
avassAJaeger: ah, wait. I feel stupid, I missed that it folded the beginning of the file16:33
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: Write buildkitd.toml in use-buildset-registry  https://review.opendev.org/72483716:33
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: use-buildset-registry: fix modify_registries_conf library idempotency  https://review.opendev.org/72565116:33
mordredclarkb, tristanC, corvus : ^^ I rebased tristanC's change into the stack then applied the same fix to the buildkitd change16:33
openstackgerritMerged zuul/zuul-operator master: Add initial withCertManager input toggle  https://review.opendev.org/71884016:35
*** evrardjp has quit IRC16:35
*** evrardjp has joined #zuul16:36
openstackgerritMerged zuul/zuul-operator master: Add gearman tls secret provided by cert-manager  https://review.opendev.org/71911016:38
*** dpawlik has quit IRC16:40
openstackgerritMerged zuul/zuul-operator master: Add registry tls secret provided by cert-manager  https://review.opendev.org/71918516:40
openstackgerritMerged zuul/zuul-operator master: Add zuul-preview service  https://review.opendev.org/71841916:41
*** sgw has quit IRC16:47
*** sgw has joined #zuul16:47
openstackgerritMerged zuul/zuul-operator master: test: refactor run tasks to include file  https://review.opendev.org/71815816:51
avassmordred: ++, idempotency is a bit more important if you're not using single use nodes :)16:52
AJaegermordred, tristanC, did you duplicate https://review.opendev.org/724840 with https://review.opendev.org/725651 ?16:53
AJaegerso, want to abandon 724840?16:54
AJaegermordred: https://review.opendev.org/#/c/725387/3/roles/build-docker-image/tasks/setup-buildx.yaml does not remove the toml tempfile, or does it?16:55
clarkbmordred: tristanC can you review my comments on https://review.opendev.org/#/c/724837/ and https://review.opendev.org/#/c/725651/116:57
tristanCclarkb: done16:58
clarkbtristanC: right but there could be 5 buildset registries one for each different upstream registry, dockerhub, quay, google cloud, etc16:59
clarkbtristanC: you can't assume there is only one16:59
clarkbat least that was my understanding of it16:59
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: use-buildset-registry: fix modify_registries_conf library idempotency  https://review.opendev.org/72565116:59
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: Write buildkitd.toml in use-buildset-registry  https://review.opendev.org/72483716:59
mordredclarkb: thanks! good catches17:00
tristanCclarkb: then checking if the location is an element of the mirror list is not enough, we also need to ensure it is before any non buildset registry17:00
openstackgerritMerged zuul/zuul-operator master: Add support for custom container image name  https://review.opendev.org/72076217:00
openstackgerritMerged zuul/zuul-operator master: Add support for global image prefix  https://review.opendev.org/72078017:00
openstackgerritMerged zuul/zuul-operator master: Refactor ZooKeeper service configuration  https://review.opendev.org/72082217:00
mordredclarkb, tristanC: hrm.17:01
corvusclarkb: there's only ever one buildset registry17:01
clarkbcorvus: weren't we proxying with it to the backends too?17:01
mordredso maybe checking mirrors[0] is the better thing?17:01
tristanCand if there is only one buildset registry, as it was in my case, then checking for the head was enough17:01
mordredyeah. I think I should revert to checking for [0]17:02
corvusclarkb: i don't think we got around to that yet -- but that wouldn't be another buildset registry, that would be a second mirror, right?17:02
mordredit's possible that, on a static node, perhaps someone later added another registry mirror in front of the buildset registry17:02
*** ysandeep|away is now known as ysandeep17:02
clarkbcorvus: maybe? I'm looking at the get_location code and it seems to assume its mapping there17:03
mordredso maybe we should check to see if it's first - and also check to see if it's later in the list and if so remove it from there and move it to the front17:03
mordredso that we don't wind up in a cycle of adding it over and over again fighting some other misbehaving system17:03
corvusclarkb: this is reasonable: quay.io mirrors=['buildset_registry:/quay.io', 'mirror.rax/quay.io']17:03
mordredyeah17:03
clarkbdict(location=get_location(reg['prefix'], location)) specifically is saying map quay to this thing and google clodu to that thing17:03
corvusi don't think we do that, but that's something we can/should do17:03
mordredand I think, given sequencing, we'd expect the "set mirrors" code to run before the "use-buildset-registry" code17:03
mordredso it would go from [] to ['mirror.rax/quay.io'] to ['buildset_registry:/quay.io', 'mirror.rax/quay.io']17:04
clarkbcorvus: that data structure doesn't seem to match what we've got17:04
mordredclarkb: it's different for buildkitd.toml and registries.conf17:04
mordredbecause of course it is17:04
clarkbcorvus: what we have in the code is mirrors=[ {quay, buildset/quay} ]17:05
corvusclarkb: well, i haven't looked at these changes, i'm just responding to your suggestion that we would have more than one buildset registry17:05
clarkbmordred: ya I'm talking about tristanC's change17:05
corvusclarkb: "corvus: what we have in the code is mirrors=[ {quay, buildset/quay} ]"  <-- where do we have that?17:06
mordredclarkb: yeah. that's registries. it's [{'location': 'buildset_registry:/quay.io'}]17:06
clarkb(I'm inferring the datastructure from the code here so could be wrong, but it seems we already support doing multiple different locations in the mirror dict list, but tristanc's change assumes one entry only)17:06
mordredcorvus: nowhere17:06
mordredclarkb: the dict structure is mirrors=17:06
clarkbmordred: mirrors is a list17:07
mordredyes. of dicts with the key location17:07
mordredso for registries.conf it's mirrors=[{'location': 'buildset_registry:/quay.io'}, {'location': 'mirror.rax/quay.io'}] and for buildkitd.toml it's mirrors=['buildset_registry:/quay.io', 'mirror.rax/quay.io']17:08
clarkbmordred: and they are both already pre prefixed?17:10
clarkb(the toml one was pretty clearly already namespaced)17:10
corvusbuildkitd.toml and registries.conf are both toml17:11
clarkbah ok I see we modify the existing data structure in place17:11
clarkb(how did they end up with different data structures using the same serialization format to encode the same data...)17:12
mordredclarkb: right?17:13
clarkbok I'm up to speed now. I think both versions are correct beacuse we insert at the front. So unless someone changed the order out of band we'd still be enforcing that list order17:13
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: use-buildset-registry: fix modify_registries_conf library idempotency  https://review.opendev.org/72565117:13
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: Write buildkitd.toml in use-buildset-registry  https://review.opendev.org/72483717:13
clarkbtristanC's version will override any out of band changes which may be desireable17:13
mordredclarkb: yeah - but I think tristanC's original is more correct- yeah17:13
clarkbsince now that you are back into the zuul context we want to enforce zuul's expectations17:13
mordredI think the result of use-buildset-registry is for the buildset registry to be correctly configured17:13
mordredyup17:13
tobiashtristanC: it seems like your operator stack has merged already, is anything left for review?17:14
corvusi think if we want to include mirrors, we should do it by standardizing mirror site variables and using it directly17:14
mordredcorvus: ++17:14
tristanCclarkb: mordred: for it worth i also don't really understand the toml serialized data structure, i just reverse engineered the function to avoid further modification after the first usage17:15
tristanCtobiash: nop, it seems like mordred and corvus approved all the important changes, though i'd be happy to answer any question you might have about the refactor17:16
avassmordred: weren't we supposed to check if the mirror already was in the list and move it if it was, insert it at index 0 if it wasn't? or did i get lost?17:20
mordredavass: I decided to just stick with inserting at 0 for now17:21
avassmordred: sure17:21
*** bhavikdbavishi has joined #zuul17:21
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: Use tempfile in buildx build  https://review.opendev.org/72538717:24
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: use-buildset-registry: fix modify_registries_conf library idempotency  https://review.opendev.org/72565117:24
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: Write buildkitd.toml in use-buildset-registry  https://review.opendev.org/72483717:24
*** y2kenny41 has joined #zuul17:24
mordredcorvus, clarkb, avass : ^^ sorry for the churn - the tests caught a sequencing error - yay for tests!17:24
*** y2kenny41 has left #zuul17:24
mordredcorvus, clarkb : 725387 is the one that had to get updated17:24
*** bhavikdbavishi1 has joined #zuul17:24
*** bhavikdbavishi has quit IRC17:26
*** bhavikdbavishi1 is now known as bhavikdbavishi17:26
jktcorvus: ok. It was not on "mine" Zuul, so I cannot really debug this one, it was at mnaser's at vexxhost17:31
* jkt is on a release, not on git17:31
mnaserthe one thing to note on that, is that jkt doesnt use gating but submits using gerrit themselves17:31
mnaserso i've been pondering if that has been a potential root cause17:32
avassmnaser, jkt: I think we've experienced problems like that17:32
jktthat's right, we're only using check17:32
*** jcapitao has quit IRC17:33
avassI don't remember exactly what the problem was, but I do remember having some kind of problem when submitting manually17:37
*** jpena is now known as jpena|off17:44
*** iurygregory has quit IRC17:49
openstackgerritAndreas Jaeger proposed zuul/zuul-jobs master: Remove some temporary files  https://review.opendev.org/72565017:51
AJaegermordred: could you check https://review.opendev.org/725298, please?17:55
*** ysandeep is now known as ysandeep|away17:57
openstackgerritMonty Taylor proposed zuul/zuul-registry master: Run unittests on python 3.8  https://review.opendev.org/72566217:59
*** yolanda has quit IRC17:59
openstackgerritAndreas Jaeger proposed zuul/zuul-jobs master: Add py38 testing  https://review.opendev.org/72566318:00
openstackgerritAndreas Jaeger proposed zuul/zuul-jobs master: Add py38 testing  https://review.opendev.org/72566318:03
corvusclarkb: fyi i spent yesterday afternoon working on a test case for the loading_errors bug; haven't quite gotten there yet.18:16
clarkbcorvus: thanks!18:17
openstackgerritMerged zuul/zuul-jobs master: Use tempfile in buildx build  https://review.opendev.org/72538718:22
openstackgerritAndreas Jaeger proposed zuul/zuul-jobs master: Fix bare 'item' in build-container-image  https://review.opendev.org/72529818:22
AJaegeravass, corvus, mordred, I think that is the right fix ^18:23
AJaegeravass: sorry for taking over - that was quicker than explaining. You found a genuine bug - thanks18:23
AJaegermordred: thanks for your question mark when reviewing - that let me triple check ;)18:24
mordredAJaeger: ooh neat. we should maybe put a loop_control: loop_var on that include18:26
AJaegermordred: yes, in https://review.opendev.org/#/c/724910/22/roles/build-container-image/tasks/main.yaml18:27
AJaeger(which needs updating due to merge conflict)18:27
*** y2kenny has joined #zuul18:27
*** hashar has quit IRC18:27
mordredAJaeger: yup - so I think we should rebase one on the other - because the loop var isn't going to be right when those two merge18:27
avassmordred, AJaeger: I'll update that :)18:27
avassAJaeger: so the set_fact was in the wrong task file?18:28
AJaegeravass: yes, read roles/build-container-image/common.rst on the semantics18:28
AJaegeravass: if you want to +2A https://review.opendev.org/#/c/725298/3, you can rebase 724910 on top of it18:30
mordred++18:30
AJaegerhttps://zuul.opendev.org/t/zuul/build/8b65dd48638446399e4f0d7bb6d933ca hsa "Error: Error copying image to the remote destination: Error writing blob: Error uploading layer to https://zuul-jobs.buildset-registry:5000/v2/downstream/image/blobs/uploads/27436eb77a2447b4a05b14c2790b986a?digest=sha256%3A1dbcab28ce46b65c0174e5e82658492107396fead31e9144c343e6bc96e471c7: received unexpected HTTP status: 50018:31
AJaegerInternal Server Error" in the podman job18:31
AJaegersame error in https://zuul.opendev.org/t/zuul/build/f9862a50edf44b64ba891ac94babe14318:32
*** bhavikdbavishi has quit IRC18:32
*** jamesmcarthur has joined #zuul18:33
*** bhavikdbavishi has joined #zuul18:34
openstackgerritAlbin Vass proposed zuul/zuul-jobs master: Fix bare 'item' in build-container-image  https://review.opendev.org/72529818:34
openstackgerritAlbin Vass proposed zuul/zuul-jobs master: ansible-lint: use matchplay instead of matchtask  https://review.opendev.org/72491018:34
openstackgerritAlbin Vass proposed zuul/zuul-jobs master: use zj_image instead of image as loopvar  https://review.opendev.org/72501218:34
openstackgerritAlbin Vass proposed zuul/zuul-jobs master: use zj_log_file instead of item as loop_var  https://review.opendev.org/72501318:34
openstackgerritAlbin Vass proposed zuul/zuul-jobs master: Check blocks recursively for loops  https://review.opendev.org/72496718:34
avassoh, oops, rebased the first one as well18:34
avassah, a rebase doesn't reset the votes, good :)18:34
AJaegerok, I'll add my +3 to it ;)18:35
openstackgerritAlbin Vass proposed zuul/zuul-jobs master: ansible-lint: use matchplay instead of matchtask  https://review.opendev.org/72491018:37
fungiavass: yeah, a rebase with no substantive changes shouldn't reset votes, but if you alter the commit message or have to solve a merge conflict then it clears them18:39
fungicode review votes that is18:39
fungiverify votes still get cleared the way we've got gerrit configured18:39
AJaegeravass: you missed to change the item that I moved, see my inline comment18:40
avassAJaeger: yeah working on that ;)18:40
AJaegerno stress ;)18:41
avasssome tests like eating up all my ram so my laptop freezes so I usually just push to get the testresults instead18:41
openstackgerritAlbin Vass proposed zuul/zuul-jobs master: ansible-lint: use matchplay instead of matchtask  https://review.opendev.org/72491018:42
avassespecially flake8 in zuul for some reason18:43
y2kennyI understand that if I push a patch series, jobs will get triggered on all of them speculatively.  Is there a way to trigger jobs on a specific range of commits outside of this use case?  The use case I am thinking of is git piset (https://hoelz.ro/blog/git-pisect) but there could be other use cases where I want to leverage the CI infrastructure to18:43
y2kennyfind some optimum.18:43
openstackgerritAlbin Vass proposed zuul/zuul-jobs master: use zj_image instead of image as loopvar  https://review.opendev.org/72501218:43
openstackgerritAlbin Vass proposed zuul/zuul-jobs master: use zj_log_file instead of item as loop_var  https://review.opendev.org/72501318:43
AJaegeravass: thanks, LGTM18:43
openstackgerritAlbin Vass proposed zuul/zuul-jobs master: Check blocks recursively for loops  https://review.opendev.org/72496718:43
fungiy2kenny: you can set a queue "window" size in a dependent pipeline18:45
AJaegermordred: do you have time to review 724910 ?18:46
y2kennyfungi: how would I specify the range?  or is this a case where using the cli enqueue would be better?18:47
avassAJaeger: I figured out what that first field of the return value from matchplay does by the way. It's the message shown when you don't set parseable output from ansible-lint :)18:47
*** bhavikdbavishi has quit IRC18:47
y2kennyfungi: it's possible that I am not describing my use case clearly.  Please let me know if that is the case.18:47
fungiy2kenny: https://zuul-ci.org/docs/zuul/reference/pipeline_def.html#attr-pipeline.window18:48
*** panda is now known as panda|pto18:48
fungiit's the n newest changes to enter the pipeline for that queue at any point in time18:48
fungier, i mean n oldest changes, sorry18:48
AJaegeravass: interesting18:48
y2kennyfungi: ok.18:50
mordredAJaeger: lgtm - I think it might be good to have mnaser or tristanC look too - just so we've got some eyes from folks running other zuuls too18:50
avassmordred: sure18:51
fungiy2kenny: the idea with the window is that you can set an urgent precedence for a dependent pipeline but prevent it from monopolizing all your available resources and starving lower precedence pipelines when there's a lot of activity18:51
AJaegertristanC, mnaser, could you review 724910 , please?18:51
y2kennyfungi: I think I haven't wrap my head around dependent pipeline just yet.18:52
fungidependent pipelines just construct ordered queues for changes entering them, so that each change is tested with the changes ahead of it in the queue18:53
*** iurygregory has joined #zuul18:53
y2kennyfungi: also I am not sure how it fit with the pisect use case.  For dependent pipeline, changes are still queued by the source repo event right?  The only other way to queue an arbitary change is via the enqueue command?18:54
fungii'm looking for pisect now. is it some raspberry pi based test platform?18:55
fungioh, a distributed git bisect engine18:55
fungiso you're wanting to do git bisect on the branch history?18:56
y2kennyI want to do multiple build on the branch history18:56
fungiand run each bisection point as a separate buildset i guess?18:56
avassinteresting18:56
y2kennywith bisect essentially you pretty much do things serially one pivot at a time right?18:56
mordredy2kenny: https://docs.openstack.org/infra/publications/zuul/#(18) has an animation18:56
y2kennywhat pisect does is try more than 1 pivot at the same time18:57
mordredy2kenny: click in the browser window to advance each animation point18:57
mordredbut it shows what the dependent pipeline does18:57
y2kennymordred: oh pretty :)18:57
fungiy2kenny: got it, i think it's a very cool use case, i don't know that zuul has anything to map to that design (yet) since it's primarily code review event driven18:57
fungii'm trying to imagine how the reporting would work, for one thing18:58
clarkba dependent pipeline is basically that for predicted states18:58
mordredy2kenny: it's not 100% as understandable without our narration - but it might be helpful. there are youtube videos of both corvus and I narrating versions of that animation , but I don't know where they are off the top of my head18:58
fungizuul's main focus is on testing things which haven't merged, while git bisect is focused on locating the point at which a regression was introduced (possibly long) after it merged18:58
corvusmordred, y2kenny: there's a video on the zuul homepage: https://zuul-ci.org/18:59
y2kennycorvus, mordred: I will look at the video... the narration is important :)18:59
y2kennyfungi: I think the reporting as it is right now should be fine.  Just knowing the pass/fail is useful.  The idea is to let people leverage the existing CI farm and job definitions that already exist.19:01
fungiwhat exactly passes or fails though, and what state are you reporting on?19:02
openstackgerritMerged zuul/zuul-jobs master: use-buildset-registry: add Fedora certifacts vars  https://review.opendev.org/72471719:02
openstackgerritMerged zuul/zuul-jobs master: Fix bare 'item' in build-container-image  https://review.opendev.org/72529819:02
avassfungi: couldn't that work similar to tags though? report the state of the commit?19:03
y2kennyfungi: pass/fails of the job.  Perhaps you are thinking that all the jobs should be passing on any of the commit because they are all gated if fail.19:03
fungiavass: sure, which commit?19:03
avassfungi: for each commit that is tested?19:04
avassfungi: not sure if I'm missing something19:04
y2kennybut there could be new job introduced after the commit has pass the gate19:04
fungiavass: yeah, i'm not sure how to consolidate those and what triggers them (a timer?)19:04
avassfungi: probably a timer yeah19:04
y2kennyfungi: I think that's probably what's missing... a trigger that's like a timer19:05
fungiy2kenny: oh, so you would want to run regression testing immediately after each change merges rather than before it merges>19:05
fungioh, if a timer trigger is okay, zuul already has that19:05
fungihttps://zuul-ci.org/docs/zuul/reference/drivers/timer.html19:06
y2kennyfungi: but not quite a timer trigger though.  Time trigger essentially enqueue a commit by a specific time.  What this crazy thing needs is a trigger that enqueue a range of commit.19:06
avassfungi, y2kenny: maybe something like, trigger on a timer or each x number of merges, start a buildset for y number of those commits and keep iterating until you find the most recent stable commit?19:06
y2kennyfungi: anyway... I am probably abusing zuul use case a bit here :)19:06
mordredy2kenny: you wou;dn't be able to add a new job19:07
mordredthat didn't pass19:07
fungiso once a day take the branch tip state and run pisect on that but tell it to only consider the n most recent commits in the branch history and prove it with an n-node nodeset?19:07
mordredy2kenny: because adding new jobs tests running the jobs against the repos and is also done in the dependent pipeline19:07
avassfungi: something like that19:08
y2kennymordred: oh yea, that's true19:08
fungiavass: that should already be doable with what zuul has today19:08
avassyeah I guess it would19:08
y2kennymordred: but do you understand what I am trying to abuse zuul to do? ;)19:09
fungiavass: but it would treat the pisect jobs for the current branch state as a single buildset rather than separate buildsets for each n commits in the branch history19:09
avassfungi: yeah19:09
fungino idea if that's acceptable for the desired case or not19:09
fungiand what the real difference is between treating them as individual buildsets vs one buildsets where the jobs are multinode19:10
avassfungi: individual buildsets, vs one build19:10
fungiavass: well, unless you had multuple pisect jobs you wanted to run which tested different things19:11
avassyeah :)19:11
fungibut regardless, wondering why one job couldn't perform a distributed pisect across a multinode nodeset and report the results instead of needing it to be run multiple times with individual commits as separate builds19:12
avassI think it could be useful for tests that are too long to run in the gate or requires resources that are very limited19:12
fungiif you want to restrict it to max 5-node nodesets, have a n-5..n job, a n-10..n-6 job, a n-15..n-11 job and so on19:13
y2kennyI think the motivation is similar to the timer trigger that trigger jobs that are not run at gate19:14
y2kennyanother use case is outside of regression actually.19:14
avassy2kenny: thanks for the tip :)19:14
y2kennylet say the test result is not some pass/fail but some performance values (like completion time for example)19:15
openstackgerritMerged zuul/zuul-jobs master: use-buildset-registry: fix modify_registries_conf library idempotency  https://review.opendev.org/72565119:15
fungiy2kenny: so how about if the timer trigger could trigger on multiple states in the branch history besides just the branch tips?19:17
y2kennyfungi: yes, something like that19:17
fungialso yeah, we've seen similar post-merge testing interest for things like tracking test coverage19:17
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: Write buildkitd.toml in use-buildset-registry  https://review.opendev.org/72483719:22
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: Include distro-specific vars  https://review.opendev.org/72566819:22
mordredclarkb, avass, tristanC: ^^ the final "write buildkitd.toml in use-buildset-registry" patch needs further debuggin, so if you don't mind, that should unstick the nodepool multi-arch job19:23
mordredcorvus: ^^19:24
avassmordred: done19:27
mordredavass: thx!19:27
y2kennyoh a separate note, I started to introduce my zuul deployment to a teammate and I got another "better than Jenkins"  testimony19:27
y2kenny(just one more data point)19:28
mordred\o/19:29
*** michael-beaver has joined #zuul19:30
mordredcorvus: https://zuul.opendev.org/t/zuul/build/02cbe4f061114b629734022c0ff084c8 multi-arch failed with the latest version of the use-buildset-registry patch19:44
mordredcorvus: I'm hoping maybe you can see where it went poorly19:45
mordredcorvus: nm. I see the logic error19:46
fungiy2kenny: that's awesome, thanks for the feedback!!!19:46
clarkbzuulians, opendev updated its python-base image for python3.7 and 3.8 to remove jemalloc. Based on process of elimination jemalloc seemed to be the source of our leaks with zuul-web.19:46
clarkbtobiash: ^ I know you've seen leaks on newer pyhton too so wanted to point that out19:47
clarkbthis also means the next zuul commit to land will rebuild on top of that and not use jemalloc19:47
corvusmordred: i don't see access logs on the buildset registry from that build; looks like buildkit isn't talking to it at all19:47
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: Write buildkitd.toml in use-buildset-registry  https://review.opendev.org/72483719:47
mordredcorvus: it isn't19:47
mordredcorvus: look at the inter-diff between 12 and 13 there ^^19:47
corvusoh, heh, i just now saw your "nm" :)19:47
corvusmordred: can confirm test output matches logic bug :)19:48
mordredclarkb: ^^ please see above - I think our idempotency patch had a bug in it that the gate didn't gatch19:48
mordredor catch19:48
clarkbmordred: will do19:48
mordredcorvus, clarkb : should we lift out the fix for modify_registries_conf.py into its own patch so we can fast-track it?19:49
clarkbmordred: I'm ok with the change there if we want to roll forward +2'd19:50
*** hashar has joined #zuul19:50
AJaegermordred: really "if not mirrors - and then mirrors.insert"?19:50
openstackgerritMerged zuul/zuul-jobs master: Include distro-specific vars  https://review.opendev.org/72566819:51
clarkbAJaeger: its either [] or [stuff]19:51
clarkbAJaeger: so the not catches [] case19:51
AJaegerclarkb: ah!19:51
mordredyeah19:53
mordredso for the "normal" case if empty file, it was happily not doing anything :)19:53
AJaegerzuul-jobs reviewers, two small changes: tempfile cleanup and py38 jobs: https://review.opendev.org/725650 and https://review.opendev.org/725663 - reviews welcome, please19:57
AJaegerand two small renames https://review.opendev.org/#/c/725012/4 and https://review.opendev.org/#/c/725013/419:58
AJaegermordred: https://review.opendev.org/#/c/724841/ is another registry change you might want to review20:00
*** jamesmcarthur has quit IRC20:06
openstackgerritMerged zuul/zuul-jobs master: Write buildkitd.toml in use-buildset-registry  https://review.opendev.org/72483720:12
openstackgerritMerged zuul/zuul-jobs master: ensure-pip: use python2-pip when running under Python 2  https://review.opendev.org/72477720:12
openstackgerritMerged zuul/zuul-jobs master: Add py38 testing  https://review.opendev.org/72566320:12
openstackgerritAlbin Vass proposed zuul/zuul-jobs master: Add upload-artifactory role  https://review.opendev.org/72567820:17
avassjust realized i forgot to push that20:18
openstackgerritMerged zuul/zuul-jobs master: ansible-lint: use matchplay instead of matchtask  https://review.opendev.org/72491020:18
openstackgerritMerged zuul/zuul-jobs master: use-buildset-registry: do not update ca when not necessary  https://review.opendev.org/72484120:22
*** jamesmcarthur has joined #zuul20:23
*** jamesmcarthur has quit IRC20:26
openstackgerritAlbin Vass proposed zuul/zuul-jobs master: Add upload-artifactory role  https://review.opendev.org/72567820:26
*** jamesmcarthur has joined #zuul20:29
*** jamesmcarthur has quit IRC20:35
*** rlandy is now known as rlandy|brb20:35
openstackgerritIan Wienand proposed zuul/zuul-jobs master: ensure-pip: Install backported pip for Xenial  https://review.opendev.org/72478820:42
openstackgerritIan Wienand proposed zuul/zuul-jobs master: Add plain nodes to testing  https://review.opendev.org/72477620:42
openstackgerritMerged zuul/zuul-jobs master: use zj_image instead of image as loopvar  https://review.opendev.org/72501220:45
*** jamesmcarthur has joined #zuul20:49
*** Goneri has quit IRC20:56
openstackgerritAlbin Vass proposed zuul/zuul-jobs master: Check blocks recursively for loops  https://review.opendev.org/72496720:57
*** hashar has quit IRC21:00
*** rlandy|brb is now known as rlandy21:03
*** jamesmcarthur has quit IRC21:06
clarkbzuulians https://review.opendev.org/#/c/725363/1 looks like a straightforward logging update that will help us get new imgaes built without jemalloc21:07
clarkbif anyone has a moment for that it would be great as I'd like to be able to redeploy our zuul with that at some point soon21:07
*** jamesmcarthur has joined #zuul21:08
corvusclarkb: done21:10
clarkbthank you21:10
*** y2kenny has left #zuul21:11
*** jamesmcarthur has quit IRC21:11
*** jamesmcarthur has joined #zuul21:13
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: Set up siblings dirs for each build in the loop  https://review.opendev.org/72568321:13
mordredclarkb, corvus: ^^21:14
mordredhttps://zuul.opendev.org/t/zuul/build/dfe1c2cd37b643879e889cfd67813b07/console21:14
mordredis the error21:14
mordredwe only notice this when images is a list and siblings are in use21:14
corvusmordred: and i guess our test only does one image21:14
*** jamesmcarthur has quit IRC21:15
*** jamesmcarthur has joined #zuul21:17
*** jamesmcarthur has quit IRC21:17
*** jamesmcarthur has joined #zuul21:17
mordredyeah - updating to change that21:18
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: Set up siblings dirs for each build in the loop  https://review.opendev.org/72568321:18
mordredcorvus: there we go - that should exercise the code path21:18
mordredcorvus: fascinating new error on the normal nodepool build: https://zuul.opendev.org/t/zuul/build/f4cfb40d86f746a985c72d1473f6469f21:19
mordredcorvus: #22 ERROR: failed commit on ref "layer-sha256:c2ce0712fbc150db6136e121fa38328976919c059529d19ce9ccc73b4ba4d337": unexpected size 0, expected 199958821:20
openstackgerritMerged zuul/zuul-jobs master: use zj_log_file instead of item as loop_var  https://review.opendev.org/72501321:20
ianwmordred: hrm, how come https://review.opendev.org/#/c/725456/ didn't pick that up?21:21
mordredianw: oh - haha. BECAUSE21:24
mordredianw: we use build-docker-imag ein a config project- so it's not depends-on-able21:24
mordredianw: that's not the first time I've forgotten that21:24
ianwoh ... well i tried :)21:26
mordredclarkb: I transferred your +A from patchset 1 - ps2 just added tests: https://review.opendev.org/#/c/725683/21:30
ianwyeah, opendev /base-jobs getting in the way21:30
*** jamesmcarthur has quit IRC21:39
mordredcorvus: in good news - the new tests exercise the code path!21:43
*** jamesmcarthur has joined #zuul21:44
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: Set up siblings dirs for each build in the loop  https://review.opendev.org/72568321:45
mordredcorvus, clarkb : in bad news, the tests found a flaw - so plz to review one more time21:46
mordredcorvus: also - I'm already leaning towards "just use buildx" instead of this dual path21:46
corvusmordred: yeah, that's sounding like a win21:46
clarkbdoes buildx run reasonably quickly on its native platform?21:47
corvusclarkb: yes.  it even runs reasonably quickly non-native.21:47
clarkbnice21:47
corvusclarkb: i think we decided there was ~no cost native21:47
corvus(mostly a little extra setup cost; actual build isn't doing any emulation)21:47
mordredyeah - for native single-arch is basically the same21:47
mordredin fact, it might build quicker - because buildkit is better at running non-dependent tasks in parallel21:48
corvustrue, we were already looking at that after the denver ptg21:48
mordredyeah - I think "use the buildx path" may be the easiest "use buildkit builder"21:49
mordredalthough - apparently if we *actually* just used buildkit without docker involved, there's even more stuff we can do - but my brain can't really deal with that today21:50
mordred(there's a buildkitd and a buildctl)21:50
clarkbis there any concern that a dockerfile that is valid for docker proper wouldn't be valid for buildx somehow?21:50
clarkbif not then simplifying seems like a good idea21:51
mordredclarkb: not really no21:51
mordredclarkb: the risk is the other way - there are dockerfile constructs buildkit allows that do not work in normal docker21:51
clarkbya21:52
clarkbis there a "strict" mode?21:52
mordredclarkb: although these days if you just enable buildkit with normal docker those are available21:52
mordredi don't think so21:52
mordredto be fair - all of the things have obscure syntax and are hard to use21:52
mordredso it's really unlikely anyone will accidentally use them21:53
clarkbah so not like perl :)21:53
mordredhaha21:54
mordredclarkb: RUN --mount=type=secret,id=top-secret-passwd my_command21:54
mordredclarkb: stuff like that21:54
mordredclarkb: but all you have to do if you do let some buildkit stuff in is do "DOCKER_BUILDKIT=1 docker build"21:55
*** jamesmcarthur has quit IRC21:55
*** jamesmcarthur has joined #zuul21:57
*** jamesmcarthur has quit IRC22:01
corvusclarkb: looks like a transient image build failure (kubic repo failure) on 725363; i revoked my +w so it won't merge22:01
corvusclarkb: and re-+3 after abandon/restore; it should try again22:02
corvushttps://storage.gra.cloud.ovh.net/v1/AUTH_dcaab5e32b234d56b626f72581e3644c/zuul_opendev_logs_a90/725363/1/gate/zuul-upload-image/a9014fe/job-output.txt is the log22:03
mordredGAH22:03
mordredsame issue with build-container-image22:03
corvusis kubic unreliable enough we're going to need to get the mirrors working inside the build?22:03
corvuswe've just been skating by so far without mirrors because zuul-scale isn't openstack-scale :/22:04
mordredcorvus: golly I hope not22:04
mordredcorvus: cause also - we'll have to figure out plumbing mirrors into container builds22:05
mordredcorvus: which we should also do but haven't done yet22:05
corvusmordred: that's what i meant22:06
clarkbin theory it has all the same infrastructure as bionic and xenial22:06
mordredcorvus: ah - nod22:06
clarkbthough its probably under a lot more post release churn?22:06
mordredclarkb: kubic does?22:06
mordredclarkb: this isn't PPA - this is opensuse build22:06
clarkboh kubic sorry in my head I had it as focal22:06
mordrednod22:06
clarkbya thats the pull from obs right?22:07
clarkbso its not even debian specific infrastructure22:07
mordredyeah22:07
clarkbwe should maybe consider mirroring the skopeo, podman, etc builds from obs into our mirrors22:07
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: Set up siblings dirs for each build in the loop  https://review.opendev.org/72568322:08
mordredI had to rebase - so that's a blank rebase patch - next patch coming22:08
corvusright, but before we bother with that, we should figure out how to plumb them into the builder; that's the thing we were dodging earlier -- i think the right way to do that is to flesh out the zuul site mirror variable to describe docker mirroring then update the buildkitd.toml file (and similar) to add mirrors.22:09
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: Set up siblings dirs for each build in the loop  https://review.opendev.org/72568322:09
clarkbcorvus: does buildkit know how to set up distro mirrors within the build?22:09
corvusoh, but it's going to be even more complicated to get the debian mirrors in there22:09
clarkbotherwise we probably need to bind mount in a apt repos config22:09
corvusi'm not sure how we'll do that22:09
mordredcorvus, clarkb: there was actually a latent bug in siblings that the new siblings test uncovered - in addition to the bug I added22:09
corvuswe basically have no mirroring in there22:10
mordredcorvus, clarkb : I believe we can do things with COPY --mount22:10
corvustobiash has a start on that here: https://review.opendev.org/64944822:10
mordredwhich will allow us to bind-mount some stuff in without having it wind up in the final image22:10
clarkbmordred: ++22:10
corvusmordred: so maybe translate tobiash's change into doing that with a bindmount?22:11
mordredcorvus: yeah - maybe so22:11
mordredcorvus: also - we might be able to abstract that into something we can put into builder/base22:11
corvus(his was basically a "write it out; install, then cleanup" change22:11
mordredso that it's not quite so much boilerplate22:11
mordredyeah22:11
clarkbI do think addressing the mirror config dict in zuul makes this cleaner in the job consumption side22:11
corvusclarkb: yeah22:11
mordredagree22:11
mordredbut I thnk that's half the story - and the other half is making something that's reusable not in the gate and also usable in the gate - which apparently nobody cares because CDN yolo22:12
corvusbasicially, if we have a good mirror dict, we can have the buildx setup and build write and use the files to bind mount22:12
mordredso we'll be ... having fun again22:12
mordredyeag22:12
mordredat least- I hope we can22:12
corvusmordred: why does it have to be useable outside the gate?22:12
mordredcorvus: I mean - I'd like "docker build ." to continue to work22:13
corvusmordred: yeah, i don't see the problem22:13
corvusi'm imagining we just plop some apt configs in the image when it's building22:14
corvusmordred: you do 'docker build .'; zuul does 'docker buildx --bindstuff'22:14
mordredah - sorry -that's where we're missing each other22:14
mordredthe buildkit extention for bind mounting is an extension to the dockerfile syntax22:14
corvusooooooooooooh22:14
mordrednow - with _buildah_ you can totally do the mount on the command line22:15
mordredbut we don't have a multi-arch story with buildah yet22:15
corvusheaddesk22:15
mordredthey are working on it - and it's possible we could have something scriptable before they have a full buildx command22:15
mordredlemme find the issue I was reading earlier22:16
mordredcorvus: https://github.com/containers/buildah/issues/159022:16
clarkbmordred: you mean the COPY --mount thing above is buildkit specific?22:17
mordredhttps://github.com/grooverdan/buildah/tree/args-target-platform22:17
mordredclarkb: yes22:17
mordredalthough I think buildah has implemented at least some of it22:17
mordredhonestly - the buildah story here is much better for zuul22:17
mordred(assuming multi-arch gets sorted)22:18
mordredbecause you can pass -v commands to the build to do the bind-mount - which means it can be a zuul action not a dockerfile action22:18
mordreddocker explicitly disallows that because of concerns about people being confused about contents of mounts not winding up in final image contents22:18
clarkbwow thats exactly what we want though22:19
mordredyeah22:19
mordredlike - it is EXACTLY what we want22:19
corvusgood thing buildah didn't maintain bug-compatibility with docker on that one :)22:20
mordredwhich makes me want to figure out how to get multi-arch to work with buildah so that we can just switch to "screw it - we always use buildah"22:20
mordredif someone REALLY wants docker then, they can always just use-buildset-registry and roll the dice22:20
corvusmordred: i'm having trouble figuring out if grooverdan is still working on that22:24
mordredme too22:25
mordredcorvus: so - worst case - buildkit isn't doing magic - I'm pretty sure we could do a binfmt thing for each arch outside of an invocation - build each layer and then build and push a manifest22:26
mordredcorvus: like - we could almost certainly do it all just in ansible if we dive in22:26
corvusmordred: yeah, i was having the same hunch, though i don't quite know the mechanics of that.22:26
mordredcorvus: me either22:27
mordredbut I think we can figure it out - and mirrors might be the compelling reason to22:27
mordrednow that buildx is there, we're unblocked on multiarch for nodepool22:27
corvusyeah. and once we do that we know we can build the manifest22:27
mordredyup22:28
mordredand then we've got one story for build/upload that works for all targets22:28
mordredbasically - I think this is what porting over to build-container-image looks like22:28
mordredand then we just start using build-container-image22:28
clarkbhow is that different than just using buildx?22:28
clarkb(seems like we should just use buildx in that case?)22:29
mordredclarkb: no bind-mounts in buildx22:29
mordredand recommend everyone use that unless they REALLY need to explicitly test something specific about building in docker proper22:29
clarkbmordred: maybe it would be easier to change that in builx than rebuilding buildx from scratch in ansible?22:30
mordredclarkb: but basically - we can learn what we need from what buildx is doing on the backend for multi-arch - which actually isn't that exciting it's just already done and easy22:30
mordredclarkb: nope. buildx is fundamentally philosophically opposed to the idea22:30
*** michael-beaver has quit IRC22:30
mordredwe could fork buildx22:30
clarkbI guess I just see what you described as "make buildx in ansible"22:30
mordredno - sorry22:30
clarkband so my immediate thought is why not use buildx22:31
mordredbecause buildx is missing the fundamental feature that makes this interesting and is fundamentally opposed to it22:31
clarkbwhich is the mount that doesn't end up in final image22:31
mordredyeah22:31
mordredthe thing that buildx does that we need is not hard and we can totally script around it until such a time as buildah supports it natively22:31
mordredwhich they _will_ do becaues they'll have to22:32
clarkbwhich is run a qemu vm with the correct arch22:32
mordredyeah22:32
corvus(well, heh, they're fundamentally opposed to it, except for when they aren't by adding --mount=)22:32
mordredcorvus: sssh22:32
corvusi'm sure the rules make sense to them22:32
clarkbdealing with mounts through qemu might also be ugly22:33
clarkbprobably worth checking how painful that is in their existing codebase22:33
clarkbI know its something that kata perpetually struggles with22:33
corvusclarkb: on friday when we hit the loading_errors bug -- do you happen to remember if zuul-jobs had some kind of a configuration error?22:36
corvus(like, a persistent one that was already merged in the repo?)22:36
clarkbcorvus: I don't recall it having one, but I couldn't say for sure22:36
clarkbcorvus: I think the first time we hit it (or observed it atl east) the openstack tenant did have persistent errors22:37
corvusi can't find evidence in the logs, but i think we only log those on full reconfigurations22:37
corvusi know the zuul tenant has and had errors, but none in the zuul-jobs repo22:37
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: Set up siblings dirs for each build in the loop  https://review.opendev.org/72568322:38
mordredclarkb: ^^ headdesk22:38
mordredclarkb, corvus: that's going to do it though, based on the last error22:39
corvusi think one of the other requirements for the bug to trigger is for there to be a config error of some kind; either one in the change itself, or one in a dependent change22:39
corvushrm, now that i think about it, i think it may have to be a config error in a different repo in a dependent change, which definitely isn't what happened on friday (the series was entirely zuul-jobs changes)22:40
corvusso i'm still missing something22:40
clarkbmordred: whoops22:40
mordredclarkb: also - I don't think they're runnign qemu vms - I think they're doing binfmt_misc equiv of cross-compiling22:42
clarkbmordred: I think binfmt maps the execution of the processes onto qemu emulation22:44
clarkbthat may not be a full VM in the sense that we normally think of it with a kernel and all that hough22:44
clarkbhttps://github.com/qemu/qemu/blob/master/scripts/qemu-binfmt-conf.sh22:47
clarkbhttps://wiki.debian.org/QemuUserEmulation also useful22:48
clarkbits emulated more like an interpreter than a virtual machine (if that makes sense)22:49
clarkbwhich likely simplifies the mounting thingsI was worred about as there is a single kernel22:49
mordredyeah - there's the stuff in the debian article about using it for cross-compiling22:50
clarkband I guess buildkit comes with everything you need to build an arm64 image if you can run as arm64?22:51
ianw(does it crossbuild?  because we don't have a good story for mixing arm64 and x86 nodes in jobs)22:52
corvuswe may be able to use some of the buildkit container images to get the necessary deps, even to use with buildah22:52
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: Set up siblings dirs for each build in the loop  https://review.opendev.org/72568322:52
clarkbianw: ya the current buildx stuff is crossbuilding for that reason aiui22:53
mordredcorvus, clarkb you're REALLY goig to liek the latest patchset22:53
ianwright i meant buildkit sorry22:53
corvusianw: buildkit==buildx for this22:53
mordredyeah22:53
mordredcorvus: and yes - I think we can almost certainly use the buildkit container images22:53
corvus(the buildx command invokes a buildkit based builder)22:53
mordredspecifically the docker/binfmt image sets up the right binaries in binfmt_misc22:53
clarkbmordred: today is just not my day to review simple changes :)22:54
mordredclarkb: nor mine to write them22:54
corvusmordred: so a hand-wavey sketch of this might look like "run buildah in a container based on a binfmt_misc image"22:54
mordredcorvus: well - yes - except we don't even have to do that so much ...22:55
mordredcorvus: the binfmt image installs stuff into /proc/sys/fs/binfmt_misc - which is why it has to be run privileged22:55
clarkbya those are the mappings from https://github.com/qemu/qemu/blob/master/scripts/qemu-binfmt-conf.sh basically22:55
mordredat that point, I believe we could even run buildah on the host22:55
clarkbit tells the kernel if you see these magic numbers use this emulator22:55
clarkb(roughly)22:55
mordredyeah22:55
mordredso - it might still be about using that container - or that might just e a setup container22:56
mordredbut - hand wave hand wave - it's ultimately jst code22:56
ianwahh, thanks, i think i'm beginning to see ... it talks about "ucp" compatibility  which i first read as "uucp" and said no ... surely they're not ... but half believed they would :)22:57
mordredianw: uucp is entirely too old school22:57
mordred;)22:57
clarkbipv6 too22:57
clarkb:)22:57
corvusthe time between uucp and ipv6 is comparable to the time between ipv6 and now.22:58
mordredthat's just depressing22:58
*** tumble has joined #zuul23:04
openstackgerritMerged zuul/zuul master: merger: warn about invalid object type  https://review.opendev.org/72536323:04
clarkbpromote for ^ appears to have completed already so we should be good to go without jemalloc on python3.8 now23:06
openstackgerritJames E. Blair proposed zuul/zuul master: Add some debug lines to help with the loading_errors bug  https://review.opendev.org/72573223:09
tumblehi guys, I'm new to the zuul ecosystem and still trying to figure out how to fit it into my toolchain. Did I understand it correctly that the git driver only supports public repositories, i.e. with no authentication?23:10
corvusclarkb, tobiash: ^ i think i could fix what i suspect to be the immediate cause of the loading_errors bug, but i think there may still be some secondary issue that's triggering it.  i'd like to understand that first since it's easier to track down now.23:10
corvustumble: i believe that's the case; the driving use case for that is so that other zuuls can share the zuul-jobs repo hosted by opendev (or similar).  the main workflow happens with the gerrit, github, or pagure drivers (which do support authn)23:12
tumbleI see, so I guess I would need to write my own driver for our internal gitea then. Thanks for the confirmation. :)23:14
corvustumble: oh you're using gitea, nice :)23:14
corvustumble: we'd love a gitea driver; and i bet you could trick some of us into collaborating on it :)23:15
tumbleyeah and I hoped since opendev is gitea-based as well, I'd be lucky to find a driver for it, but unfortunately not the case :D23:15
tumbleI looked at the github and gitlab drivers and while the github one looks quite huge, the gitlab one ain't so bad so I at least consider it doable23:15
corvusit's also super easy for us to test too, which is nice23:16
corvustumble: also check out the pagure driver23:17
tumblewill do, tbh I didn't hear of pagure before, should look at it anyway. You never stop learning :D23:17
corvustumble: it might be a good combination of "simpler than github, but more finished than bitbucket"23:17
openstackgerritMerged zuul/zuul-jobs master: Set up siblings dirs for each build in the loop  https://review.opendev.org/72568323:17
corvustumble: we'll want to make sure we have good webhook support in the gitea driver, and the bitbucket one is largely based on polling which won't scale as well23:18
openstackgerritMerged zuul/zuul-jobs master: ensure-pip: Install backported pip for Xenial  https://review.opendev.org/72478823:18
tumblecorvus, yeah good point. I'm used to on-commit hooks from our current jenkins workflow and I don't wanna go back to polling23:19
corvustumble: if you have some time for this, i can probably help out starting later this week23:22
corvusprobably the easiest way to start would be to set up a local zuul dev environment (one where you can easily update and interactively run the zuul-scheduler process) with a gitea, then start on the driver.  the first thing the driver will want to do is to query gitea for a list of branches for each of the projects specified in the config.  that's a good checkpoint.  :)23:25
corvusthen it's implementing webhooks to respond to events, some more queries, etc.23:25
openstackgerritMerged zuul/zuul-jobs master: Add plain nodes to testing  https://review.opendev.org/72477623:26
corvusonce that's all working with a real gitea, we'll add some unit tests that fake out part of it so we can regression test drivers without running the whole thing23:26
tumblecorvus, I'll be hanging out here from now (if I don't forget to launch my hexchat) and sure, let's see what we can do. Friday is a bank holiday here and I'll probably find some time to look into this over the weekend :)23:26
corvustumble: sounds great :)23:27
*** tosky has quit IRC23:27
tumblesince I'm basically working on our zuul setup at the moment and can easily reproduce it (all written in ansible and using the official docker containers) that's gonna be my playground for a start. Can even host it on some public VM for playing. A gitea playbook I also have somewhere.23:28
tumbleoh well, the nodepool part might be difficult in public, but I guess that's not so relevant for this scenario23:29
corvustumble: yeah, just running "noop" jobs is sufficient for testing23:30
*** tumble has quit IRC23:44
*** guillaumec has quit IRC23:59

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