| -@gerrit:opendev.org- Simon Westphahl proposed: [zuul/zuul] 964389: Annotate image upload logs with iba/upload uuid https://review.opendev.org/c/zuul/zuul/+/964389 | 05:44 | |
| -@gerrit:opendev.org- Zuul merged on behalf of Simon Westphahl: [zuul/zuul] 964459: Reset the success flag before each run playbook https://review.opendev.org/c/zuul/zuul/+/964459 | 09:12 | |
| -@gerrit:opendev.org- Zuul merged on behalf of Simon Westphahl: [zuul/zuul] 964382: Implement support for min-retention-time https://review.opendev.org/c/zuul/zuul/+/964382 | 09:21 | |
| -@gerrit:opendev.org- Simon Westphahl proposed: [zuul/zuul] 964683: Add metrics for image upload duration and state https://review.opendev.org/c/zuul/zuul/+/964683 | 10:31 | |
| -@gerrit:opendev.org- Simon Westphahl proposed: [zuul/zuul] 964689: Prevent error in stats to stop pipeline processing https://review.opendev.org/c/zuul/zuul/+/964689 | 12:58 | |
| -@gerrit:opendev.org- Simon Westphahl proposed: [zuul/zuul] 964683: Add metrics for image upload duration and state https://review.opendev.org/c/zuul/zuul/+/964683 | 13:05 | |
| -@gerrit:opendev.org- Simon Westphahl proposed: | 13:54 | |
| - [zuul/zuul] 964689: Prevent error in stats to stop pipeline processing https://review.opendev.org/c/zuul/zuul/+/964689 | ||
| - [zuul/zuul] 964694: Replace slash when normalizing statsd name https://review.opendev.org/c/zuul/zuul/+/964694 | ||
| @daniilgankov:matrix.org | That was my mistake, I missed that job.semaphores are already being inherited (by extending). | 14:34 |
|---|---|---|
| But is there a way to work with semaphore as a resource pool? A semaphore has its max count. But a job does not know which index is acquired. Maybe it is possible to implement something like items in semaphore. So, if semaphore.items are [item-0, item-1], its max is 2 and the job is locking semaphore.item-0 from such a resource pool. The semaphore is locked when all its items are locked. Can I propose something like this? | ||
| @daniilgankov:matrix.org | Is maybe there any other solution available in Zuul now? I have a pool of similar resources from which any one must be locked by a job and if all are locked, the job must wait for it. | 15:06 |
| @clarkb:matrix.org | One approach would be to use a static node with a 1:1 mapping to each resource. Then only have as many static nodes as you have resources and delegate via node assignment | 15:08 |
| @clarkb:matrix.org | But no I don't think there is a built in solution | 15:09 |
| @daniilgankov:matrix.org | I used this solution until I have Kubernetes nodes in my nodepool. AFAIK, different pools cannot be used together, so there's no way to use static and Kubernetes nodes in one nodeset. I've also tried to generate multiple pools with similar resource pods, but I cannot limit only one pod inside a pool. | 15:13 |
| @daniilgankov:matrix.org | * I used this solution until I have Kubernetes nodes in my nodepool. AFAIK, different pools cannot be used together, so there's no way to use static and Kubernetes nodes in one nodeset. I've also tried to generate multiple pools with similar resource/control pods, but I cannot limit the same pods between pools. | 15:15 |
| @fungicide:matrix.org | not yet, but that's something that the zuul-launcher (replacement for nodepool) will be capable of | 15:16 |
| @fungicide:matrix.org | mixing resources from different pools/providers i mean | 15:16 |
| @daniilgankov:matrix.org | 15:21 | |
| > something like items in semaphore | ||
| Is this a viable idea? | ||
| @nitarek123:matrix.org | Q: | 15:30 |
| To include roles to be used by a job | ||
| ``` | ||
| roles: | ||
| - zuul: project/abc | ||
| ``` | ||
| So including roles from a repository works only if the roles/ directory is present in the top-level directory of the repository, right? Is there any way to qualify the roles directory with anything else before it, like .zuul.d/roles/ instead? | ||
| @nitarek123:matrix.org | This is actually probably downstream from actually just getting roles noticed, since it doesn't get picked up upon as of now: | 15:34 |
| ``` | ||
| .zuul.d | ||
| ├── filter_plugins | ||
| │ └── zuul_helpers.py | ||
| ├── jobs | ||
| │ ├── base.yaml | ||
| │ ├── builds.yaml | ||
| │ ├── checks.yaml | ||
| │ ├── generated | ||
| │ │ └── test_*.yaml | ||
| │ ├── performance.yaml | ||
| │ └── templates.yaml | ||
| ├── playbooks | ||
| │ ├── builds | ||
| │ │ ├── build1 | ||
| │ │ │ └── run.yaml | ||
| │ │ ├── build2 | ||
| │ │ │ ├── run.yaml | ||
| │ │ │ └── vars | ||
| │ │ └── build3 | ||
| │ │ └── run.yaml | ||
| │ ├── checks | ||
| │ │ ├── commit | ||
| │ │ │ └── run.yaml | ||
| │ │ ├── frozen-jobs | ||
| │ │ │ └── run.yaml | ||
| │ │ └── source | ||
| │ │ └── run.yaml | ||
| │ └── tests | ||
| │ ├── pre.yaml | ||
| │ ├── test1 | ||
| │ │ └── run.yaml | ||
| │ ├── test2 | ||
| │ │ └── run.yaml | ||
| ├── roles | ||
| │ ├── archive-builds | ||
| │ │ └── tasks | ||
| │ │ └── main.yaml | ||
| │ ├── checkout-submodule-trees | ||
| │ │ ├── defaults | ||
| │ │ │ └── main.yaml | ||
| │ │ └── tasks | ||
| │ │ └── main.yaml | ||
| │ ├── unarchive-downloads | ||
| │ │ ├── defaults | ||
| │ │ │ └── main.yaml | ||
| │ │ └── tasks | ||
| │ │ └── main.yaml | ||
| └── zuul.yaml | ||
| ``` | ||
| @clarkb:matrix.org | There is a way to specify alternative config loading dirs. I don't know if that was done for roles too | 15:42 |
| @fungicide:matrix.org | https://zuul-ci.org/docs/zuul/latest/job-content.html#var-zuul.playbook_context.playbooks.roles.role_path maybe? | 15:43 |
| @fungicide:matrix.org | i'm not spotting any examples of us using that anywhere in opendev though | 15:48 |
| @nitarek123:matrix.org | That's not mutable right? That's just the information ansible provides us. I'm seeing in the inventory.yaml that: | 15:50 |
| ``` | ||
| playbooks: | ||
| - path: untrusted/project_0/project/abc/.zuul.d/playbooks/builds/build1/run.yaml | ||
| roles: | ||
| - checkout: master | ||
| checkout_description: playbook branch | ||
| link_name: ansible/playbook_0/role_0/abc | ||
| link_target: untrusted/project_0/project/abc | ||
| role_path: ansible/playbook_0/role_0/abc/roles | ||
| - checkout: main | ||
| checkout_description: project default branch | ||
| link_name: ansible/playbook_0/role_1/abc-zuul-config | ||
| link_target: untrusted/project_1/project/abc-zuul-config | ||
| role_path: ansible/playbook_0/role_1/abc-zuul-config/roles | ||
| - checkout: master | ||
| checkout_description: zuul branch | ||
| link_name: ansible/playbook_0/role_2/zuul-jobs | ||
| link_target: untrusted/project_2/opendev.org/zuul/zuul-jobs | ||
| role_path: ansible/playbook_0/role_2/zuul-jobs/roles | ||
| ``` | ||
| @nitarek123:matrix.org | So it does qualify the abc path with roles/ but I'm not sure how to teach it to look somewhere else apart from `roles/`, like `.zuul.d/roles/` in my case | 15:51 |
| @fungicide:matrix.org | oh, yeah i think you're right | 15:52 |
| @fungicide:matrix.org | however, you can put a roles directory at the root of a different git repository and reference roles contained there | 15:57 |
| @nitarek123:matrix.org | Hmm, I'll consider that or symlinking roles to the current spot. Thanks. | 15:58 |
| @jim:acmegating.com | nitarek123: keep in mind that ansible has some implicit role locations as well, such as adjacent to playbooks. so if root/playbook/playbook.yaml is running, it can use roles from root/playbook/roles/... | 16:01 |
| @fungicide:matrix.org | does it look for a roles tree in the current or any parent directory of the playbook? is that why roles at the root of the repo works? | 16:03 |
| @nitarek123:matrix.org | Parent directory of the playbook is what I've observed. Like in my case, if a playbook is at `.zuul.d/playbooks/checks/commit/run.yaml`, it'll look for roles at: `.zuul.d/playbooks/checks/commit/roles/` | 16:06 |
| @jim:acmegating.com | what zuul does is described here: https://zuul-ci.org/docs/zuul/latest/config/job.html#attr-job.roles (especially the paragraph that starts with "A project which supplies a role"). the rest is ansible, so i'd recommend consulting ansible's docs for that. | 16:08 |
| -@gerrit:opendev.org- James E. Blair https://matrix.to/#/@jim:acmegating.com proposed: [zuul/zuul] 964710: Launcher: fix passing username and other attrs https://review.opendev.org/c/zuul/zuul/+/964710 | 16:50 | |
| -@gerrit:opendev.org- Clark Boylan proposed: [zuul/zuul-jobs] 964724: Find tox/nox siblings with normalized package names https://review.opendev.org/c/zuul/zuul-jobs/+/964724 | 18:17 | |
| -@gerrit:opendev.org- James E. Blair https://matrix.to/#/@jim:acmegating.com proposed: [zuul/zuul] 964710: Launcher: fix passing username and other attrs https://review.opendev.org/c/zuul/zuul/+/964710 | 18:22 | |
| -@gerrit:opendev.org- Clark Boylan proposed: [zuul/zuul-jobs] 964724: Find tox/nox siblings with normalized package names https://review.opendev.org/c/zuul/zuul-jobs/+/964724 | 18:29 | |
| -@gerrit:opendev.org- Clark Boylan proposed: [zuul/zuul-jobs] 964724: Find tox/nox siblings with normalized package names https://review.opendev.org/c/zuul/zuul-jobs/+/964724 | 18:44 | |
| @clarkb:matrix.org | zuulians ^ that is hopefully a quick review impacting some users in opendev | 19:00 |
| @clarkb:matrix.org | basically python package names can come in many equivalent but not equal forms so we need to check for equivalence not equality | 19:00 |
| -@gerrit:opendev.org- Zuul merged on behalf of Clark Boylan: [zuul/zuul] 962449: Record missing info in job-output.json https://review.opendev.org/c/zuul/zuul/+/962449 | 20:27 | |
| -@gerrit:opendev.org- Zuul merged on behalf of James E. Blair https://matrix.to/#/@jim:acmegating.com: [zuul/zuul] 963634: Fix test_launcher_image_expire_failed_upload https://review.opendev.org/c/zuul/zuul/+/963634 | 21:42 | |
Generated by irclog2html.py 4.0.0 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!