Monday, 2020-09-14

*** zenkuro has quit IRC01:26
*** sanjayu_ has joined #zuul01:55
*** sanjayu_ has quit IRC03:17
*** evrardjp has quit IRC04:33
*** evrardjp has joined #zuul04:33
*** vishalmanchanda has joined #zuul04:45
openstackgerritIan Wienand proposed zuul/zuul master: web: PF4 minor rework of log viewer page  https://review.opendev.org/75114004:49
*** wxy has quit IRC05:50
*** jfoufas1 has joined #zuul05:59
*** mach1na has joined #zuul06:09
*** sanjayu_ has joined #zuul06:27
*** hashar has joined #zuul06:40
*** wxy has joined #zuul07:06
*** jpena|off is now known as jpena07:22
*** jcapitao has joined #zuul07:29
openstackgerritPierre-Louis Bonicoli proposed zuul/zuul-jobs master: default test_command: don't use a shell builtin  https://review.opendev.org/75165907:53
openstackgerritGuillaume Chauvel proposed zuul/zuul master: tutorial: Rework quick-start and prepare for other tutorials  https://review.opendev.org/73206608:09
*** tosky has joined #zuul08:27
*** nils has joined #zuul08:40
*** saneax has joined #zuul08:45
openstackgerritDmitriy Rabotyagov (noonedeadpunk) proposed zuul/zuul-jobs master: Add support to use stow for ensure-python  https://review.opendev.org/75161108:46
*** sanjayu_ has quit IRC08:46
openstackgerritSimon Westphahl proposed zuul/zuul master: Offload repo reset during merge  https://review.opendev.org/75167309:02
openstackgerritPierre-Louis Bonicoli proposed zuul/zuul-jobs master: default test_command: don't use a shell builtin  https://review.opendev.org/75165909:06
*** sshnaidm|pto is now known as sshnaidm09:10
openstackgerritGuillaume Chauvel proposed zuul/zuul master: tutorial: Rework quick-start and prepare for other tutorials  https://review.opendev.org/73206609:17
openstackgerritTobias Henkel proposed zuul/zuul master: Don't match branch protection rule patterns locally  https://review.opendev.org/75168609:26
*** wuchunyang has joined #zuul09:38
*** jfoufas1 has quit IRC09:44
*** holser has joined #zuul09:47
*** jfoufas1 has joined #zuul09:56
*** zenkuro has joined #zuul10:12
*** wuchunyang has quit IRC10:15
openstackgerritGuillaume Chauvel proposed zuul/zuul master: tutorial: Add "gate your first patch"  https://review.opendev.org/73206710:30
openstackgerritGuillaume Chauvel proposed zuul/zuul master: tutorial: Add "Use zuul jobs"  https://review.opendev.org/73206810:30
openstackgerritGuillaume Chauvel proposed zuul/zuul master: tutorial: Add "gate pipeline"  https://review.opendev.org/73206910:30
openstackgerritGuillaume Chauvel proposed zuul/zuul master: tutorial: Add "job secrets"  https://review.opendev.org/73207010:30
openstackgerritGuillaume Chauvel proposed zuul/zuul master: tutorial: Add "job dependencies"  https://review.opendev.org/73207110:30
openstackgerritGuillaume Chauvel proposed zuul/zuul master: Rename quick-start to zuul-tutorial-quick-start  https://review.opendev.org/73765610:30
openstackgerritGuillaume Chauvel proposed zuul/zuul master: [DNM] TEST run zuul tutorials to test stream+callback (+ zuul-jobs change)  https://review.opendev.org/73547710:30
openstackgerritGuillaume Chauvel proposed zuul/zuul master: [DNM] Test: run multiple tutorials ('job dependencies' 2 times)  https://review.opendev.org/74155810:30
openstackgerritMatthieu Huin proposed zuul/zuul-client master: Add cross testing with Zuul  https://review.opendev.org/75126410:33
*** jcapitao is now known as jcapitao_lunch10:34
*** saneax has quit IRC10:34
*** saneax has joined #zuul10:36
openstackgerritMatthieu Huin proposed zuul/zuul master: [WIP]Add zuul-client to requirements  https://review.opendev.org/75019610:47
*** jfoufas1 has quit IRC10:56
*** mach1na has quit IRC11:09
openstackgerritTobias Henkel proposed zuul/zuul master: Don't match branch protection rule patterns locally  https://review.opendev.org/75168611:21
*** jpena is now known as jpena|lunch11:31
*** bschanzel has quit IRC11:36
*** bschanzel has joined #zuul11:37
*** mach1na has joined #zuul11:40
openstackgerritMatthieu Huin proposed zuul/zuul-client master: Add cross testing with Zuul  https://review.opendev.org/75126411:41
*** holser has quit IRC11:47
openstackgerritMatthieu Huin proposed zuul/zuul-client master: Add cross testing with Zuul  https://review.opendev.org/75126411:47
*** rfolco has joined #zuul11:55
*** rfolco is now known as rfolco|ruck11:55
*** bhavikdbavishi has joined #zuul11:57
openstackgerritMatthieu Huin proposed zuul/zuul-client master: Add cross testing with Zuul  https://review.opendev.org/75126411:58
*** jcapitao_lunch is now known as jcapitao11:59
*** mach1na has quit IRC12:00
*** mach1na has joined #zuul12:01
*** holser has joined #zuul12:04
*** Goneri has joined #zuul12:11
*** rlandy has joined #zuul12:14
felixedelzuul-maint: Could we get another review on https://review.opendev.org/#/c/750875/ and its parents? Would be helpful to get those changes merged to finally fix the scrolling issues (and get back the improved build page :D ).12:16
*** saneax has quit IRC12:20
*** saneax has joined #zuul12:20
*** jpena|lunch is now known as jpena12:28
*** vishalmanchanda has quit IRC12:28
openstackgerritFelix Edel proposed zuul/zuul master: Revert "web: restore scrollbars and scroll behaviour"  https://review.opendev.org/75036112:50
openstackgerritFelix Edel proposed zuul/zuul master: Revert "Revert PF4 build page"  https://review.opendev.org/75036512:50
openstackgerritFelix Edel proposed zuul/zuul master: Use Modal to show config errors and fix scrolling  https://review.opendev.org/75032212:50
openstackgerritFelix Edel proposed zuul/zuul master: web: Fix error modal contents  https://review.opendev.org/74409512:50
openstackgerritFelix Edel proposed zuul/zuul master: UI: Wrap lines on Logfile page  https://review.opendev.org/75087512:50
*** irclogbot_0 has quit IRC13:19
*** irclogbot_2 has joined #zuul13:26
openstackgerritMatthieu Huin proposed zuul/zuul-client master: Add cross testing with Zuul  https://review.opendev.org/75126413:30
*** bhavikdbavishi has quit IRC13:37
*** sshnaidm is now known as sshnaidm|afk14:07
*** hashar has quit IRC14:14
*** ianychoi has joined #zuul15:24
*** mach1na has quit IRC15:32
tobiashzuul-maint: I have a bunch of github improvements (request optimization, better testing and most notably handling review requirements when enqueing into gates): https://review.opendev.org/751686 and parents15:37
openstackgerritMatthieu Huin proposed zuul/zuul-client master: Add cross testing with Zuul  https://review.opendev.org/75126415:40
mhuhello, I am trying to mimic the nodepool-zuul-functional job for zuul-client with change ^ but I keep hitting timeouts at the end of the build, for example https://zuul.opendev.org/t/zuul/build/84280cb7ed024dc7a2fb80ea077e5ef615:43
mhuAny idea why?15:43
clarkbtobiash: couple of questions on the end of that stack15:51
clarkbmhu: zuul's unittest jobs have timeouts set to 80 minutes https://opendev.org/zuul/zuul/src/branch/master/.zuul.yaml#L252 but yours is only 60 minutes when running the same tests15:55
clarkbmhu: I think you're just hitting a known limit there?15:55
mhuclarkb, the timeout seems to happen in the post phase, would that fit?15:56
tobiashclarkb: thanks, responded15:56
clarkbmhu: it happens during the run playbook https://zuul.opendev.org/t/zuul/build/84280cb7ed024dc7a2fb80ea077e5ef6/log/job-output.txt#169015:57
mhugotcha, didn't see this one15:58
tobiashtristanC: was did you not +3 https://review.opendev.org/744194 on purpose?15:58
openstackgerritMatthieu Huin proposed zuul/zuul-client master: Add cross testing with Zuul  https://review.opendev.org/75126415:58
tristanCtobiash: yep, still going through the stack15:59
tobiashtristanC: ok, thanks16:00
mhufungi, I noticed the packaging for zuul-client had some errors, this should fix them: https://review.opendev.org/#/c/751576/16:06
fungioh, excellent, thanks... taking a look now16:07
tobiashmhu: so this adds the zuulclient python package to the wheel zuul-client right?16:08
mhutobiash, it should yes16:08
tobiashk, I was a little bit confused about zuulclient vs zuul-client :D16:09
mhupip install zuul-client -> import zuulclient16:09
mhuexcept that the current zuul-client on pypi is broken16:10
*** jcapitao has quit IRC16:11
tobiashclarkb: it would be great if you could put the memleak fixes to your review list as well: https://review.opendev.org/#/q/status:open+project:zuul/zuul+branch:master+topic:memleak-fixes16:13
openstackgerritMatthieu Huin proposed zuul/zuul-client master: Make default config files location a class attribute  https://review.opendev.org/75129116:24
*** armstrongs has joined #zuul16:30
*** jpena is now known as jpena|off16:31
clarkbtobiash: working through those next. Have some beginning of school year stuff now so may be a bit16:40
*** armstrongs has quit IRC16:40
tobiashthanks16:40
openstackgerritMerged zuul/zuul-client master: Fix empty package, missing requirement  https://review.opendev.org/75157616:48
*** hamalq has joined #zuul16:53
clarkbtobiash: for https://review.opendev.org/#/c/751171/1/zuul/scheduler.py as noted in the commit message we should eventually process the exception and clear it out normally. Do you know if we're leaking those long term?16:57
clarkbI'm  curious if this is a persistent memory leak or an optimization16:57
tobiashclarkb: https://review.opendev.org/751172 fixes the long term leaking. However I thought it would be safer to also clear out the exception (especially since printing the stack trace doesn't need the local variables).17:00
*** sassyn has joined #zuul17:04
*** vishalmanchanda has joined #zuul17:05
sassynHi everyone17:05
sassynAgain it is me - with my stupid questions :-)17:06
sassynthis is a quick one: if I have a repo and in the repo I have the branch master and the branch zuul-config. in each branch there are .zuul.yaml file. In the master there is a job X and in the zuul-branch there is a job Y. I'm sending patches to gerrit into the zuul-branch and expecting to see the job Y running, however I'm getting the job X.17:08
sassynWho wins in such a config?17:08
corvussassyn: it depends on the project stanza.  you can see how zuul decided to run a job by looking at the _inheritance_path variable in the inventory.yaml file in the log files for the build17:10
openstackgerritMerged zuul/zuul master: Move reports from FakeGithubConnection to github data  https://review.opendev.org/74510717:11
sassyncorvus: where can I find the inventory.yaml?17:11
corvussassyn: it should be saved with the log files for the build17:12
corvussassyn: here's an example: https://zuul.opendev.org/t/zuul/build/aed732cd208b4e4285866d817d28b390/log/zuul-info/inventory.yaml#3817:12
corvussassyn: and if you look at the bottom entry, it points to line 224 of the .zuul.yaml file on the master branch of the zuul project: https://opendev.org/zuul/zuul/src/branch/master/.zuul.yaml#L22417:14
corvussassyn: that's the project stanza that zuul used to decide to run the job17:14
sassynhttps://pasteboard.co/Jr4tY89.png17:15
sassynI have something line this17:15
corvussassyn: click "logs"17:15
sassynBuild result cdf0479a647a443f9d49685efbd80d0a17:16
corvussassyn: should look like this: https://zuul.opendev.org/t/zuul/build/aed732cd208b4e4285866d817d28b390/logs17:16
sassynhttps://pasteboard.co/Jr4uG97.png17:17
sassynI don't seems to have it17:17
sassynhttps://pasteboard.co/Jr4v7Tj.png17:18
*** holser has quit IRC17:18
corvussassyn: add this role to your base job: https://zuul-ci.org/docs/zuul-jobs/general-roles.html#role-log-inventory17:19
mhufungi, corvus before we re-tag zuul-client to fix the pypi package, I'd like to wait for https://review.opendev.org/751264 and https://review.opendev.org/751291 to land first17:19
sassynu mean add it to the  trusted project17:19
mhuunless you're fine with doing two tags17:19
corvussassyn: yes, the base job is usually defined in a trusted project.  we recommend adding that to the base job's pre-playbook like this: https://opendev.org/zuul/zuul-base-jobs/src/branch/master/playbooks/base/pre.yaml17:20
sassynok17:20
sassyn    post-run:17:20
fungimhu: makes sense, i have no objection. it's not actually used for anything yet so i'm good with whatever pace is comfortable for you there17:21
corvusmhu, fungi: 0.0.1 has already been pushed17:22
corvusmhu, fungi: https://pypi.org/project/zuul-client/17:23
fungicorvus: i assumed he meant the next tag17:23
tobiash0.0.2 probably17:23
fungiwith the recent wheel fix17:23
corvusi assumed otherwise since he said "fix the pypi package"17:24
fungi751576 (which fixes the pypi package) only merged half an hour ago17:25
corvusokay.  751259 also fixed pypi17:25
fungiyup ;)17:25
corvusfungi: i agree that your interpretation of the ambiguous statement from mhu is probably correct.17:25
corvusmhu: i don't think we're in a rush; the only time-sensitive thing is to lock in registration of the package on pypi, and that's done17:27
corvusmhu: take all the time you want before we release the next version17:27
sassyndoing it now17:31
mhucorvus, yes I meant 0.0.217:32
sassyncorvus: i have something like this17:33
sassyn vars:17:33
sassynbranch: zuul-branch17:33
mhuwe will need to release a 0.0.2 anyway before working on zuul integration: it was started in https://review.opendev.org/#/c/750196/ but builds fail because the pip package is broken17:33
fungimhu: you could probably make a temporary version of that job which uses zuul-client as a required project and installs it from current source, which would also make it possible to do cross-project deps between the changes to prove out your design17:41
sassyncorvus: I understand the output17:45
sassynbut don't understand why it is like this17:46
sassynhi fungi17:46
sassynThanks again for the help the other day17:46
sassyn:-)17:46
fungisassyn: you're welcome. this seems like a continuation of our earlier conversation, but you've made some progress i gues17:49
fungis17:49
sassyntrue. I have now in the trusted project base jobs which are abstract and I'm have in a untrusted project a job which get then from the base and them as well the specific job in the untrusted project17:51
sassynI just don't get the way it work with multi branch17:52
sassyncorvus help me - but I don't understand the output17:52
corvussassyn: perhaps you could paste all of the relevant configuration to a pastebin service for someone to look at?17:52
sassynsure17:53
*** hamalq has quit IRC17:53
*** hamalq has joined #zuul17:53
*** holser has joined #zuul17:57
sassyncorvus: https://pastebin.pl/view/b144588817:57
sassynthis is the trusted project17:57
sassynhttps://pastebin.pl/view/c8433a6117:59
sassynthis is for the untrusted project17:59
sassynI would expect that if I do a patch in the branch master job X will run, and if I do patch in branch zuul-branch job Y will run. But in both cases job X is only the one that runs.18:01
corvussassyn: your paste says you want to run the job "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY" but i don't see a job "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY" defined18:01
sassynhttps://i.pinimg.com/564x/2b/30/e9/2b30e9476db1ec0823c7142e0e5ef75a.jpg18:03
sassynThis is what I am18:03
sassynworks perfect!!!18:14
sassynthank u18:14
corvussometimes you need a second pair of eyes :)18:14
sassynu have magic eyes18:15
sassynone more question, job X and job Y run the pre and post jobs of the base. how can I make that Job Y will not run it again, just X+Y jobs18:15
sassynI mean - pre jobs + X + Y + post jobs18:16
sassynand not  pre jobs + X  + post jobs  pre jobs + Y + post jobs18:16
corvussassyn: there aren't pre jobs and post jobs, there are pre-playbooks and post playbooks.18:16
corvussassyn: you may want to look into job dependencies18:17
sassynOK18:17
corvussassyn: and you can also have multiple base jobs18:17
corvussassyn: but generally, a base job should do the work that every job needs to do18:17
sassynthis is what fungi told me - but know I understand it better18:17
sassynnow*18:18
corvussassyn: with job dependencies, you can have Y only run after X completes, or run A, then have X and Y both run after A completes.  or similar constructions.18:18
corvussassyn: you can also run A, have it pause, then run X and Y, and have A resume when both X and Y complete18:19
sassynsuper!18:19
corvuslots of options :)18:19
sassynit is amazing amazing system18:19
sassynjenkis is a kid compare to it18:19
sassynamazing!18:19
sassynonly the entry level to get it takes time18:19
corvuswe're working on making it easier :)18:20
sassynmay I ask who you are working for?18:20
sassynredhat?18:20
sassynopenstack - I do i get such a cool job :-)18:20
sassynwho*18:21
sassynhow*18:21
corvussassyn: a lot of folks contribute to zuul part-time while working on other projects (eg, running a zuul internally)18:22
fungifor example, i contribute to zuul and help run the zuul deployment for the opendev collaboratory; my time doing that is funded by the openstack foundation, but i wouldn't say i necessarily work *for* them, i'm working for the projects to which i'm contributing18:25
fungi(though i am very thankful to the osf for providing the means for me to be able to do those things)18:26
fungisassyn: while not the only place to find such jobs, the osf maintains a jobs board here for companies to list jobs relevant to represented projects: https://www.openstack.org/community/jobs/18:29
fungimany of them would probably be willing to consider also having that person help by contributing zuul some of the time18:29
fungiit worth discussing with them, at the very least18:30
*** mgoddard has quit IRC18:34
*** mgoddard has joined #zuul18:41
openstackgerritMerged zuul/zuul master: Fix memleak on zk session loss  https://review.opendev.org/75117018:44
sassyncorvus ping18:57
sassynI still fighting the job X and Y.18:58
openstackgerritMerged zuul/zuul master: Clear traceback before attaching exception to event  https://review.opendev.org/75117118:59
openstackgerritMerged zuul/zuul master: Remove source_event from Change objects  https://review.opendev.org/75117218:59
openstackgerritMerged zuul/zuul master: Offload repo reset during merge  https://review.opendev.org/75167318:59
sassynrepo name X, two branch. Branch Master and Branch zuul-branch. both have .zuul.yaml. master configure to run job X and zuul-branch is configure to run job Y. when push patch to master- job X is running. when pushing path to zuul-branch also job X is running. why?19:00
fungisassyn: the master branch configuration applies to all branches. you may need to set a branch filter on the master branch job to say it only applies to the master branch19:03
sassynby just setting the branch: master in the .zuul.yaml on the master branch?19:04
corvusfungi: that's only true for jobs defined in branchless repos19:06
corvusthat's why i was hoping to get a full configuration from sassyn to see where jobs X and Y are defined19:06
sassynwell I'm confused19:07
sassynthe configuration is the same as i paste bin19:08
sassynonly after configure the Y job19:08
sassyni did it again but it doesn't work19:08
corvussassyn: if we talk through all of the potential ways your system could be configured, it will take a while.  i would recommend one of the following options: 1) read the entire documentation about configuration; 2) add the log-inventory role so you can see what zuul is doing; 3) paste your configuration so i can look at it and i may be able to spot what's confusing you19:09
sassyncorvus thank u. I read and I'm doing my best here19:10
sassyn https://pastebin.pl/view/b1445888 is the trusted19:10
fungicorvus: oh, right, i keep forgetting we changed the default branch matcher for branched repos early in v319:10
corvusfungi: yeah, that was a really early design19:11
sassynhttps://pastebin.pl/view/6871fa4e19:12
sassynthis is the untrusted project19:12
fungiso yes, unless the master branch job in that repo also had an explicit branch matcher for zuul-branch, it shouldn't have been triggered on a zuul-branch event19:12
corvussassyn: from that, i would expect both testjob and testjob2 to run when you upload a change to zuul-branch19:14
corvussassyn: what do you want to happen?19:14
sassynboth testjob and testjob2 to run when you upload a change to zuul-branch19:14
corvussassyn: what does happen?19:14
sassynonly testjob is running19:15
sassynand I also now deleted the .zuul.yaml in the master branch19:15
sassynpush patch to zuul-branch19:16
sassynand       - '<Job base branches: None source: zuul-config/zuul.d/jobs.yaml@master#1>'19:16
sassynstill no testjobs219:17
corvussassyn: it's possible zuul doesn't know about zuul-branch.  are you using gerrit, github or something else?19:18
sassyngerrit19:18
sassyni did deleted the branch19:18
sassynand recreated it19:18
sassynis this is a problem?19:18
corvussassyn: you may want to restart the scheduler and verify that it loads the configuration from zuul-branch19:18
corvussassyn: theoretically that should not be a problem, but something may have gone wrong19:18
sassynthe zuul-scheduler.service?19:19
corvussassyn: check the debug log when you restart the scheduler to confirm where it loads its config from19:19
corvusyep19:19
sassyn2020-09-15 01:19:17,673 INFO zuul.TenantParser: Loading configuration from ZuulTest/.zuul.yaml@zuul-branch19:19
fungii suppose zuul could have somehow missed the ref-updated event from when the configuration was pushed into the zuul-branch branch earlier and not loaded it at that time?19:20
sassynrestarted fix the issue19:21
sassynfungi, I don't know19:21
sassynI can look in the logs19:21
fungithough that doesn't make sense, because subsequent changes for that branch would have required it so checkout the current state of the branch and evaluate configuration in it, right?19:22
fungier, required it to checkout19:22
corvusfungi: only changes that touched .zuul.yaml would do that19:22
fungiahh, okay19:23
*** hamalq has quit IRC19:32
*** hamalq has joined #zuul19:33
*** vishalmanchanda has quit IRC19:44
sassyncorvus fungi everything work now fine!19:44
corvussassyn: \o/19:45
fungioh, excellent19:46
fungii'm still mildly concerned that zuul didn't notice you added configuration to or updated configuration in that branch before it was restarted19:46
*** nils has quit IRC19:48
sassynfungi: basically this is what I wanted, to add my already exiting project to zuul as untrusted project , create a new branch, create in this branch the .zuul.yaml file and have zuul to run the job only if commits are come to this branch20:03
sassynputting the branch on the job is nice, but will be good if I put the .zuul.yaml in the MASTER  branch so it can effect all other branch20:05
sassyndo I understand correctly ?20:05
fungisassyn: yes, if you put the config in the branch of a branched project, it should be used for events related to that branch20:06
fungithis is, in part, designed to support a branching process where if you create a new branch from a branch which already had zuul configuration in it, then job behaviors should diverge properly as the branches themselves diverge and become independent20:07
sassynOK got it. but if however the zuul.yaml is in the master20:08
sassynthan all branch are applied, even if they don't .zuul.yaml in them20:08
sassyncorrect?20:08
sassynOr I mistaken here?20:10
*** nils has joined #zuul20:14
fungisassyn: not the case, no. i was the one who was mistaken about that20:16
sassynok so now it make sense20:16
sassynthank u !20:17
fungiwe had done it that way *very* early in the v3 design, and quickly realized that created problems for projects branching their configuration. the sensible thing to so was to use the configuration from the branch itself20:17
fungier, sensible thing to do20:17
sassynyep!20:17
sassynbut I think I discover a bug20:18
sassynrepo X, branch A and B. branch A have zuul.yaml, branch B have zuul.yaml. A run job A, B run job B. i delete from brnach B the zuul.yaml and still it run the job20:19
sassynif I will restart i guess this will solved20:19
sassynplease ignore it20:24
sassynmy mistake20:24
openstackgerritMatthieu Huin proposed zuul/zuul master: [DNM] Add zuul-client to requirements  https://review.opendev.org/75019620:26
sassynwhat will be the logic to use project.<pipeline>.jobs.branch as it says here: https://zuul-ci.org/docs/zuul/reference/project_def.html#attr-project.%3Cpipeline%3E.jobs?20:26
fungisassyn: that's intended for when you define jobs in one repository which only has a single branch and then use them in another repository which has multiple branches20:27
fungithat's what i was trying to describe over the weekend with the difference between explicit and implied branch matchers20:28
openstackgerritMatthieu Huin proposed zuul/zuul master: [DNM] Add zuul-client to requirements  https://review.opendev.org/75019620:30
sassynso consider the followingL if I have repo X, with branch Y, and on branch Y is the .zuul.yaml, and then I create a new branch from it says branch Z, when I will commit to branch Y an Z in repo X zuul will run on both. if however I would put  project.<pipeline>.jobs.branch: Y then even if I will create a new bracnh from Y, zuul will stil run only on20:31
sassynY :20:31
sassynonly. and sorry for typo mistakes.20:31
clarkbyou can manipulate it to do that sort of thing but we generally recommend against it20:33
fungii'm not sure i understand. a commit will either be for branch y or branch z, not for both. zuul will run the jobs described in the configuration on the branch which the change targets (or in the change itself if the change modifies that configuration)20:33
clarkbfungi: I read it as config says branch: y  in both y and z. Then you push change to z and it doesn't run but would run if you push a change to y20:33
fungioh, got it. yes i would not try to use explicit branch matchers with configuration in branched repositories20:35
sassynI just want to make sure that even if u clone from the branch that has the .zuul.yaml (say clone from branch Y that has the zuu.yaml into a new branch Z), zuul will still only run only if patches are going into branch Y. patches to branch Z will be ignored.20:37
fungieither rely on the branches of the repository to separate your configuration on a per-branch basis, or define things in a single branch-repository with explicit branches set on configuration. you can combine those two approaches by using both kinds of repositories (we do a lot of that in opendev) but avoid specifying branches in configuration if that configuration is in a repository with multiple branches20:37
fungiyou don't really clone from a branch. you clone a repository and checkout a branch, but it's better to think in terms of the repository itself when it comes to cloning20:39
openstackgerritMatthieu Huin proposed zuul/zuul master: [DNM] Add zuul-client to requirements  https://review.opendev.org/75019620:39
sassyn" define things in a single branch-repository with explicit branches set on configuration" - can u provide an example ?20:42
fungisassyn: sure, this repository contains job definitions for things run on changes for other repositories and you'll see lots of "branches" patterns in it: https://opendev.org/openstack/openstack-zuul-jobs/src/branch/master/zuul.d/jobs.yaml20:45
fungithe openstack/openstack-zuul-jobs repository only has a master branch, but we use it to contain job definitions for things we want run on changes for other repositories which have branches20:46
fungiso we specify which jobs and which versions of jobs we want to run for changes to what branches of those other repositories20:46
fungithe first job you see there, build-openstack-sphinx-docs, is set to only run if the triggering change's branch matches the pattern ^stable/(ocata|pike|queens|rocky).*$20:47
sassynfungi but this is on the job level20:49
sassynI talking about the project level20:50
sassynhttps://zuul-ci.org/docs/zuul/reference/project_def.html#attr-project.%3Cpipeline%3E.jobs20:50
sassynputting branch on the job will limit the job to run only on the branch configure (per job)20:52
fungisassyn: oh, yep, in a variant. we do that too: https://opendev.org/openstack/project-config/src/branch/master/zuul.d/projects.yaml#L6743-L678420:53
fungiwe still keep that configuration in a single-branch repository though20:54
sassynwhy? if this is a single branch there is not logic. cause if I have the same zuul.yaml file in branch A and branch B, and I have set the porject.gate.jobs.A.branch:A then A will run only if committed to branch A, and B only if committed to   branch B. or what u saying is that I call this job from a multi branch and then I set it on a sinle branch.21:01
sassynIf so now at LAST i understand21:01
clarkbsassyn: if you have a config on each branch that config automatically applies to that branch. Basically its implied to work by default in the way you describe it21:03
clarkbsassyn: but if you want to control that independently from another location perhaps to ensure a job is always run on all repos or something then you can use that branch config option to control it further from that independent location21:04
fungialso useful when you want to have a central location for jobs used by multiple other repositories21:04
sassynunderstand!21:05
fungiyou can do that in multi-branch repositories if all your branch names in the various repositories match, but if they don't then having a single-branch repository to put the shared configuration in is easier21:05
fungiand in that case, it's useful to be able to specify to which branches some bit of configuration should apply21:06
*** rfolco|ruck has quit IRC21:12
*** sassyn has quit IRC21:14
*** sassyn has joined #zuul21:17
sassynhow can I have in repo X branch A a job from  repo Y on branch master21:19
sassynthis I still missing21:19
clarkbthe jobs exist within a global namespace for each zuul tenant. That means a job defined in one repo is avaialble to any other repo21:22
clarkbyou simply list it ina pipeline config21:22
sassynso if I have job name X i can't have job name X again21:25
clarkbcorrect21:26
sassynthank u21:39
sassynnotice again that I to restart the service21:40
sassynafter changing .zuul.yaml the server still using the old config21:40
clarkbare you changing it through gerrit?21:41
clarkbI wonder if we're missing the events if things are mreged directly rather than through gerrit changes21:42
sassynno i do it via cli21:43
sassyngit push origin HEAD:refs/for/master21:43
clarkbthen you merge the change via gerrit? if so that should create events that zuul notices and updates its configs from21:44
sassynyep21:46
sassynvia gerrit21:46
sassyni think i found the core issue21:46
sassyni used a job name in repo L branch master  that come from a specific branch (in repo X branch Y job Z) - zuul didn't knew about it. if I add a job from repo X branch master job M - zuul knows about it in the repo L brnach master21:48
sassynthere is some bug - I'm sure somewhere. can't tell where21:48
sassynbut again this is amazing project!21:49
sassynWOW!21:49
sassynso much options21:49
openstackgerritMerged zuul/zuul master: Remove unneeded api requests when commenting in github  https://review.opendev.org/74419421:56
openstackgerritMerged zuul/zuul master: Exercise github auth handling in tests  https://review.opendev.org/74971121:56
sassynis it smart to put the ansible and jobs in the trusted project? or to create a new repo with single branch?22:00
sassynI'm asking myself where I will put the project templates for example22:00
clarkbsassyn: keeping as much stuff as possible in untrusted areas is useful because it means you can test them in pre merge contexts22:00
clarkbfor trusted repos it really should be as minimal as possible ideally22:01
sassynOK22:01
sassynunderstood22:01
clarkbbecause testing chnages to trusted areas is more difficult22:01
sassynthank u22:01
sassynyep22:01
*** tosky has quit IRC22:33
sassynOne more if I may: say I have Repo X, and when doing patches a gate pipeline  start where  we run the job X. We wait until job X finish and on success and we  run Job Y, Z (in parallel? is it possible). Now say I have Repo Y, and when doing gate I want to run job Y. Job Y is configure as required Job X . This is OK, but wouldn't I will get into a22:47
sassynloop on Repo X? since Repo X run X and then Run Y which need to run X again?22:47
fungiyes, y and z can depend on the success of x, and will run concurrently with each other22:49
fungii'm not entirely sure i understand the second scenario you're describing22:50
sassynConsider Job Y as a test of the outcome of Job X. So  Job X can be run as a standalone. but Job Y to run need first Job X in order to run by itself. What I want is when commit come to repo X job X is run, and then after r job X Y (in parallel) to test the outcome of job X. But when commit come to repo Y for example., I want to run job X and then22:57
sassynJob Y. if job Y depend on job X, the on the first case (commit to repo X ) Job A will run , then Job Y which will trigger again Job A and then finaly jfinish with job Y.22:57
clarkbsassyn: you can do that with job dependencies23:03
clarkbI'm looking for a docs link23:03
clarkbsassyn: https://zuul-ci.org/docs/zuul/reference/job_def.html#attr-job.dependencies is how you order jobs23:06
clarkbhttps://zuul-ci.org/docs/zuul/reference/job_def.html#attr-job.requires and https://zuul-ci.org/docs/zuul/reference/job_def.html#attr-job.provides allow you to express dependencies around resources23:06
clarkbdepending on the situation you may use one or the other or both configuration tools23:06
fungiyeah, i think i'm getting confused by there being repos x and y but also jobs x and y... and i'm not sure if there's supposed to be a relationship between the job names and the repo names there23:18
fungiis "job x y" in your scenario the job named y for the repo named x? or are you saying after running job x you want to run job x again at the same time as job y?23:19
fungiand i don't see where "job a" came from23:20
sassynfungi, I will try it myself first and will get back to u tommorow23:29
sassynthanks again for all the help23:29
sassynu 2 clarkb23:29
sassynhave a good evening.23:29
fungigood luck!23:30
*** Goneri has quit IRC23:53
*** armstrongs has joined #zuul23:55
*** holser has quit IRC23:55

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