Wednesday, 2025-02-26

clarkbthe 00:00 hourly runs look happy too00:17
ralonsohcorvus, hello! I have one question regarding "override-checkout", used inside a required project13:30
ralonsohcontext: https://review.opendev.org/c/openstack/neutron/+/942695/2/zuul.d/project.yaml#2813:30
ralonsohI'm trying to find an issue with this library, pyroute2, that I can't reproduce locally13:30
ralonsohthe issue is in master branch but I don't know what exact commit is failing13:30
ralonsohit seems that using a hash in "override-checkout" doesn't work13:31
ralonsohaccording to https://opendev.org/zuul/zuul/src/commit/587412d74c1a14ccaf99c3c18bf62fa7a578cda2/doc/source/config/job.rst?display=source#L489, that should work too13:32
opendevreviewRon Stone proposed openstack/project-config master: Update StarlingX docs promote job for R10 release  https://review.opendev.org/c/openstack/project-config/+/94279513:43
ralonsohfungi, ^ maybe you know about this topic13:47
fungiralonsoh: first thing i'd check is whether the job installs pyroute2 from source, next thing i'd check is whether pyroute2 is in the list of projects in the openstack tenant13:55
ralonsohfungi, it is installing pyroute2 from source 13:57
ralonsohhttps://zuul.opendev.org/t/openstack/build/e0a80389800e41639695040ff5c97cc4/log/job-output.txt#2017113:57
ralonsohif I'm not wrong13:57
fungilooks like it's in the projects list at least, so there's that: https://opendev.org/openstack/project-config/src/branch/master/zuul/main.yaml#L144113:57
ralonsohyes, it was added by Lajos in order to have this CI job13:57
ralonsohneutron-functional-with-pyroute2-master13:58
ralonsohfungi, well, this is not the best link (there I didn't add any reference)13:59
ralonsohone sec13:59
ralonsohthis one shoudl have a hash reference: https://zuul.opendev.org/t/openstack/build/2e1e273dd2384c6f867d6a2ad6e9698f/log/job-output.txt#1997714:00
ralonsohI see it called twice there14:00
ralonsohActually, from the latest link, I see this14:03
ralonsohhttps://storage.gra.cloud.ovh.net/v1/AUTH_dcaab5e32b234d56b626f72581e3644c/zuul_opendev_logs_2e1/942695/3/check/neutron-functional-with-pyroute2-master-1-1/2e1e273/zuul-info/inventory.yaml14:03
ralonsoh        github.com/svinota/pyroute2:14:03
ralonsoh          canonical_hostname: github.com14:03
ralonsoh          canonical_name: github.com/svinota/pyroute214:03
ralonsoh          checkout: master14:03
fungii would have expected to see it set up with the requested commit checked out in https://zuul.opendev.org/t/openstack/build/2e1e273dd2384c6f867d6a2ad6e9698f/console#0/3/9/controller14:07
fungiyeah, it doesn't look like it's picking up the override14:07
ralonsohfungi, I'm checking the documentation, maybe I should use "checkout"14:09
ralonsohthis is what should be used inside "projects"14:09
fungihttps://zuul-ci.org/docs/zuul/latest/config/job.html#attr-job.required-projects.override-checkout and the other linked entry only mention branches and tags14:14
ralonsohfungi, but what is the difference between any of this things? all is the same14:15
ralonsohin git I mean14:15
fungiin one place it says "such as a branch tip or tag" (suggesting it supports more than just those) but then later is says "i.e., branch or tag" (implying it only supports those)14:16
ralonsohfungi, yeah... ok, I'll need to find a way to override this, maybe in tox before executing the tests14:17
fungiralonsoh: looking at the AnsibleJob.resolveBranch() definition at https://opendev.org/zuul/zuul/src/commit/b4ca20ee6dc4f305218999405e4b1e5fcf67d025/zuul/executor/server.py#L1909-L1946 i don't think it handles anything other than named refs, heads and tags14:29
ralonsohfungi, yeah... what a pity not having just a plain hash reference there too14:32
ralonsohI'll propose a patch for this14:32
fricklerok so that matches what I kind of suspected already14:35
fungiyeah, i just didn't want to say definitively without confirming from zuul's source code, since the documentation was kinda vague about it (or i wasn't finding the right section of the docs)14:40
corvushi, i'm sorry the docs seemed vague, that wasn't the intent, the intent was to be clear.  that's why it says "use the indicated ref".  A ref in git is a named reference for a commit.  so that would normally exclude a sha14:44
corvus(also, the use of i.e. was intentional to clarify that a ref meant "branch or tag", just to make that more clear)14:44
fungiyeah, i suspected the "such as" was misleading there14:45
fungithough git reference is also pretty clearly defined in git's own documentation as to not mean also raw commit ids14:47
fungiso zuul's docs are using the right terminology14:47
corvusok.  yeah, that was maybe a little looser since that was referring to the trigger of the job, not the behavior of override-checkout.  but i could see that might plant the idea that we're thinking of a ref in that way, then when we use it more precisely, that's still in the reader's mind.  we can tighten that up... we could probably just get rid of the words "such as"14:47
corvusand leave the bare parethetical "running on a ref (a branch tip or tag)"14:48
fungitechnically it could also find other things inside the refs tree the way that method is written, i think, but would regardless omit raw commit ids14:48
corvusyeah, like commit notes, etc.14:49
fricklerjust for clarity, what's the rationale to disallow shas?14:54
fungii don't see that they're intentionally disallowed, just not implemented15:03
fungibut there may have been a reason not to implement support for them15:03
opendevreviewMerged openstack/project-config master: Update StarlingX docs promote job for R10 release  https://review.opendev.org/c/openstack/project-config/+/94279515:03
corvusthe next paragraph of the documentation suggests part of the difficulty, along with the fact that the scheduler does not have access to the individual commits when it's making decisions like that.  there would be a lot of design questions to answer.15:16
corvus(not saying there are no answers, just saying its more of a completely different feature, not a missing option)15:17
fungiyeah, for something simple like having the state checked out on disk it seems straightforward, but when it comes to using that state to make decisions on what jobs to run or what job configuration to use that's messy15:19
clarkbralonsoh: its worth noting that you can depends-on a PR16:11
clarkbwhich is aneasy way to point at specific code.16:11
fungithough creating throwaway pull requests in a random github project might be frowned upon16:13
clarkbya I would only do it if the intention is the follow through with merging some related update16:13
fungiright, for this specific case i'd probably create a throwaway neutron change that adds a pre-run ansible task to the job to checkout some hard-coded ref from the local copy of the pyroute2 repo, or something along those lines16:16
fungiand then bisect by revising that dnm change16:16
fungithough if it's cropping up in devstack-based jobs then it might need a dnm change for devstack with a depends-on from a neutron change in order to do the checkout before pyroute2 gets installed (i haven't looked closely)16:19
*** amoralej_ is now known as amoralej16:54
clarkbinfra-root https://review.opendev.org/c/opendev/system-config/+/942730 should be an easy review to mirror the memcached container image to quay in order to then consume it in the gitea deployments. In yesterday's meeting it sounded like we were good with proceeding with memcached on gitea servers so this would be the next step, then the deployment job gets updated to pull the image17:04
clarkbfrom there, and we can review the gitea deployment update17:04
clarkbI need to pop out in about 20 minutes to go to that dentist visit, but I'll be back later if there are any further questions/concerns on the proposed gitea caching changes17:04
clarkband then thinking ahead to https://review.opendev.org/c/opendev/system-config/+/942439 today is unlikely to be a good day to land that for me. But tomorrow might work? I'm open to input on that. I know ianw was willing to trry and be around for that too17:07
fungii've got a few meetings tomorrow but can still pay attention most of the day17:08
clarkblooks like tacker is doing its retry limit dance right now that uses half our quota :/17:09
opendevreviewMerged opendev/system-config master: Mirror memcached:latest from docker hub to quay.io/opendevmirror  https://review.opendev.org/c/opendev/system-config/+/94273017:19
clarkbcardoe: if you have a moment, do you know if in raxflex the intent is to require people to use floating IPs for external IP addresses and prevent the use of direct attachment to the public network?19:13
clarkbwe're looking at redeploying our mirror nodes there and trying to dtermine if we need to spin up our own network resources and use floating IPs19:14
cardoejamesdenton: would probably be the best to answer.19:14
cardoeIt's possible they just stuck with the default policy on that which doesn't allow for that kind of attachment.19:15
clarkback. fungi indicated it did work at one time in sjc3 but seems to have changed more recently. But ya maybe that is to align with default policies19:18
fungicardoe: clarkb: jamesdenton: yeah, i was previously able to do an openstack server create --network=PUBLICNET in flex sjc3, but lately nova is returning an error there and in dfw3 which makes it seem like maybe there are no available addresses19:19
fungii can of course create a network, router, flouting-ip, and all the other boilerplate which goes along with, but it seems like overkill if the instances are just going to need a globally routed address anyway19:21
cardoeWell I know the default neutron policy doesn't allow attachment to an external network19:31
cardoeMaybe it does if there's a specific service_type on it? But it's possible that's just happened.19:31
fungibut couple that with projects not starting with a default network/router either, basically nova's get-me-a-network feature is dead in the water19:37
fungiand yeah, the error nova's returning is "No valid service subnet for the given device owner..."19:38
fungiand indicates that the PUBLICNET network has a null service type, so maybe that's what's changed19:42
*** dviroel is now known as dviroel_bbl21:31
clarkbfungi: I just left a couple comments on https://review.opendev.org/c/opendev/system-config/+/942650 to calrify some of the debugging looking stuff in the change. Could you weigh in on what updates if any you'd like in the next patchset (which I'll push after we mirror the memcached image)21:34
fungiyeah, checking21:36
*** dviroel_bbl is now known as dviroel23:17

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