Monday, 2024-06-03

@clarkb:matrix.orgzuulians https://review.opendev.org/c/zuul/zuul-jobs/+/920857 updates the versions of Ansible tested by zuul-jobs in unittests (and I think linting?) The update is necessary to get a version of Ansible that doesn't completely break down with run under python3.12. The child change adds py312 testing and jobs15:23
@clarkb:matrix.orgI think our other options is to keep testing older ansible and just not test it with python3.12 for now but add the python3.12 jobs to zuul-jobs so that others can more easily run python3.12 stuff. Let me know if you prefer one approach to another or something else entirely15:24
@jim:acmegating.comClark: lgtm, thanks!15:27
@clarkb:matrix.orgcorvus: can you take a look at the child change too?15:27
@mordred:waterwanders.comClark: wow - py3.12 breaks older ansibles? that's amazing15:29
@clarkb:matrix.orgmordred:  python3.12 seems to break a lot of stuff15:29
@clarkb:matrix.orgwe had a good run of fairly minimal changes betwen like 3.6 and 3.11. But 3.12 is a bit more impactful15:30
@mordred:waterwanders.comWell joy15:40
-@gerrit:opendev.org- James E. Blair https://matrix.to/#/@jim:acmegating.com proposed: [zuul/zuul] 920864: Sacrifice Ansible procs when OOM https://review.opendev.org/c/zuul/zuul/+/92086416:04
@mordred:waterwanders.comcorvus: left question ^^16:10
-@gerrit:opendev.org- James E. Blair https://matrix.to/#/@jim:acmegating.com proposed: [zuul/zuul] 920864: Sacrifice Ansible procs when OOM https://review.opendev.org/c/zuul/zuul/+/92086416:13
-@gerrit:opendev.org- Monty Taylor https://matrix.to/#/@mordred:inaugust.com proposed: [zuul/zuul-jobs] 739047: Add a job for publishing a site to netlify https://review.opendev.org/c/zuul/zuul-jobs/+/73904716:32
-@gerrit:opendev.org- Monty Taylor https://matrix.to/#/@mordred:inaugust.com proposed: [zuul/zuul-jobs] 739047: Add a job for publishing a site to netlify https://review.opendev.org/c/zuul/zuul-jobs/+/73904716:35
@mordred:waterwanders.comnote to self - run tox _before_ pushing16:35
-@gerrit:opendev.org- Zuul merged on behalf of James E. Blair https://matrix.to/#/@jim:acmegating.com: [zuul/zuul] 920600: Fix change cache upgrade https://review.opendev.org/c/zuul/zuul/+/92060017:00
@f2ked:matrix.orga while ago it was suggested by corvus that17:04
> you can try making a single multi-node job and distributing the tests to the nodes of that job
I think my understanding is incomplete.
How does one make a "job" that has "allocated" X nodes from nodepool so I can run a playbook against them?
@f2ked:matrix.org * a while ago it was suggested by corvus that17:04
> you can try making a single multi-node job and distributing the tests to the nodes of that job
I think my understanding is incomplete.
How does one make a "job" that has "allocated" X nodes from nodepool so I can run a playbook against them?
@clarkb:matrix.orgf2ked: you assign a nodeset to the job with multiple nodes listed in the nodeset.17:05
@clarkb:matrix.orgthen the job is allocated as many nodes as are in that nodeset with the assigned names and you can manipulate them with ansible17:05
@f2ked:matrix.orgstatically?17:07
@clarkb:matrix.orgyes17:07
@clarkb:matrix.orgor I guess it depends on what you mean by statically. Nodepool can dynamically provision the nodes. But the nodeset is a static configuration17:07
@f2ked:matrix.orgI'm using `nodeset.nodes.label` to `Zuul will request a node with this label.` from nodepool backed with a cloud17:08
@jim:acmegating.comf2ked you give the node a name as well, and that's how you address it from ansible: https://zuul-ci.org/docs/zuul/latest/config/nodeset.html#attr-nodeset.name17:09
@jim:acmegating.comhere is a semi-complex example with 5 nodes, each serving a different purpose: https://opendev.org/opendev/system-config/src/branch/master/zuul.d/system-config-run.yaml#L229-L24717:11
@jim:acmegating.com(not quite the same thing, but we don't have a distributed execution job in opendev)17:12
@jim:acmegating.com * (not quite the same thing, but we don't have a distributed execution job in opendev i can point to)17:12
@jim:acmegating.com(showing that just to illustrate the syntax of requesting multiple nodes with distinct names)17:13
@f2ked:matrix.orgI have 100 nodes (some are in use some are free or will be) they are not statically allocated (they a destroyed periodically and nodepool dynamically spins up a replacement).  I want to "reserve/allocate" 5 for this job, I don't have names.17:15
@f2ked:matrix.orgthey do not have to work together17:16
@jim:acmegating.comrequest 5 from nodepool, you will give them names in the nodeset.  name is a required paremeter (see the docs link).  they don't have to be interesting names, they just need to be different.  they aren't given to the underlying nodes, they're just the names ansible will use to refer to them.17:16
@jim:acmegating.com * request 5 from nodepool, you will give them names in the nodeset.  name is a required parameter (see the docs link).  they don't have to be interesting names, they just need to be different.  they aren't given to the underlying nodes, they're just the names ansible will use to refer to them.17:18
@f2ked:matrix.orgI see so I can say `job.nodeset.nodes.[{name: n0, lable: fedora}, {name: n1, label: fedora},...]` 17:20
@jim:acmegating.comexactly.  than in ansible say "nodes: all" in the playbook to run a task/role on all of them.  never need to use the names again unless you want to address them individually.17:21
-@gerrit:opendev.org- James E. Blair https://matrix.to/#/@jim:acmegating.com proposed: [zuul/nodepool] 921057: Add missing release note about max-age https://review.opendev.org/c/zuul/nodepool/+/92105717:35
@sylvass:albinvass.se> <@mordred:waterwanders.com> note to self - run tox _before_ pushing17:37
I'm very good at not doing that
-@gerrit:opendev.org- Monty Taylor https://matrix.to/#/@mordred:inaugust.com proposed: [zuul/zuul-jobs] 739047: Add a job for publishing a site to netlify https://review.opendev.org/c/zuul/zuul-jobs/+/73904718:21
@mordred:waterwanders.comcorvus: the previous version failed with "Failed to update apt cache: W:The repository 'https://deb.nodesource.com/node_6.x jammy Release' does not have a Release file." - which is fair, node 6 is SUPER old. I'm not 100% sure why it was trying to do 6 and not 14, which is what I would have expected since the variables in the js-build parent job set node_version to 14. However- netlify-cli requires >=18 - so it needs to be explicitly overridden _anyway_ , so I updated it in the job. If I get some time, I'll see if I can figure out why it was trying to install 618:27
-@gerrit:opendev.org- Zuul merged on behalf of James E. Blair https://matrix.to/#/@jim:acmegating.com: [zuul/zuul] 920693: Add buildset events to buildset summary page https://review.opendev.org/c/zuul/zuul/+/92069318:43
@jim:acmegating.commordred: looks like `zuul-jobs-test-netlify-publish` does not inherit from that, since it's just testing the role.  so it's getting the ensure-node default of 6.18:54
@mordred:waterwanders.comcorvus: aaaaaah. thank you. I was going a little crazy there18:56
@mordred:waterwanders.comI had a node_version in that job earlier and couldn't figure out why. this is why18:57
-@gerrit:opendev.org- Monty Taylor https://matrix.to/#/@mordred:inaugust.com proposed: [zuul/zuul-jobs] 739047: Add a job for publishing a site to netlify https://review.opendev.org/c/zuul/zuul-jobs/+/73904718:58
@jim:acmegating.comwe should probably see if we can just remove all the node_version defaults from roles?19:01
@jim:acmegating.com(then we can remove them from jobs as well)19:01
@jim:acmegating.comor maybe we need to start doing conditional minimums19:02
@mordred:waterwanders.comif we got rid of that from the roles - you think making it a required end-user parameter?19:21
@mordred:waterwanders.comit's actually only set as a default in a role in roles/ensure-nodejs/defaults/main.yaml - and in a deprecated playbook19:22
@jim:acmegating.comi dunno; just thinking out loud.  with the default of 6 it's effecatively a required parameter now...19:22
@mordred:waterwanders.comyeah19:23
@mordred:waterwanders.comI think at least removing that default and maybe replacing it with an assert that says "dude, you need to tell us what version of node you want"19:23
@mnaser:matrix.org+1 to policy of always not having a default.. cause I’m noticing a bunch of other things going behind too :x19:24
@mordred:waterwanders.comI think removing it from the role is easy19:27
@mordred:waterwanders.comremoving it from the js-build job description ... which also probably should happen ... that could be some breaking chaos19:27
-@gerrit:opendev.org- Monty Taylor https://matrix.to/#/@mordred:inaugust.com proposed: [zuul/zuul-jobs] 921066: Remove default value from ensure_nodejs https://review.opendev.org/c/zuul/zuul-jobs/+/92106619:29
-@gerrit:opendev.org- Monty Taylor https://matrix.to/#/@mordred:inaugust.com proposed: [zuul/zuul-jobs] 921067: Remove deprecated javascript jobs https://review.opendev.org/c/zuul/zuul-jobs/+/92106719:32
-@gerrit:opendev.org- Monty Taylor https://matrix.to/#/@mordred:inaugust.com proposed: [zuul/zuul-jobs] 921067: Remove deprecated javascript jobs https://review.opendev.org/c/zuul/zuul-jobs/+/92106719:33
-@gerrit:opendev.org- Monty Taylor https://matrix.to/#/@mordred:inaugust.com proposed: [zuul/zuul-jobs] 921067: Remove deprecated javascript jobs https://review.opendev.org/c/zuul/zuul-jobs/+/92106722:56

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