Wednesday, 2019-07-10

*** jamesmcarthur has joined #zuul00:03
*** jamesmcarthur has quit IRC00:07
sgwfungi: or anyone!  I want to add a non-standard command into zuul, specifically the "osc" command from OpenSUSE for interacting with OBS, there are repos/packages available for different OSes, so does this need to be done in a "pre" type of ansible ?00:09
clarkbsgw if the paclage is in the main distro repos you can add it to your bindep list00:11
clarkbassuming this is for jobs already running the bindep pre step00:11
sgwclarkb: unforunately not the correct version is available in the main distro repo's, I need to use the OBS repos to install osc from00:11
sgwis NOT available in main distro repo00:12
clarkbthen for that I would add it as a pre step explicitly for thag00:12
sgwOk, any examples of that? so I can quickly crib from it.00:13
clarkbIm not sureof any that add a repo and install a package from it00:14
sgwOk, just seeing if there was a short-cut example, I will figure it out.00:14
*** jamesmcarthur has joined #zuul00:21
fungiyeah, i'm not overly familiar with opensuse and yast (or is it zypper?) package management and repository additions00:21
fungibut yeah if you know the shell commands to run you can always just create a role with the corresponding shell tasks and add that to one of the job's pre playbooks00:22
sgwfungi: yup that's what I am doing.  My ansible is currently horrid, but I am getting there.00:23
fungiwe likely have some debian/ubuntu apt examples, like the nodesource package repository roles00:23
fungiensure-npm or whatever it's called00:24
fungihttps://opendev.org/zuul/zuul-jobs/src/branch/master/roles/install-nodejs/tasks/main.yaml00:25
*** rlandy has quit IRC00:25
fungithat one00:25
funginot sure whether or which of those have opensuse corollaries00:26
sgwThanks!00:29
*** altlogbot_1 has joined #zuul00:30
*** zbr has quit IRC00:34
*** altlogbot_1 has quit IRC00:37
*** jamesmcarthur has quit IRC00:38
*** zbr has joined #zuul00:43
*** jamesmcarthur has joined #zuul00:47
*** jamesmcarthur has quit IRC00:52
*** jamesmcarthur has joined #zuul00:55
*** altlogbot_3 has joined #zuul01:08
*** jamesmcarthur has quit IRC01:09
*** jamesmcarthur has joined #zuul01:14
*** altlogbot_3 has quit IRC01:15
*** jamesmcarthur has quit IRC01:19
*** jamesmcarthur_ has joined #zuul01:21
*** jamesmcarthur_ has quit IRC01:23
*** jamesmcarthur has joined #zuul01:27
*** jamesmcarthur has quit IRC01:32
*** jamesmcarthur has joined #zuul01:36
*** jamesmcarthur has quit IRC01:41
*** jamesmcarthur has joined #zuul01:43
*** jamesmcarthur has quit IRC01:45
*** jamesmcarthur has joined #zuul01:50
*** bhavikdbavishi has joined #zuul01:54
*** jamesmcarthur has quit IRC01:54
*** bhavikdbavishi1 has joined #zuul01:57
*** bhavikdbavishi has quit IRC01:58
*** bhavikdbavishi1 is now known as bhavikdbavishi01:58
*** jamesmcarthur has joined #zuul02:07
*** jamesmcarthur has quit IRC02:09
*** jamesmcarthur has joined #zuul02:09
*** jamesmcarthur has quit IRC02:14
*** altlogbot_3 has joined #zuul02:20
*** irclogbot_3 has joined #zuul02:20
*** jamesmcarthur_ has joined #zuul02:22
*** bhavikdbavishi has quit IRC02:23
*** altlogbot_3 has quit IRC02:25
*** irclogbot_3 has quit IRC02:26
*** jamesmcarthur_ has quit IRC02:26
*** jamesmcarthur has joined #zuul02:56
*** jamesmcarthur has quit IRC03:19
*** jamesmcarthur has joined #zuul03:20
*** bhavikdbavishi has joined #zuul03:26
*** jeliu_ has joined #zuul03:48
*** njohnston has quit IRC03:53
*** irclogbot_2 has joined #zuul04:08
*** irclogbot_2 has quit IRC04:12
*** altlogbot_3 has joined #zuul04:14
*** altlogbot_3 has quit IRC04:17
*** jamesmcarthur has quit IRC04:32
*** jamesmcarthur has joined #zuul04:46
*** swest has joined #zuul04:59
*** altlogbot_2 has joined #zuul05:04
*** irclogbot_2 has joined #zuul05:08
*** raukadah is now known as chandankumar05:14
*** sanjayu_ has joined #zuul05:19
*** altlogbot_2 has quit IRC05:21
*** irclogbot_2 has quit IRC05:22
*** jeliu_ has quit IRC05:36
*** pcaruana has joined #zuul05:37
*** sanjayu_ has quit IRC05:41
*** saneax has joined #zuul05:47
*** jamesmcarthur has quit IRC05:50
*** pcaruana has quit IRC06:20
*** tosky has joined #zuul07:02
*** altlogbot_0 has joined #zuul07:04
mhucorvus: I was on PTO yesterday, I can have a look today07:05
mhuexciting times ahead!07:05
*** altlogbot_0 has quit IRC07:08
*** themroc has joined #zuul07:22
*** irclogbot_1 has joined #zuul07:41
*** irclogbot_1 has quit IRC07:44
*** pcaruana has joined #zuul07:54
*** hashar has joined #zuul08:09
*** irclogbot_0 has joined #zuul08:59
*** hwangbo has quit IRC09:00
*** irclogbot_0 has quit IRC09:02
*** altlogbot_0 has joined #zuul09:27
*** altlogbot_0 has quit IRC09:28
*** altlogbot_2 has joined #zuul09:31
*** altlogbot_2 has quit IRC09:34
*** sshnaidm|afk is now known as sshnaidm|ruck09:42
*** bhavikdbavishi has quit IRC09:45
*** altlogbot_3 has joined #zuul09:46
*** altlogbot_3 has quit IRC09:50
*** hashar has quit IRC10:01
*** electrofelix has joined #zuul10:05
openstackgerritMatthieu Huin proposed zuul/zuul master: web: add tenant and project scoped, JWT-protected actions  https://review.opendev.org/57690710:11
openstackgerritMatthieu Huin proposed zuul/zuul master: Allow operator to generate auth tokens through the CLI  https://review.opendev.org/63619710:11
openstackgerritMatthieu Huin proposed zuul/zuul master: Zuul CLI: allow access via REST  https://review.opendev.org/63631510:11
*** irclogbot_3 has joined #zuul10:25
*** irclogbot_3 has quit IRC10:26
*** hashar has joined #zuul10:33
*** hashar has quit IRC10:34
*** kklimonda has joined #zuul11:00
*** bhavikdbavishi has joined #zuul11:17
mordredmhu: you picked a fun day to be on PTO :)11:47
mhuyou don't say:11:48
mhu:)11:48
* mordred hands mhu his blue suit and tie11:48
openstackgerritSorin Sbarnea proposed zuul/zuul-jobs master: Avoid confusing rsync errors when source folders are missing  https://review.opendev.org/67004411:50
*** rfolco has joined #zuul11:57
Shrewsmordred: did you hand over the suite/tie using Notes? that's the only acceptable way to do that now12:20
*** rlandy has joined #zuul12:24
*** bkorren has joined #zuul12:28
*** hashar has joined #zuul12:30
bkorrenHi, I wonder if someone can help me figure out why this pipeline -> (https://ovirt-staging.softwarefactory-project.io/paste/show/4/) is not triggering when I put 'ci emulate-gate' in a Gerrit comment12:30
openstackgerritMatthieu Huin proposed zuul/zuul master: Zuul CLI: allow access via REST  https://review.opendev.org/63631512:42
*** tosky__ has joined #zuul12:44
*** tosky is now known as Guest8732412:44
*** tosky__ is now known as tosky12:44
*** Guest87324 has quit IRC12:46
*** altlogbot_1 has joined #zuul13:12
*** altlogbot_1 has quit IRC13:16
*** irclogbot_2 has joined #zuul13:19
*** tosky__ has joined #zuul13:20
*** tosky has quit IRC13:20
*** tosky__ is now known as tosky13:20
*** irclogbot_2 has quit IRC13:22
*** tosky___ has joined #zuul13:44
*** yolanda has quit IRC13:46
bkorrenHi there - I'm seeing some behavior of Zuul  that I think may be a bug - as far as I can tell - Zuul's YAML syntax lets you define dependent pipelines that do not actually merge patches; This line in the code seems to indicate that the pipeline would not accept patches unless they are ready to be merged wither it would actually merge them or not -> https://opendev.org/zuul/zuul/src/branch/master/zuul/manager/dependent.py#L10213:46
*** tosky has quit IRC13:47
mordredbkorren: well - the behavior of the dependent pipeline only makes sense if it's part of the merging action, because it's going to put things into a virtual shared queue and test various patches as-if the one ahead of them in the queue had landed. In a non-merging scenario this behavior would cause the patches being tested to be tested in the context of arbitrary other patches that are also in flight but without13:58
mordredthe captive assurance that the constructed state is the state that would result from the completion of the previous in-flight gating actions13:58
mordredbkorren: so in that pipeline definition you have, I'd change manager to independent, even though you're trying to simulate gate activity, because if you're triggering these via comments there is no valid dependency relationship that zuul can create, and thus it'll just cause, at best, confusing and potentially invalid results13:59
bkorrenmordred, I admit that not merging is not always useful in this context - but since actually making multi-project testing jobs can be difficult, as well is crafting patches to test their edge cases, I'd be nich if I could emulate the pipeline's actions without having the patches be merged14:00
mordredbkorren: the multi-project part will still work with the independent pipeline manager, as will explicit dependencies between patches via depends-on footers14:01
mordredbkorren: the dependent/independent in this case has to do with relationships between triggering events, not between changes14:01
pabelangerbkorren: is it the pipeline you want to test, or the jobs that run in the pipeline? because as mordred says, depends-on in commit message should be what you are looking for14:01
pabelangerthen everything can be tested without merging14:02
mordredand dependent causes zuul to create patch relationships automatically based on the sequence it received the triggering event where otherwise there might not be an existing relationship14:02
pabelanger(unless you are dealing with trusted jobs)14:02
bkorrenmordred, if I understand correctly, with independent - it will always check one patch against the 'master' of other projects, I would like to test multiple patches at once.14:02
mordredyah. what pabelanger said14:02
mordredbkorren: right - what you want to have happen will happen with the independent pipeline manager too14:02
mordredthe independent pipeline manager will still do all of the patch-dependency relationship things you're wanting14:03
pabelangeryup14:03
pabelangerdepends-on is super powerful, for pre-merge testing14:04
bkorrenmordred - will it test patches together even if I don't explicitly set 'depends-on' ?14:04
mordreddependent is basically _only_ for the speculative execution bits needed for safe gating ... the word "dependent" in this case is, I think, causing some confusion14:04
*** jamesmcarthur has joined #zuul14:04
*** jamesmcarthur has quit IRC14:05
*** jamesmcarthur has joined #zuul14:05
bkorrenpabelanger, mordred - do note that I am trying to test the pipeline and gate job in this case - the patches are crafted to cause various issues...14:05
pabelangerare the gate jobs different then check jobs?14:05
mordredbkorren: gotcha, no - you would have to set depends-on footers to tell zuul about that relationship14:05
mordredbkorren: let me make sure I understand what you're trying to do real quick ...14:06
bkorrenmordred, ok14:06
mordredbkorren: you would like to manually trigger a set of patches using comment triggers and you would like for those to be tested in the context of each other based on the sequencing of comments added but for those patches to not be merged at the end of each test .. is that correct?14:07
bkorrenmordred, yeah14:07
bkorrenmordred, exactly14:07
mordrednod. so - in our world we tend to accomplish that use case by constructing those patches with depends-on footers and letting our check pipeline take care of it for us14:07
bkorrenmordred, I see14:08
mordredI'm honestly not sure if the dependent pipeline manager can do the thing you're wanting - and I think that's a question for corvus when he awakens14:08
mordred(it's not a use case I've considered before, so I need to defer to a smarter person :) )14:08
bkorrenmordred, well, looking at the source is seems to me one could make it only do the 'canMerge' check if one configured the pipeline to actually merge, but maybe it affects other things...14:09
mordredbut we frequently do that with patches with depends-on added to them - sometimes just with patches we mark as "do not merge" - just so we can verify behavior like your'e talking about ... but I do think clarifying the intent here is valuable either way14:10
bkorrenmordred, ok, I get what you're saying14:11
bkorrenmordred, one more thing - do I have to specify all the projects that are to be tested together in the job's 'required-projects' section, for then to ever get tested together?14:14
bkorrenmordred, I thought that merely having patches together in a dependent queue at the same time would cause them to be tested together - but the results I get from merging some of my patches indicate that may not be the case...14:15
*** tosky___ is now known as tosky14:15
pabelangeryou likely need to setup a shared queue: https://zuul-ci.org/docs/zuul/user/config.html#attr-project.%3Cpipeline%3E.queue14:16
bkorrenpabelanger, AFAIK I did14:17
pabelangerfor example, openstack has an integrated change queue where patches from nova, glace, keystone, etc need to be grouped together14:17
pabelangerbkorren: is there a place to look at the configuration?14:17
bkorrenpabelanger, sure -> https://gerrit-staging.phx.ovirt.org/gitweb?p=ovirt-staging-zuul-config.git;a=blob;f=zuul.d/projects.yaml;h=33647b3d7147209ded72237635bc5554f68c30fe;hb=refs/heads/master#l1014:19
bkorrenpabelanger, basically I made all projects use both the 'ovirt-staging-gated-project' and the 'ost-gated-project' templates14:20
bkorrenpabelanger, and 'ovirt-staging-gated-project' is setting the queue to the same value for all pipelines...14:21
*** hashar has quit IRC14:21
pabelangerbkorren: just looking through your configs14:25
bkorrenpabelanger, I have to leave now, I'll send my question to the mailing-list later with hopes of getting an aswer there; thanks for all your help so far!14:25
pabelangernp14:26
bkorrenpabelanger, uless there is something I did wrong that caught your eye quickly...14:26
bkorrenportdirect, ok, thanks!14:26
bkorrenpabelanger, ok, thanks!14:26
portdirectbkorren: I'll take credit for pabelanger's awesomeness anyday :D14:27
*** bkorren has quit IRC14:30
mordredportdirect: me too!14:33
*** mattw4 has joined #zuul15:07
*** altlogbot_0 has joined #zuul15:11
*** altlogbot_0 has quit IRC15:12
*** yolanda has joined #zuul15:23
*** themroc has quit IRC15:26
*** hashar has joined #zuul15:26
*** mattw4 has quit IRC15:34
*** mattw4 has joined #zuul15:35
*** mattw4 has quit IRC15:39
*** hashar has quit IRC16:06
openstackgerritJames E. Blair proposed zuul/zuul-jobs master: Add test_setup_skip role variable  https://review.opendev.org/67011916:24
*** hwangbo has joined #zuul16:24
pabelangermordred: left a comment on 659180, but looks good in general16:34
mordredpabelanger: it's a good comment - responded - but tl;dr, I don't think we need to double-specify like that - we can let the majority of them passthrough directly - and should only need to double-specify the secret containing values16:41
*** mattw4 has joined #zuul16:41
pabelangerokay great, that's what I was hoping for16:46
pabelanger+216:47
pabelanger:D16:47
openstackgerritMerged zuul/zuul-jobs master: Add test_setup_skip role variable  https://review.opendev.org/67011916:47
openstackgerritAndreas Jaeger proposed zuul/zuul-jobs master: Skip test-setup.sh in pep8 jobs  https://review.opendev.org/67013317:03
pabelangerAJaeger: left -1 and comment on ^17:05
AJaegerpabelanger: I don't get it - why -1 that one and +2 the openstack-zuul-jobs one?17:05
AJaeger(oh, you didn't +2 that one)17:06
pabelangerAJaeger: +2 skip was false by default, so no change17:06
pabelangeralso, haven't seen openstack one17:06
AJaegerpabelanger: skip by false is for *all* tox jobs. The true here is for pep8, that was the result of all the discussion...17:06
pabelangerAJaeger: where was discussion, I've missed that17:07
pabelangerhowever,17:07
AJaegerpabelanger: on #openstack-infra17:07
pabelangerif we change tox-pep8, that could break ansible.z.c17:07
pabelangerwould need to look17:07
AJaegerpabelanger: let's discuss on openstack-infra, please17:07
pabelangersure17:08
*** hwangbo has quit IRC17:31
*** hwangbo has joined #zuul17:31
fungifwiw, discussion of changes to the zuul-jobs repo seems appropriate in here. i'm happy to provide a recap if anyone wants17:33
pabelangerunrelated to zuul-jobs change, upgrading to ansible 2.8.2 now for zuul-executors. So far, no issues reported against 2.8 for zuul jobs17:35
AJaegerfungi: you're right - sorry17:37
*** bkorren has joined #zuul17:37
bkorrenpabelanger, are you here?17:39
pabelangero/17:40
pabelangerbkorren: I couldn't find an exmaple of the issue you mentioned, do you have a few reviews that show the merge issue?17:42
bkorrenpabelanger, I have a couple - but I can try and make more17:42
pabelangerI couldn't find the zuul console log, since you updated the log url to point to jenkins17:43
pabelangerthat includes zuul-info, which has the inventory file, which could contain more info17:43
bkorrenpabelanger: here it is for the 2nd job that should've included both patches: https://ovirt-staging.softwarefactory-project.io/logs/64/264/8/gate-patch/ost-gate/a41bb77/zuul-info/inventory.yaml17:44
bkorrenpabelanger, patches are: https://gerrit-staging.phx.ovirt.org/#/c/264/ ; https://gerrit-staging.phx.ovirt.org/#/c/273/ (by order of setting cr+2)17:45
pabelangerbkorren: how did you resolve the zuul-info url?17:46
pabelangerI can't see where that is logged17:46
pabelangeronly jenkins info17:46
bkorrenpabelanger, its always $server/logs/patch_no/queue/ID/job17:47
bkorrenpabelanger, where patch number is like n gerrit URLS - last 2 digits and them full number17:47
bkorrenpabelanger, I probably should make jenkins link back to that at some point, but no time for cosmetics now...17:48
pabelangerbkorren: Hmm, I actually would have expected 264 to fail17:50
pabelangerhttps://ovirt-staging.softwarefactory-project.io/logs/64/264/8/gate-patch/ost-gate/a41bb77/job-output.txt.gz#_2019-07-10_13_41_42_44993617:50
pabelangerthat was pre-run17:50
pabelangerso, jobs was retried?17:50
pabelangeralso, I admit I don't fully understand the workflow of zuul triggering jobs in jenkins17:51
bkorrenpabelanger, looking - that is kinda strange17:51
bkorrenpabelanger, its not very complex - I just upload the source zuul prepared to somewhere jenkins can access it, trigger jenkins, and wait for it to finish17:52
pabelangerbkorren: sure, what bits does jenkins do? for example, that could also be done by zuul directly, but I assuming there is some sort of migration that needs to be done still?17:53
bkorrenpabelanger, yeah, I have a whole bunch of logic in jenkins; migrating that would take a long long time; not to mention a user community that is used to reading the logs the way jenkins shows them....17:54
bkorrenpabelanger, right now that jenins job does nothing because I'm still debugging data fow and triggering from Zuul17:55
pabelangerokay, first step is to see why there was a module failure in zuul17:56
pabelangerbecause I suspect we are looking at old job17:56
pabelangeras for jenkins integration for zuul, it is a little redundant, given zuul and do all those bits, but it should still work.17:56
pabelangerbkorren: I am assuming, in the zuul job, you have logic to wait for jenkins job to finish? And zuul-jobs just does loop waiting for the results?17:57
bkorrenpabelanger, even simpler, it runs a blocking jenkins CLI command that returns when the job finishes with a proper status code17:58
mordredthat's nice and easy:)17:59
bkorrenmordred, ?17:59
mordred(the blocking cli command)17:59
pabelangerhttps://ovirt-staging.softwarefactory-project.io/logs/64/264/8/gate-patch/ost-gate/ad1857b/job-output.txt.gz18:00
pabelangerbkorren: okay, that looks like right log18:00
bkorrenpabelanger, yeah , but given the 1st failure, we may have "missed" the timing and the 1st patch finished getting merged already18:01
pabelangerbkorren: right, that is my thoughts too18:01
bkorrenpabelanger, although I'm only seeing one patch in the inventory for the 1st run as well18:01
pabelangerbkorren: if patch a finished, and patch B retries, it likey has the right code sha1 from tip of master18:01
bkorrenpabelanger, yeah, but note my comment about the inventory file for the 1st run - also I remember seen two parallel run in jenkins - so it means the 2nd one was triggered before the 1st one finished18:04
pabelangerbkorren: I see you are not using prepare-workspace(-git), can you share the code where you push git repos to node?18:04
bkorrenpabelanger, also I'm a little puzzled about the 1st failure - its as if the 'pre.yaml' playbook (its the 'stock' one) did not upload the source to the node18:05
pabelangerbkorren: the 2nd one running before the 1st should be okay, zuul will have the correct repo state setup18:05
pabelangerand not merge, if in the same change queue18:05
pabelangerbkorren: maybe network issue in pre-run18:05
bkorrenpabelanger, pre.yaml is running the 'prepare-workspace' rol - you can see playbook sources from the ara-report18:07
*** irclogbot_1 has joined #zuul18:07
pabelangerOh, I see that now18:07
pabelangerHmm, we don't log the sha1 info there that is right18:07
pabelangerI think we do for prepare-workspace-git18:07
*** irclogbot_1 has quit IRC18:08
bkorrenpabelanger, we got that in the inventory file though, right18:08
pabelangerbkorren: so, when the 2 reviews are in the gate-patch pipeline, do you see them in the same change queue? eg: https://zuul.opendev.org/t/openstack/status you can see 'Integrated' queue18:09
pabelangeror tripleo queue18:09
Shrewscorvus: swest: i left a cautionary tale/comment on https://review.opendev.org/66737118:09
bkorrenpabelanger, I think I did - but I may have missed that18:10
bkorrenpabelanger, you know what, let me make a couple of fresh new patch and retry all of this from scratch18:10
pabelangerokay cool18:10
pabelangerI'll watch the UI18:10
bkorrenpabelanger, don`t hold your breath... it'll take me a little while ;)18:12
pabelangerokay, send a ping when you are ready18:12
pabelangerbkorren: other way, is to look at zuul-scheduler logs, but you may not have access to them18:13
bkorrenpabelanger, yeah, I do not; the downside of having someone else maintain Zuul for me...18:14
pabelangerbkorren: dmsimard maybe able to help18:16
bkorrenpabelanger, well lets see what happens and 'wake him up' if we need to18:16
bkorrenpabelanger, ok, got a couple of new patches: https://gerrit-staging.phx.ovirt.org/#/c/275/ ; https://gerrit-staging.phx.ovirt.org/#/c/276/ ; gonna vote to trigger the gate in a few18:19
pabelangerk18:22
bkorrenpabelanger, here we go18:23
bkorrenpabelanger, both in same queue18:23
pabelangerbkorren: yah, so that is right18:23
pabelanger275 should merge before 27618:23
bkorrenpabelanger, so I should see 275 mentioned in the inventory file for 276?18:24
pabelangeralso is https://gerrit-staging.phx.ovirt.org/ and http://jenkins-staging.ovirt.org/ is just test infra right?18:24
bkorrenpabelanger, yeah18:24
pabelangerbkorren: I need to check, I know when depends-on is used, it is18:24
bkorrenpabelanger, if it isn't I made some wrong basic assumptions in my playbooks and jobs...18:25
pabelangerwell, 276 will contain commit of 275, because is a dependant pipeline18:26
pabelanger276 failed for some reason18:26
bkorrenpabelanger, do note that those are going to two different git repos...18:27
bkorrenpabelanger, yeah I see the failure, strange, having a look18:27
pabelangerbkorren: right, so is job.required-projects setup for projectA and projectB? If so, then zuul will prepare repo state problem for both projects18:28
pabelangerif not, then I'd question why in a shared queue, if no code is shared18:28
bkorrenpabelanger, I see so I need `required-projects` after all - I was intending to share the code in the form of a fallback package repo containing prebuild artifacts for stuff that was not being tested18:30
bkorrenpabelanger, if I need to list all the projects in the job definition it means I can't let my users dynamically 'opt-in' to the system by dropping a .zuul.yaml file in their repos...18:31
pabelangerbkorren: yah, I don't believe that is dynamic right now18:32
pabelangeryou need to create the list of projects before hand18:32
bkorrenpabelanger, hmm.... that is a shame...18:32
pabelangerI _think_ corvus might have a patch up to make that more dynamic18:32
pabelangerlooking18:32
pabelangerbkorren: https://review.opendev.org/613143/18:33
pabelangerthat is what I am thinking of, that may or may not do what you are looking for18:33
pabelangerbkorren: however, in openstack18:34
pabelangera new project can create a new job, then parent to your base job (with common projects) and dynamically add their own18:34
bkorrenpabelanger, hmm... the commit message isn't very detailed18:34
pabelangerthat is used alot in the case of devstack or tempest18:34
pabelangerso, that might be a good way to do it too18:34
hwangboIs there a way to limit what branches are checked for the startup cat jobs?18:35
bkorrenpabelanger, but that would mean that other projects will not test the patches of the new project in their gate no?18:35
bkorrenpabelanger, unless I'm not understanding well, is there an example of that I can see?18:36
pabelangerbkorren: right, it is a one way agreement. If you want all jobs to run a project, you'd move it into the base. In this case, it is more a policy issue, then some team oversees18:37
corvusbkorren, pabelanger: i don't think i understand the use-case here -- required-projects is an attribute of a job, it says that a certain job needs the source code for a project in order to run.  for example, we can't run openstack without keystone, so many openstack jobs say "require-projects: keystone"18:37
corvusoh, yeah, if you're building a system with add-on projects, then what pabelanger says is spot on18:38
pabelangerhwangbo: for github driver, you can exclude unprotected branches18:39
bkorrencorvus, pabelanger - the use case is that we have a gate that know how to test the whole of oVirt - and oVirt devs will opt-in to using the gate over time, with the system falling back to their last merged state if they didn't18:39
hwangbopabelanger: anything for gerrit driver?18:39
pabelangerhwangbo: checking that now18:39
pabelangerbeen using github too much theses days :(18:40
pabelangerhwangbo: maybe corvus can confirm, but I don't believe there is a way to limit the branches to load configuration from with gerrit18:42
bkorrencorvus, ideally if developer comes up with a new oVirt component - he can just add a .zuul.yaml file to his component to start having it be gated - bu liike like they would have to patch the gate job as well to list their project in `required-projects`18:42
corvusdon't think so.  i think we would welcome a non-driver-specific patch to do that (like "include_branches" or "exclude_branches")18:42
pabelangerbkorren: yah, I would personally prefer them to patch the base job, because what could stop any project of opt-in and break everything18:43
corvusbkorren: yeah, i think what pabelanger said about that is right -- they can do that, but it's one-way.  you need the agreement of the larger team to make it two-way.18:43
bkorrenpabelanger, corvus - ok, I see why that makes total sense for a huge project like OpenStack - in tiny little oVirt we can reach team consensus faster, so such separation of concerns is not so strictly needed; but I guess we can do it this way with some user education18:46
hwangbopabelanger corvus: thanks for the clarification18:47
corvusbkorren: well, i don't think it's a matter of size, it's just location -- if everyone on your team is empowered to represent that consensus, then give them all the ability to approve the change to the base job to add in the new project18:48
bkorrenpabelanger, bte I actually see now that I did get both patches listed in the inventory file - my playbook did not deal with that as well as it should have, but that is besides the point: https://ovirt-staging.softwarefactory-project.io/logs/76/276/1/gate-patch/ost-gate/67267d9/zuul-info/inventory.yaml18:49
bkorrenpabelanger, corvus : so which is it now, do I need `required-projects` or not?18:50
pabelangerbkorren:  I believe, in this case you'll see the project in inventory but https://zuul-ci.org/docs/zuul/user/jobs.html#var-zuul.projects.required is false18:55
pabelangerso, they were tested together, but usually not required18:55
pabelangerif job.required-projectrs was set, I'd expect that to always be true18:55
fungithat is likely an effect of your using the dependent pipeline model, so changes enqueued ahead of that one appear in its build inventory18:55
bkorrenpabelanger, so that is exactly what I want to happen - so if that is how its supposed to work I'm a happy camper18:56
*** jamesmcarthur has quit IRC18:57
pabelangerbkorren: but it only happened because both entered the pipeline together. if you only did one, that info should be missing18:57
pabelangerwhich is what we seen before18:57
bkorrenfungi, that was my assumption, pabelanger was helping me debug why I didn't see this happen in my 1t test of this18:57
pabelangerin this case, I think you do want required-projects all the time18:58
pabelangerto help ensure all projects are being checked out properly18:58
bkorrenpabelanger, that is fine, since the job will know to get all the projects by other means - no need for the sources18:58
fungihowever it can be racy, for example if you want change b tested on change a but you wait too long between triggering builds for a and b, then a can already have exited the pipeline by the time b's dependent changes are calculated19:00
fungialso with nearest-non-failing behavior, when you have failing builds in a change ahead of another, testing for the second will be restarted without the first, which may not be a side effect you're counting on there19:01
fungimuch of the dependent pipeline design assumes changes will be merged if they succeed testing, and expects actual dependencies between changes to be declared explicitly so that, say, builds for change a failing doesn't cause change b's builds to succeed simply because they were rerun without a present19:03
*** altlogbot_2 has joined #zuul19:04
*** altlogbot_2 has quit IRC19:04
*** jeliu_ has joined #zuul19:09
bkorrenfungi, that is all ok, I'll just need to have some locking in place to make sure that when a change is merged, no test can start running because the new merged code is built amd made available in a way that makes the tests use it19:10
fungibkorren: i'm not really sure what that means, but before you determine that implicit change dependencies from a dependent pipeline are the answer to your problem, make sure you're okay with the heuristics described at https://zuul-ci.org/docs/zuul/user/gating.html#testing-in-parallel19:11
bkorrenfungi, so that is a and b are not merged - I get tests for both; and if b is merged and a is not - a would be also tested with b because the build containing b had been made available for the test19:12
fungiahh, so sounds like there's some sort of external state used by these jobs that zuul is unaware of? that's a more complicated model than i'm going to be able to wrap my head around, i think, but if it works then cool i guess19:15
openstackgerritJeff Liu proposed zuul/zuul-operator master: Create tasks that spin up kubernetes and run the operator  https://review.opendev.org/66802919:15
bkorrenfungi, yeah - because the test actually needs RPMs - so on merge the RPMs are built and collected in a repo used by the test; and I only build RPMs for patches being tested 'on the fly'19:16
bkorrenfungi, so basically yeah, the package repo is the external state19:17
*** irclogbot_3 has joined #zuul19:21
*** irclogbot_3 has quit IRC19:22
bkorrenfungi, pabelanger , corvus : thanks for all your help! I gtg for nw, have a great day!19:23
fungiyou too!19:24
pabelanger++19:25
*** bkorren has quit IRC19:40
*** bhavikdbavishi has quit IRC19:46
openstackgerritJeff Liu proposed zuul/zuul-operator master: Create tasks that spin up kubernetes and run the operator  https://review.opendev.org/66802919:47
*** openstackgerrit has quit IRC19:49
*** hwangbo has quit IRC19:53
*** hwangbo84 has joined #zuul19:53
daniel2Looking at the zuul docker compose example, when trying to set the files I get volume must be mapping not array: https://shafer.cc/paste/view/64072f2119:55
daniel2Still learning docker compose syntax, so just curious if my syntax is wrong (well it obviously is, but the example isn't very clear)19:55
clarkbdaniel2: see https://docs.docker.com/compose/compose-file/compose-file-v2/#long-syntax for an example19:58
clarkbdaniel2: I think you want volumes:19:58
clarkber19:58
clarkbvolumes:\n  - sshkey: ./path19:58
clarkband so on19:58
daniel2That didnt work either19:58
daniel2ERROR: In file './docker-compose.yaml', volume must be a mapping, not an array.19:59
clarkboh remove the space between sshkey: and .path19:59
clarkb- sshkey:./path according to their examples19:59
clarkbor use the long format and spell everything out19:59
daniel2clarkb: same error19:59
daniel2I'll just remove that volumes section and add them to their spot in the service sections.20:00
*** hwangbo84 has quit IRC20:13
*** altlogbot_3 has joined #zuul20:28
*** jamesmcarthur has joined #zuul20:29
*** altlogbot_3 has quit IRC20:32
*** saneax has quit IRC20:32
*** hwangbo has joined #zuul20:42
*** pcaruana has quit IRC20:48
*** openstackgerrit has joined #zuul20:58
openstackgerritJeff Liu proposed zuul/zuul-operator master: Create tasks that spin up kubernetes and run the operator  https://review.opendev.org/66802920:58
*** mattw4 has quit IRC21:00
*** mattw4 has joined #zuul21:00
*** altlogbot_3 has joined #zuul21:05
*** altlogbot_3 has quit IRC21:08
*** altlogbot_2 has joined #zuul21:19
openstackgerritJeff Liu proposed zuul/zuul-operator master: Create tasks that spin up kubernetes and run the operator  https://review.opendev.org/66802921:21
*** altlogbot_2 has quit IRC21:22
*** michael-beaver has joined #zuul21:24
pabelangerjeliu_: left comment on ^21:29
pabelangerI have to run now21:29
jeliu_pabelanger thanks!21:31
openstackgerritJames E. Blair proposed zuul/zuul-jobs master: Add install-devstack test job  https://review.opendev.org/67019521:36
*** jeliu_ has quit IRC21:36
openstackgerritJames E. Blair proposed zuul/zuul-jobs master: Normalize test jobs yaml  https://review.opendev.org/67019821:44
openstackgerritJames E. Blair proposed zuul/zuul-jobs master: Add add-authorized-keys test job  https://review.opendev.org/67019921:44
*** irclogbot_1 has joined #zuul21:50
*** irclogbot_1 has quit IRC21:52
openstackgerritJames E. Blair proposed zuul/zuul-jobs master: Add add-fileserver test job  https://review.opendev.org/67020121:55
corvusfungi: do you have a system where you can generate a throwaway 1024bit rsa gpg key?22:05
corvusfungi: because... and this may not come as a surprise... i have no idea how to convince my workstation to do that anymore22:05
fungihah... let's find out22:05
clarkbin the future all bits will be >204822:06
clarkbthats why its so difficult right?22:06
fungiall bits are taco bell22:06
clarkbyum22:07
corvusno, it's difficult because: gpg: agent_genkey failed: Permission denied22:07
corvusas long as gpg will still import the 1024bit key, that should be fine22:07
corvusi'm just trying to write a job to test the add-gpg role22:07
fungigpg2 on debian/sid can still do it22:08
corvusfungi: can you pastebin the ascii-armored private key?22:09
fungipub   rsa1024 2019-07-10 [SC]22:09
fungiyup, just a sec22:09
corvusfungi: many thanks :)22:09
fungibtw, all i needed to do was `mkdir test.gnupg&&gpg2 --homedir test.gnupg --full-generate-key` and then take the defaults other than specify 1024 instead of 3072 for the key size22:10
corvusyeah, i did all that, and just got errors because agent22:10
fungioh, neat22:11
openstackgerritJames E. Blair proposed zuul/zuul-jobs master: Add add-fileserver test job  https://review.opendev.org/67020122:14
fungicorvus: http://paste.openstack.org/show/754277/22:14
corvusfungi: thanks!22:14
fungithat's with no symmetric encryption22:14
fungicorvus: for future reference, in https://docs.openstack.org/infra/system-config/signing.html we pass --pinentry-mode loopback22:15
fungiso that might be worth trying sometime22:16
funginot sure if it still tries to connect to the agent though22:16
corvusoh that could help, thx22:16
fungithere's also a batch option, i think, which doesn't do pinentry at all22:17
openstackgerritJames E. Blair proposed zuul/zuul-jobs master: Add add-fileserver test job  https://review.opendev.org/67020122:17
*** rlandy is now known as rlandy|bbl22:19
openstackgerritJames E. Blair proposed zuul/zuul-jobs master: Add add-authorized-keys test job  https://review.opendev.org/67019922:22
openstackgerritJames E. Blair proposed zuul/zuul-jobs master: Add add-fileserver test job  https://review.opendev.org/67020122:22
openstackgerritJames E. Blair proposed zuul/zuul-jobs master: Add add-gpgkey test job  https://review.opendev.org/67020622:22
openstackgerritJames E. Blair proposed zuul/zuul-jobs master: Add add-launchpad-credentaials test job  https://review.opendev.org/67020722:27
openstackgerritJames E. Blair proposed zuul/zuul-jobs master: Add add-sshkey test job  https://review.opendev.org/67020822:32
corvusthat's the easy "a" roles :)22:34
hwangboCan someone explain why the origin remote URL is set to 'file:///dev/null'?22:35
hwangboFor the executor workspaces*22:36
corvushwangbo: https://zuul-ci.org/docs/zuul/user/jobs.html#git-repositories  paragraph 222:37
hwangboMissed that, thanks22:38
corvushwangbo: the zuul repos represent a speculative future state of the origin; any other value we could put there would produce erroneous info (for example it might say we were ahead of master, when we are actually future-master)22:39
fungialso not including an origin causes some tools like pip to get confused22:41
corvusright, so it has to be there, but it also has to be something we can't fetch from22:41
hwangboSo after Zuul creates the speculative workspace and hands it off to the Ansible job, would there be an issue of adding a remote there?22:43
corvushwangbo: why?22:43
openstackgerritJames E. Blair proposed zuul/zuul-jobs master: Add add-fileserver test job  https://review.opendev.org/67020122:45
fungithe main issue i expect is that jobs could easily accidentally replace the prepared git repo state with one from the remote you've added22:45
openstackgerritJames E. Blair proposed zuul/zuul-jobs master: Add add-gpgkey test job  https://review.opendev.org/67020622:47
hwangbocorvus: our builds make git fetch calls for some ancestry checking I think22:47
clarkbhwangbo: the entire ancestry (including the speculative state) is already in place on the repo22:48
clarkbyou should be able to examine the log without doing updates/fetches22:48
corvusright, and doing a fetch is likely to produce incorrect results in the case of more than one change  (for example, to see what changed in the commit under test, you need to compare to the origin/branch ref that zuul supplies, rather than a remote branch, otherwise you'll get too many changes)22:49
openstackgerritJames E. Blair proposed zuul/zuul-jobs master: Add add-launchpad-credentaials test job  https://review.opendev.org/67020722:50
openstackgerritJames E. Blair proposed zuul/zuul-jobs master: Add add-sshkey test job  https://review.opendev.org/67020822:51
hwangboAll right, thanks for the info everyone. I'll work toward removing using remotes in our build22:56
*** altlogbot_1 has joined #zuul23:05
*** altlogbot_1 has quit IRC23:08
sgwHi guys, got the installation of osc working today with a couple of hiccups, but it's working, so thanks.  next hiccup!  I am trying to do an ansible find in the src_root and getting an error that it's not a vaild directory23:10
*** tosky has quit IRC23:10
clarkbsgw: can you share the task with us?23:13
fungiyeah, like could it simply be a case of variable expansion gone wrong?23:13
fungior happening on the wrong host?23:13
sgwknowing me, probably wrong host!  my file: paths: "{{ zuul.executor.src_root }}/opendev.org/starlingx/fault"23:14
*** altlogbot_3 has joined #zuul23:15
clarkbzuul.executor.src_root is going to be the src_root path on the executor which would need to run on localhost (which doesn't happen by default)23:15
clarkbdependong on what you are doing you may need to change that to the path on the remote node23:15
* clarkb finds what that var is called23:15
*** jamesmcarthur has quit IRC23:16
clarkb{{ zuul.project.src_dir }} ?23:16
sgwSorry for the noise, I mis-understood the executor vs project variable sets23:17
*** altlogbot_3 has quit IRC23:18
*** jamesmcarthur has joined #zuul23:19
*** altlogbot_1 has joined #zuul23:21
clarkbsgw: the stuff under executor relates to the environment that is executing ansible on the remote host. It is possible to run jobs that only run on the executor (no remote host) but they are extremely limited in what they can do (mostly http requests are what we have done with it I think)23:22
*** jamesmcarthur has quit IRC23:24
*** altlogbot_1 has quit IRC23:24
sgwclarkb: I am testing with a local instance of zuul and gerrit running on the same machine, but I gather in different containers23:25
clarkbsgw: if this is with the quickstart then ya should be different containers23:25
*** jamesmcarthur has joined #zuul23:25
sgwyeah quickstart23:26
*** altlogbot_2 has joined #zuul23:27
sgwclarkb: yup src_dir was the right one, now to continue the debug into existance!23:30
*** altlogbot_2 has quit IRC23:30
*** mattw4 has quit IRC23:32
*** michael-beaver has quit IRC23:34
*** jamesmcarthur has quit IRC23:43
*** jeliu_ has joined #zuul23:49
*** jeliu_ has quit IRC23:53

Generated by irclog2html.py 2.15.3 by Marius Gedminas - find it at mg.pov.lt!