Wednesday, 2022-12-28

@jayyyxp:matrix.orgHi, I have been curious about Zuul and I've been reading the docs, but I have some questions on what it can and cannot do. I apologize if this  this the correct forum to ask.07:41
So the jobs are executed on nodes defined in nodepools, does nodepools also support dynamic workers, i.e. spinning up a K8 Pod on demand?
The cross platform dependencies work really well with source code dependencies, what about with artifacts?
- For example, project A might produce a client python library that project B depends on. In such cases, can Zuul create an ephemeral environment testing this or is writing this type of logic up to the user.
@avass:vassast.orgjayyyxp: yep nodepool supports a bunch of cloud drivers for dynamic nodes:08:13
https://zuul-ci.org/docs/nodepool/latest/configuration.html
@avass:vassast.org> <@jayyyxp:matrix.org> Hi, I have been curious about Zuul and I've been reading the docs, but I have some questions on what it can and cannot do. I apologize if this  this the correct forum to ask.08:14
>
> So the jobs are executed on nodes defined in nodepools, does nodepools also support dynamic workers, i.e. spinning up a K8 Pod on demand?
> The cross platform dependencies work really well with source code dependencies, what about with artifacts?
> - For example, project A might produce a client python library that project B depends on. In such cases, can Zuul create an ephemeral environment testing this or is writing this type of logic up to the user.
https://zuul-ci.org/docs/nodepool/latest/kubernetes.html
@avass:vassast.org> <@jayyyxp:matrix.org> Hi, I have been curious about Zuul and I've been reading the docs, but I have some questions on what it can and cannot do. I apologize if this  this the correct forum to ask.08:19
>
> So the jobs are executed on nodes defined in nodepools, does nodepools also support dynamic workers, i.e. spinning up a K8 Pod on demand?
> The cross platform dependencies work really well with source code dependencies, what about with artifacts?
> - For example, project A might produce a client python library that project B depends on. In such cases, can Zuul create an ephemeral environment testing this or is writing this type of logic up to the user.
For artifacts you can return artifact urls with: https://zuul-ci.org/docs/zuul/latest/job-content.html#returning-artifact-urls
and configure job.provides/job.requires to make the artifacts available to jobs:
https://zuul-ci.org/docs/zuul/latest/config/job.html#attr-job.provides
@jayyyxp:matrix.orgThank you Albin for the answers! 08:41
The k8 driver looks really great, I think its just what I need.
So I just need to set Zuul to upload artifacts to my artifact registry and make another job depend on those with job.requires. Then I just need to have some cleaner logic in place artifact registry so it doesn't get clogged up with unnecessary stuff.
@avass:vassast.org> <@jayyyxp:matrix.org> Thank you Albin for the answers! 08:47
>
> The k8 driver looks really great, I think its just what I need.
>
> So I just need to set Zuul to upload artifacts to my artifact registry and make another job depend on those with job.requires. Then I just need to have some cleaner logic in place artifact registry so it doesn't get clogged up with unnecessary stuff.
Something like that yep :)
Note that provides/requires only works across separate changes, it won't make jobs to wait for a depency in the same buildset. For that you'll have to use dependencies:
https://zuul-ci.org/docs/zuul/latest/config/job.html#attr-job.dependencies

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