Tuesday, 2024-02-13

@tony.breeds:matrix.orgWhen setting a timeout on a job, does that apply to only the job or the job and any/all dependencies ?00:11
@fungicide:matrix.orgtony.breeds: it applies to the playbook, actually00:12
@fungicide:matrix.orgso there are separate timeouts per phase as well00:12
@fungicide:matrix.orgat least for some phases00:12
@tony.breeds:matrix.orgAh okay.I guess that wasn't my problem.00:13
@fungicide:matrix.orgcan you describe your problem?00:14
@fungicide:matrix.org(he says as he's about to step away from the computer, but maybe someone in an earlier timezone has ideas for you)00:14
@jim:acmegating.comhttps://zuul-ci.org/docs/zuul/latest/config/job.html#attr-job.timeout for clarity00:16
@tony.breeds:matrix.orgI'm working on new constraints jobs.  requirements-merge-constraints, depend on artifacts from requirements-generate-constraints.  The 'merge' job failed with RETRY_LIMIT (and no logs) so I was really just stabbing in the dark.  I *thought* it could be that the generate job just took to long so the merge job gave up.00:17
@tony.breeds:matrix.orgbut it sounds's like the timeouts don't work that way00:18
@fungicide:matrix.orgif there are no logs archived, a zuul admin may need to check the executor debug log for ansible errors/tracebacks00:18
@fungicide:matrix.orgor you might try to catch its console stream while the build is in progress00:19
@fungicide:matrix.orgmost likely cause of a persistent RETRY_LIMIT result though is some task failing in a pre-run phase playbook00:20
@fungicide:matrix.orgbut in this case, probably also failing in some way that it broke log collection in post-run00:20
@tony.breeds:matrix.orgYeah no logs, I have rechecked it.  if it fails again I'll poke around in the executror logs ... it'll be a good learning experience00:21
@tony.breeds:matrix.orgWell I think that was easy.  If I'm right it seems  `src_dir` wasn't a good choice for a job variable :/00:32
@tony.breeds:matrix.orgNope that wasn't it01:38
@tony.breeds:matrix.orgAll I can find is ```2024-02-13 00:29:53,859 ERROR zuul.AnsibleJob: [e: 960ae60da0af47b28f4220c4f988ffac] [build: 7b22bc763e594f4ea5b737358879015c] Exception while executing job                                                                                  2024-02-13 00:29:53,874 DEBUG zuul.JobRequestQueue: [e: 960ae60da0af47b28f4220c4f988ffac] [build: 7b22bc763e594f4ea5b737358879015c] Updating request <BuildRequest 7b22bc763e594f4ea5b737358879015c, job=ff66cf75a41c455dbe1b972c3118a081, state=completed, path=/zuul/executor/unzoned/requests/7b22bc763e594f4ea5b737358879015c zone=None>                                                                                                                                                2024-02-13 00:29:53,874 INFO zuul.ExecutorServer: [e: 960ae60da0af47b28f4220c4f988ffac] [build: 7b22bc763e594f4ea5b737358879015c] Held status set to False                                                                                    2024-02-13 00:29:54,169 DEBUG zuul.ExecutorServer: [e: 960ae60da0af47b28f4220c4f988ffac] [build: 7b22bc763e594f4ea5b737358879015c] Sent SIGTERM to SSH Agent, {'SSH_AUTH_SOCK': '/tmp/ssh-XXXXXX03dobW/agent.2620343', 'SSH_AGENT_PID': '2620344'}                                                                                                                                                                                                                                          01:40
```
@tony.breeds:matrix.org * All I can find is01:40
```2024-02-13 00:29:53,859 ERROR zuul.AnsibleJob: \[e: 960ae60da0af47b28f4220c4f988ffac\] \[build: 7b22bc763e594f4ea5b737358879015c\] Exception while executing job 2024-02-13 00:29:53,874 DEBUG zuul.JobRequestQueue: \[e: 960ae60da0af47b28f4220c4f988ffac\] \[build: 7b22bc763e594f4ea5b737358879015c\] Updating request \<BuildRequest 7b22bc763e594f4ea5b737358879015c, job=ff66cf75a41c455dbe1b972c3118a081, state=completed, path=/zuul/executor/unzoned/requests/7b22bc763e594f4ea5b737358879015c zone=None> 2024-02-13 00:29:53,874 INFO zuul.ExecutorServer: \[e: 960ae60da0af47b28f4220c4f988ffac\] \[build: 7b22bc763e594f4ea5b737358879015c\] Held status set to False 2024-02-13 00:29:54,169 DEBUG zuul.ExecutorServer: \[e: 960ae60da0af47b28f4220c4f988ffac\] \[build: 7b22bc763e594f4ea5b737358879015c\] Sent SIGTERM to SSH Agent, {'SSH\_AUTH\_SOCK': '/tmp/ssh-XXXXXX03dobW/agent.2620343', 'SSH\_AGENT\_PID': '2620344'}```
@tony.breeds:matrix.orgNot sure where else to look01:41
@jim:acmegating.comtony.breeds: this might be better for #_oftc_#opendev:matrix.org 01:50
@tony.breeds:matrix.orgOkay.  I came here as it's kinda 'general zuul'01:51
@jim:acmegating.comtony.breeds: sure, but i have followup questions that are really boring for this channel like which zuul exeuctor you got that from so i can help you look :)01:51
@tony.breeds:matrix.orgOkay01:54
@jim:acmegating.comfor the record: 2024-02-13 00:29:53,859 ERROR zuul.AnsibleJob:   Exception: Variable names may only contain letters, numbers, and underscores01:57
@jim:acmegating.com(and yeah, probably would be good if that got propogated to users)01:57
-@gerrit:opendev.org- Matthieu Huin https://matrix.to/#/@mhuin:matrix.org proposed: [zuul/zuul] 908794: [WIP] Merger: add 'clone_filter' configuration setting https://review.opendev.org/c/zuul/zuul/+/90879408:53
@maiton:matrix.orgHello, I have a questions about job.files usage. I wanted to use a reference in it, but I want that to be the result of concatenating 2 lists. I have tried different options but my job isn't triggered. While if I use a reference to a "static" list it works fine09:06
-@gerrit:opendev.org- Matthieu Huin https://matrix.to/#/@mhuin:matrix.org proposed: [zuul/zuul] 872552: Keycloak tutorial: update to keycloak 23, add CLI example https://review.opendev.org/c/zuul/zuul/+/87255209:08
@maiton:matrix.orgnot sure if this is the right place for asking, I came here from https://zuul-ci.org/community.html, if not can you please point me to the right place for such questions? thanks in advance09:13
@fungicide:matrix.orgmaiton: i'm not sure what the answer to your question is, but yes this is the place to ask it. most of the activity here is during daylight hours in the americas, so maybe someone will have a suggestion for you soon. also there's a zuul-discuss@lists.zuul-ci.org mailing list where you can ask questions if you prefer13:44
@fungicide:matrix.orgmhu: did you mean to base that on top of https://review.opendev.org/908869 ?14:00
@mhuin:matrix.org> <@fungicide:matrix.org> mhu: did you mean to base that on top of https://review.opendev.org/908869 ?14:01
I wasn't aware of this change - I had an old one to update the example to keycloak 21 and refreshed it
@mhuin:matrix.orgsince you have this one up, mine might not be needed14:01
@fungicide:matrix.orgmhu: well, the doc addition is useful on its own14:02
@mhuin:matrix.orgI can drop the H2 env var in mine and let's run with it?14:02
@mhuin:matrix.orgor maybe just rebase on yours14:03
@fungicide:matrix.orgwe should probably coordinate between that and https://review.opendev.org/908855 since they may merge-conflict14:03
@mhuin:matrix.orgbut they don't modify the same files then 908855 though?14:04
@mhuin:matrix.orgI'll rebase mine on yours to keep the doc update14:04
@fungicide:matrix.orgbut also we can cross-review each others changes there. i'm in the process of rebuilding opendev's keycloak on v23 so wanted to refresh the keycloak howto14:04
@fungicide:matrix.orgoh, there's a keycloak tutorial and a keycloak howto? how did i miss that?14:04
@mhuin:matrix.orgnot a tutorial, more like a demo. The compose gets you up and running with an authenticated Zuul14:05
@fungicide:matrix.orgyeah, my changes also edit the keycloak realm import, but i guess yours doesn't touch that14:06
-@gerrit:opendev.org- Matthieu Huin https://matrix.to/#/@mhuin:matrix.org proposed: [zuul/zuul] 872552: Keycloak tutorial: add zuul-client example https://review.opendev.org/c/zuul/zuul/+/87255214:07
@mhuin:matrix.orgokay rebased14:07
@mhuin:matrix.orgthanks for letting me know14:07
@fungicide:matrix.orgmhu: the zuul-client example doesn't mention how it relates to the rest of that document... is it related to keycloak at all?14:11
@fungicide:matrix.orgthe section starts out with "you can then perform admin actions from the cli" implying that logging into the webui was a prerequisite for doing so, but i don't see a clear indication why14:13
@mhuin:matrix.org"then" might be misleading I guess. The idea was to document the alternative to the GUI for privileged actions in that demo context. It is however a specific case since in order to work, keycloak is configured with direct grant access enabled (ie credentials can be passed through the application directly rather than going through a browser authentication)14:15
@mhuin:matrix.orgspeaking of which, there's a patch on zuul-client to enable browser authentication: https://review.opendev.org/c/zuul/zuul-client/+/831946 this is something our users request to get in line with security compliance14:18
@fungicide:matrix.orgmhu: thanks, that makes sense. i suppose to tie it together better, that section could mention e.g. the ability to use your keycloak username/password with zuul-client, or using your keycloak-authenticated web session to obtain a client access token for zuul-client15:37
@fungicide:matrix.orgi'll leave some comments on the change15:37
-@gerrit:opendev.org- Zuul merged on behalf of Tristan Cacqueray https://matrix.to/#/@tristanc_:matrix.org: [zuul/zuul-jobs] 899212: Introduce LogJuicer roles https://review.opendev.org/c/zuul/zuul-jobs/+/89921215:41
-@gerrit:opendev.org- Zuul merged on behalf of James E. Blair https://matrix.to/#/@jim:acmegating.com: [zuul/zuul-jobs] 907363: Add zuul-tenant-conf-check role/job https://review.opendev.org/c/zuul/zuul-jobs/+/90736316:09
@maiton:matrix.org@fungi ok thanks! I will try to ask also on the mailing list17:17
@clarkb:matrix.orgmaiton: it might help to have a concrete example of your yaml as well18:51
-@gerrit:opendev.org- James E. Blair https://matrix.to/#/@jim:acmegating.com proposed: [zuul/zuul-jobs] 908671: Remove command.warn usage https://review.opendev.org/c/zuul/zuul-jobs/+/90867119:27
@maiton:matrix.org@Clark thanks for your response. Here is an extract of what I am trying to do:19:36
@maiton:matrix.org    description: Base job for test jobs19:36
vars:
(...)
files: &common-files
- ^bazel/app/.*
- ^third_party/python/.*
- ^third_party/simple/.*
- ^shared/middleware/.*
- ^products/shared/.*
- ^third_party/caf_files/.*
- job:
name: test-apps-child-1
parent: test-apps
vars:
domain_files:
- *common-files
- ^apps/test/.*
- ^products/test/.*
target_files: &target_files_child_1
"{{ domain_files | flatten }"
files: &target_files_child_1
@maiton:matrix.orgouch not the best copy&past sorry, basically what I want is defining a common-files list to use with job.files, and then extending that for child jobs which needs to be triggered on common-files  other specific files19:39
@maiton:matrix.orgI would like not to repeat the common-files triggers over and over19:40
@maiton:matrix.org- job:19:42
name: test-apps
description: Base job for test jobs
vars:
(...)
files: &common-files
- ^bazel/app/.*
- ^third_party/python/.*
- ^third_party/simple/.*
- ^shared/middleware/.*
- ^products/shared/.*
- ^third_party/caf_files/.*
- job:
name: test-apps-child-1
parent: test-apps
vars:
domain_files:
- *common-files
- ^apps/test/.*
- ^products/test/.*
target_files: &target_files_child_1
"{{ domain_files | flatten }"
files: &target_files_child_1
@maiton:matrix.org* - job:19:43
name: test-apps
description: Base job for test jobs
vars:
(...)
files: &common-files
- ^bazel/app/.*
- ^third_party/python/.*
- ^third_party/simple/.*
- ^shared/middleware/.*
- ^products/shared/.*
- ^third_party/caf_files/.*
- job:
name: test-apps-child-1
parent: test-apps
vars:
domain_files:
- *}common-files
- ^apps/test/.*
- ^products/test/.*
target_files: &target_files_child_1
"{{ domain_files | flatten }"
files: &target_files_child_1
@maiton:matrix.org* - job:19:44
name: test-apps
description: Base job for test jobs
vars:
(...)
files: &common-files
- ^bazel/app/.*
- ^third_party/python/.*
- ^third_party/simple/.*
- ^shared/middleware/.*
- ^products/shared/.*
- ^third_party/caf_files/.*
- job:
name: test-apps-child-1
parent: test-apps
vars:
domain_files:
- **common-files
- ^apps/test/.*
- ^products/test/.*
target_files: &target_files_child_1
"{{ domain_files | flatten }"
files: &target_files_child_1
@jim:acmegating.commaiton: try putting three backticks before and after the text19:44
@jim:acmegating.com * maiton: try putting three backticks before and after the text (to get the proper block quote in matrix)19:44
@maiton:matrix.org* `- job:19:44
name: test-apps
description: Base job for test jobs
vars:
(...)
files: &common-files
- ^bazel/app/.*
- ^third_party/python/.*
- ^third_party/simple/.*
- ^shared/middleware/.*
- ^products/shared/.*
- ^third_party/caf_files/.*
- job:
name: test-apps-child-1
parent: test-apps
vars:
domain_files:
- **common-files
- ^apps/test/.*
- ^products/test/.*
target_files: &target_files_child_1
"{{ domain_files | flatten }"
files: &target_files_child_1`
@maiton:matrix.org* '''- job:19:45
name: test-apps
description: Base job for test jobs
vars:
(...)
files: &common-files
- ^bazel/app/.*
- ^third_party/python/.*
- ^third_party/simple/.*
- ^shared/middleware/.*
- ^products/shared/.*
- ^third_party/caf_files/.*
- job:
name: test-apps-child-1
parent: test-apps
vars:
domain_files:
- **common-files
- ^apps/test/.*
- ^products/test/.*
target_files: &target_files_child_1
"{{ domain_files | flatten }"
files: &target_files_child_1'''
@jim:acmegating.commaiton: like:19:45
\`\`\`
text
\`\`\`
@maiton:matrix.org* ```- job:19:45
name: test-apps
description: Base job for test jobs
vars:
(...)
files: &common-files
- ^bazel/app/.*
- ^third_party/python/.*
- ^third_party/simple/.*
- ^shared/middleware/.*
- ^products/shared/.*
- ^third_party/caf_files/.*
- job:
name: test-apps-child-1
parent: test-apps
vars:
domain_files:
- **common-files
- ^apps/test/.*
- ^products/test/.*
target_files: &target_files_child_1
"{{ domain_files | flatten }"
files: &target_files_child_1'''
@maiton:matrix.org* ```- job:19:46
name: test-apps
description: Base job for test jobs
vars:
(...)
files: &common-files
- ^bazel/app/.*
- ^third_party/python/.*
- ^third_party/simple/.*
- ^shared/middleware/.*
- ^products/shared/.*
- ^third_party/caf_files/.*
- job:
name: test-apps-child-1
parent: test-apps
vars:
domain_files:
- **common-files
- ^apps/test/.*
- ^products/test/.*
target_files: &target_files_child_1
"{{ domain_files | flatten }"
files: &target_files_child_1
@maiton:matrix.org* ```- job:19:46
name: test-apps
description: Base job for test jobs
vars:
(...)
files: &common-files
- ^bazel/app/.*
- ^third_party/python/.*
- ^third_party/simple/.*
- ^shared/middleware/.*
- ^products/shared/.*
- ^third_party/caf_files/.*
- job:
name: test-apps-child-1
parent: test-apps
vars:
domain_files:
- **common-files
- ^apps/test/.*
- ^products/test/.*
target_files: &target_files_child_1
"{{ domain_files | flatten }"
files: &target_files_child_1```
@maiton:matrix.orgthanks19:46
@maiton:matrix.org* ```- job:19:47
name: test-apps
description: Base job for test jobs
vars:
(...)
files: &common-files
- ^bazel/app/.*
- ^third_party/python/.*
- ^third_party/simple/.*
- ^shared/middleware/.*
- ^products/shared/.*
- ^third_party/caf_files/.*
- job:
name: test-apps-child-1
parent: test-apps
vars:
domain_files:
- *common-files
- ^apps/test/.*
- ^products/test/.*
target_files: &target_files_child_1
"{{ domain_files | flatten }"
files: &target_files_child_1```
@maiton:matrix.orgHope that's a little bit clearer, thanks19:48
@jim:acmegating.commaiton: https://paste.opendev.org/show/bue5S2kLhUT576HI9cRl/ produces a yaml syntax error about a duplicate anchor19:50
@maiton:matrix.orgyep sorry my fault on pasting19:52
@jim:acmegating.commaiton: just guessing, did you want that last "files: &target_files" to be "files: *target_files" ?19:52
@maiton:matrix.orgyes exactly19:53
@maiton:matrix.orgdoes it make sense to you the approach I wanted to use?19:53
@jim:acmegating.commaiton: okay i see the disconnect.  the target_files is using ansible syntax (with the `flatten` filter in {{}}).  but the `files:` attribute is a zuul job setting.  the zuul job stuff happens a level above ansible.  so the results of the expansion of target_files is not available to the files attribute on the zuul job definition19:54
@jim:acmegating.commaiton: if you update that python script and run it and squint at the output, you can see that the result of that is that job.files gets set to the literal string:  `'{{ domain_files | flatten }`  (yes that's missing a final } but that doesn't matter).  that's syntatictally correct from zuul's point of view, but it's never going to see a file with that particular name so your job doesn't run19:56
@maiton:matrix.orgso if I understand well I cannot use the ansible  "{{ domain_files | flatten }}"19:59
@maiton:matrix.orgbecause it will get just the corresponding string19:59
@jim:acmegating.commaiton: correct; there is no anisble/jinja templating available on job attributes like `files`19:59
@maiton:matrix.orgmmh ok, any suggestion to achieve what I want?20:00
@jim:acmegating.commaiton: (but to be clear, you can pass in things like that to ansible via job variables; that doesn't help you here, i'm just clarifying when you can use it)20:00
@maiton:matrix.orgyes, thanks it is much clearer now20:00
@maiton:matrix.orgI am wondering if there is any workaround to avoid to repeat the common-files list and extending as needed by each job20:01
@jim:acmegating.comin opendev we typically just repeat them; if there is a very large number, you could look into automating the job definition creation (or validating that they're correct)20:10
@maiton:matrix.orgI see20:11
@maiton:matrix.orgthanks for your help :)20:12
-@gerrit:opendev.org- Jeremy Stanley https://matrix.to/#/@fungicide:matrix.org proposed: [zuul/zuul] 908855: Refresh Keycloak OpenID Howto for latest Keycloak https://review.opendev.org/c/zuul/zuul/+/90885521:23
-@gerrit:opendev.org- Jeremy Stanley https://matrix.to/#/@fungicide:matrix.org proposed: [zuul/zuul] 908855: Refresh Keycloak OpenID Howto for latest Keycloak https://review.opendev.org/c/zuul/zuul/+/90885521:30
-@gerrit:opendev.org- James E. Blair https://matrix.to/#/@jim:acmegating.com proposed: [zuul/nodepool] 908952: Add host-key-checking to metastatic driver https://review.opendev.org/c/zuul/nodepool/+/90895222:13
-@gerrit:opendev.org- Francisco Seruca Salgado proposed: [zuul/zuul] 908507: Update decrypt_secret.py script https://review.opendev.org/c/zuul/zuul/+/90850722:15

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