Thursday, 2017-06-01

openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Make zuul ansible dir self-contained  https://review.openstack.org/46820800:11
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Add untrusted-projects ansible test  https://review.openstack.org/46188100:12
jeblairSpamapS: it looked like "from . import paths" wasn't working out (i don't think "." in that context means what we hoped).  so i pushed a new patchset to change 468208 with a variant on that approach based on an idea mordred had.  i managed to get it to pass the tests in the following change locally.  [cc pabelanger]00:14
jeblairjlk: i'm past eod and zonked (see above brain teaser), i'll have to look at that tomorrow, sorry00:15
tobiashmorning04:21
tobiashdo some of you also encounter this one on executor restart?04:21
tobiashhttp://paste.openstack.org/show/611156/04:21
tobiashdo you consider this as a bug in my service file (missing delete as pre-start) or the executor (should handle pre-existing ansible pycache)?04:32
*** hashar has joined #zuul07:57
*** hashar has quit IRC08:05
*** hashar has joined #zuul08:05
*** hashar has quit IRC08:20
*** hashar has joined #zuul08:45
*** smyers has quit IRC09:04
openstackgerritTristan Cacqueray proposed openstack-infra/nodepool feature/zuulv3: Implement a static driver for Nodepool  https://review.openstack.org/46862409:14
openstackgerritTristan Cacqueray proposed openstack-infra/nodepool feature/zuulv3: Extend Nodepool configuration syntax to support multiple drivers  https://review.openstack.org/46875109:14
openstackgerritTristan Cacqueray proposed openstack-infra/nodepool feature/zuulv3: Collect request handling implementation in an OpenStack driver  https://review.openstack.org/46875009:14
openstackgerritTristan Cacqueray proposed openstack-infra/nodepool feature/zuulv3: Abstract Nodepool provider management code  https://review.openstack.org/46874909:14
openstackgerritTristan Cacqueray proposed openstack-infra/nodepool feature/zuulv3: Abstract Nodepool request handling code  https://review.openstack.org/46874809:14
openstackgerritTristan Cacqueray proposed openstack-infra/nodepool feature/zuulv3: Add support for custom ssh port  https://review.openstack.org/46875209:14
openstackgerritTristan Cacqueray proposed openstack-infra/nodepool feature/zuulv3: Implement an OpenContainer driver  https://review.openstack.org/46875309:14
*** smyers has joined #zuul09:14
mordredtobiash: oh wow fun10:14
tobiashmordred: so should I fix the executor or my systemd service file? ;)10:23
mordredtobiash: I don't know - but I think the executor - I'm confused as to why copytree can't handle it10:25
mordredtobiash: oh! https://docs.python.org/3/library/shutil.html#shutil.copytree ... ignore= can take a callable that takes as an argument the list of things in the dir copytree is visiting and returns ones to ignore10:27
mordredtobiash: so def _ignore(dir, files): if "__pycache__" in files: return ["__pycache__"] else: return [] and copytree(ignore=_ignore) should probably do the trick, yeah?10:28
mordredsince we don't really want to copy __pycache__ files10:29
tobiashmordred: thanks, will try that out10:32
openstackgerritMonty Taylor proposed openstack-infra/zuul feature/zuulv3: Make zuul ansible dir self-contained  https://review.openstack.org/46820810:38
*** jkilpatr has quit IRC10:45
*** jkilpatr has joined #zuul11:02
pabelangerjeblair: SpamapS: thanks, going to debug bwrap failure this morning. Not sure why job is currently failing12:02
Shrewsi was hitting that pycache thing yesterday during streamer testing13:01
*** dkranz has joined #zuul13:17
*** jkilpatr has quit IRC13:53
*** jkilpatr has joined #zuul13:55
SpamapSpabelanger: sweet thanks14:16
* SpamapS is just catching up with backscroll from yesterday14:16
SpamapSjeblair: ACK, I saw the patches you and mordred made just now. I'm not sure I understand where the pythonpatch change comes in, but I'm glad we're making progress.14:17
mordredSpamapS: basically - copy not just each of the plugin dirs, but copy the whole zuul/ansible tree, and put it in a zuul dir with a __init__.py - then put the dir containing that zuul dir into PYTHONPATH so that the path lookups work - without needing to copy any more data than we're copying now14:29
mordredSpamapS: since there isn't anything in zuul/ansible other than dirs we copy anyway - its the same amount of copying - but we don't want to copy the _entire_ zuul tree cause that _is_ more things to copy14:31
*** openstackgerrit has quit IRC14:34
SpamapSmordred: so the thing I think I was missing was the PYTHONPATH change14:39
mordredyah14:56
mordredalthough my fix of the pep8 failure sure did not go well :)14:56
mordredoh - that's ust the setuptools/six issue14:57
*** jkilpatr has quit IRC14:59
*** jkilpatr has joined #zuul15:09
*** toabctl has quit IRC15:22
*** toabctl has joined #zuul15:23
*** hashar has quit IRC15:28
jeblairmordred, SpamapS: ah, i botched the rework of the zuul.ansible change anyway.  fixing.16:11
*** openstackgerrit has joined #zuul16:14
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Make zuul ansible dir self-contained  https://review.openstack.org/46820816:14
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Add untrusted-projects ansible test  https://review.openstack.org/46188116:14
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Remove source from reporter  https://review.openstack.org/46236216:23
jeblairmordred: want to +3 https://review.openstack.org/461981 which you previously reviewed?16:24
jeblairSpamapS, mordred, pabelanger: the bwrap changes all pass tests now!16:25
jeblairi'm just going to fix my -1 on 453851 since SpamapS is conferencing16:25
pabelangerjeblair: thanks for looking into the test16:26
jlko/16:26
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Make zuul ansible dir self-contained  https://review.openstack.org/46820816:27
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Add untrusted-projects ansible test  https://review.openstack.org/46188116:27
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Add support for bwrap  https://review.openstack.org/45385116:27
mordredjeblair: done16:27
mordredjeblair: do you think it's worth checking to see if a PYTHONPATH exists and appending to it if it does?16:27
jeblairmordred: hrm, that does seem like the polite thing to do16:28
jeblairmordred: adding that now16:28
mordredjeblair: env_copy['PYTHONPATH'] = os.path.sep.join(['self.executor_server.ansible_dir'] + [env_copy.get('PYTHONPATH')]) shouldn't be _terrible_16:28
jlkjeblair: looking at https://review.openstack.org/#/c/461981/7/zuul/driver/gerrit/gerritreporter.py  and from your advice yesterday, couldn't this just check change.project.connection_name  and self.connection.connection_name ?16:31
jeblairmordred: it's separated by ':' right?16:31
mordredjeblair: yah. well - or os.path.pathsep possibly16:32
mordredjeblair: I'm not sure it it's separated by somethign else on non-linux -but we liely have other issues there anyway16:33
mordredso I doubt os.path.pathsep will be the thing that kills us :)16:33
jeblairmordred: ah yeah, so os.path.pathsep.16:34
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Make zuul ansible dir self-contained  https://review.openstack.org/46820816:34
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Add untrusted-projects ansible test  https://review.openstack.org/46188116:34
jeblairmordred: i had already typed ':'16:35
jeblairmeh, i'll change it16:35
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Make zuul ansible dir self-contained  https://review.openstack.org/46820816:36
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Add untrusted-projects ansible test  https://review.openstack.org/46188116:36
*** nt has joined #zuul16:36
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Only report to gerrit if the action is from gerrit  https://review.openstack.org/46198116:37
jeblairjlk: yeah, i've been trying to wrap my head around that -- i think the canonical name is desired over the connection name there because in the use case tobiash was referencing in earlier comments, the user actually wants it to report to a connection other than the source connection for the change.16:38
jeblairjlk: the use case is basically to report to gerrit as a different user than you might normally use16:38
jlkoh16:38
jeblairjlk: so it's using the fact that multiple connections might have the same canonical name to do that.  tbh, i'm not sure that's entirely going to hold up.16:39
jlkyeah, that makes it weird if I've got multiple tenants connected to public github16:39
jlkthey're all going to share the same canonical URL, but I don't necessarily want them cross-talking16:40
jeblairjlk: i expect the tenants will all share the same connection though16:40
jlkmaybe tenant was the wrong word there16:40
jlkIf I have multiple connections to public github16:40
jlkmaybe I wouldn't?16:40
jlkBut I might if they need to have different trigger / report / require / reject16:41
jlkmaybe I'm overthinking this16:41
jeblairjlk: all of those should be able to happen with one connection.  normally a zuul install would have one connection to each server (one gerrit, one github, etc).  only reason to have more than one for a given server is to use a new set of credentials (ie, if you wanted your zuul to present as two separate github apps).16:43
jlkyeah, or one as an app, and one as a distinct user16:44
jeblairoh you know what, i think that check may actually just want to check the *hostname* not the *canonical_hostname*.16:44
jeblairwhat we're looking for in that change is "if i report to review.openstack.org, is it going to understand this change"16:44
jeblairlemme etherpad this16:45
tobiashjeblair: yes, this is a quite nice summary of the intent of that change16:51
tobiashso my personal use case was to separate different gerrits from each other16:52
tobiashfor this the connection name would be sufficient16:52
tobiashbut in the tests there is also the use case to have the source in one connection and reporting to a different connection to the same gerrit16:52
tobiashI personally don't have the latter use case but as there is a test case for that I thought comparing the host names would enable my use case and also the already existing test case16:53
jeblairtobiash: yeah, and i think the actual hostname (vs canonical hostname, which may be different) should work for your case as well, right?16:55
tobiashjeblair: I think so16:55
tobiashisn't the canonical hostname the fqdn?16:55
tobiashso my intent was to identify the same gerrit by using the real dns name of the gerrit (aka review.openstack.org)16:56
mordredtobiash: canoncal_hostname is the fdqn of the place from which git repos are known to be located16:57
jeblairtobiash: that's the "hostname".  the "canonical_hostname" might be that, or something completely different.  canonical_hostname is there so that we know what to call the repos when we put them on disk.16:57
mordredtobiash: so, for openstack, it's "git.openstack.org"16:58
jeblairright, so that people writing golang import lines can say "git.openstack.org/openstack/something"16:58
mordredyup16:58
mordredI agree, I think hostname should work for tobiash use case16:59
jeblairbut now that i've dug into this further, i think either one will work just as well.  maybe we should leave it as canonical_hostname for now and see if there are problems.  :)16:59
tobiashseems that I misunderstood the canonical hostname...16:59
jeblairtobiash: it defaults to the fqdn if you don't set it to anything else17:00
tobiashok, rtfm helps...17:01
tobiashthat comes from the connection config17:01
jeblairi think the thing that's been confusing me is that we haven't really explored whether or why someone might have 2 connections to the same server and set either the same or different canonical_hostnames for them.17:01
tobiashso I really meant the hostname17:01
jeblairjlk: the approach in 469297 lgtm17:05
openstackgerritTobias Henkel proposed openstack-infra/zuul feature/zuulv3: Case sensitive label matching in canMerge  https://review.openstack.org/46994617:06
tobiashI don't know when you are planning the gerrit update to 2.13. We did in march and it broke our gate. This is my proposed fix ^^^17:07
mordredjeblair: I agree with your confusion17:08
openstackgerritTobias Henkel proposed openstack-infra/zuul feature/zuulv3: Case sensitive label matching in canMerge  https://review.openstack.org/46994617:08
jlkjeblair: re 469297 okay. I'm chasing down an issue now where the zuul trigger is instantiated wrong, and the "connection" attribute is being set to a list (the config) rather than the real connection object.17:09
pabelangerI've +3'd https://review.openstack.org/#/c/468532/ to zuulv3-dev.o.o to fix our apache index.html.17:14
pabelangerI've also applied the change manually since puppet doesn't run on the server17:15
*** dmsimard is now known as dmsimard|off17:16
pabelangerwould it be possible to append a build ID to our logging? Trying to follow along which playbook is running for which job is a little confusing in executor-debug.log17:18
pabelangerDEBUG zuul.AnsibleJob currently, hoping we could DEBUG zuul.AnsibleJob.<job id>17:19
jlkoooooh poop.17:20
jeblairpabelanger: you may be interested in reviewing https://review.openstack.org/46855417:21
jlkjeblair: looking at https://git.openstack.org/cgit/openstack-infra/zuul/tree/tests/fixtures/config/zuultrigger/parent-change-enqueued/git/common-config/zuul.yaml?h=feature/zuulv317:21
openstackgerritPaul Belanger proposed openstack-infra/zuul feature/zuulv3: Do not merge  https://review.openstack.org/46995317:21
pabelangerjeblair: ty looking17:22
jlkjeblair: It looks like a zuul trigger will happen for a gerrit change. I think my change will block that from going through. But still digging.17:22
jlk2017-06-01 17:22:37,881 zuul.IndependentPipelineManager  DEBUG    Filter <ZuulEventFilter types: parent-change-enqueued pipelines: gate> skipped for change <Change 0x7ff594139b50 1,1> due to mismatched connections17:23
jlkyeah damn.17:23
jeblairjlk: there's a zuul requirement filter?17:24
jlkYeah it's a zuul event filter17:24
jeblairjlk: oh! you did trigger filters too, i didn't notice that17:24
jlkwas that too far?17:25
jlkbut this isn't a trigger filter, it's an event filter17:25
jlka pipeline requirement17:25
jeblairthat looks like a trigger filter, which is an event filter17:26
pabelangerjeblair: looks exactly what I was hoping for. +2 but left a question17:26
jeblair(vs a requirement filter, which is a ref filter)17:26
jlkI'm so confused :)17:26
jlkI thought a trigger filter was something like 'require-approval:'17:27
jeblairwe're making new things! :)17:27
jeblairjlk: i think the difference is positive vs negative matching.  with EventFilters, which are created by triggers, if any one matches, the event matches and we enqueue the change.17:27
jlkmy original intent was to prevent a github connection change from being blocked by a gerrit connection pipeline requirement.17:28
jeblairjlk: with RefFilters, which are created by require/reject pipeline requirements, we want them all to match.17:28
jlkI may have gone too far and touched on the trigger filters17:28
tobiashgate failed here with some unrelated error: https://review.openstack.org/#/c/465046/17:28
tobiashhttp://paste.openstack.org/show/611233/17:28
tobiashshall I recheck?17:29
jeblairjlk: right, i think you only need the change on line 293, not line 127  of zuul/manager/__init__.py17:29
jlkalrighty17:29
jeblairtobiash: yeah, that's showing up *a lot*.  i was just starting to look into it.  Shrews, have you gotten anywhere with that?17:30
jlkfor my own brain meat, what's the right term for a requirement expressed at the pipeline level vs a requirement expressed at the trigger level, vs just a regular old trigger criteria?17:30
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Fix bad text wrap in status page  https://review.openstack.org/46853217:30
tobiashjeblair: ok17:31
jeblairjlk: i think 'trigger requirement' and 'trigger criteria' are really the same thing.  that may be the point of confusion.  when you're adding an approval requirement to a trigger, you're not implicitly adding a pipeline requirement, you're just saying, for this trigger to fire, this has to be met.  that naturally already works with cross-connection changes since a gerrit change will never fire the github trigger.  and that's okay, because it ...17:33
jeblair... might fire the gerrit trigger that immediately follows and still end up in the pipeline.17:33
Shrewsjeblair: no. Failed to reproduce on all my local runs. SpamapS says it's similar to the FD issue he's been chasing.17:33
jeblairShrews: i managed to repro locally in a tight loop of single foreground runs with: while ttrun -epy27 tests.unit.test_log_streamer; do echo ok; don17:34
jeblairShrews: i managed to repro locally in a tight loop of single foreground runs with: while ttrun -epy27 tests.unit.test_log_streamer; do echo ok; done17:34
jeblairShrews: it took a little while to hit though17:34
jlkokay. It's just that trigger requirements are a bit "special" because some of them require deeper knowledge of the change in question, knowledge that isn't necessarily available in the raw event content.17:34
Shrewsjeblair: hmm, I did something similar17:34
ShrewsWill keep poking17:35
jeblairjlk: yep.  i think it's okay for a github trigger event filter to say "i can't evaluate this, return False"17:35
jlklike the event content could just be a "recheck" comment, but to trigger, the change requires that there be a certain approval level on the change.17:35
jlkwtf...17:43
jlkI've got a test, where a job is clearly executing, but self.builds and self.history are both empty lists.17:43
jlkaaaand I've just found another bug :/17:47
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Whitelist pydevd debug threads  https://review.openstack.org/46504617:47
jlkjeblair: interesting question, how do you report on a ref-updated type event, given that there is no change associated with it? How would you report success/failure?17:52
SpamapSjlk: email?17:53
SpamapSlike, statically configured address, SMTP Reporter?17:53
jlkwhose?17:54
SpamapSYou'd define it in the job17:54
jlka pipeline runs many projects through, you'd think the email target would be project or job specific.17:54
jlkoh can you define that in the job?17:54
SpamapSGood point17:55
SpamapSI think that's in pipeline config.17:55
SpamapSseems like it might be useful to be able to vary reporter config in jobs17:56
SpamapSThis kind of goes to the same problem of being able to communicate job results to zuul and/or next jobs17:57
jlkah solved first issue. Don't use noop job if you want something to actually hit self.builds or self.history17:59
*** jkilpatr_ has joined #zuul18:15
SpamapS18:16
SpamapSderp18:16
jlk18:16
*** jkilpatr has quit IRC18:18
openstackgerritJesse Keating proposed openstack-infra/zuul feature/zuulv3: Handle change related reqs on push like events  https://review.openstack.org/46929718:35
jlkjeblair: ^^ is now ready for real reviews.18:36
Shrewsjeblair: i'm well over 1000 runs of that test now, still haven't hit it18:59
Shrewsheh, figures. failure at run 128419:03
openstackgerritJesse Keating proposed openstack-infra/zuul feature/zuulv3: Remove pipeline argument from various report fncts  https://review.openstack.org/46425219:22
openstackgerritTobias Henkel proposed openstack-infra/zuul feature/zuulv3: Case sensitive label matching  https://review.openstack.org/46994619:41
openstackgerritTobias Henkel proposed openstack-infra/zuul feature/zuulv3: Fix tests for "Case sensitive label matching"  https://review.openstack.org/46998519:41
tobiashDue to a behavior change in gerrit 2.13 review and submit does not work if the casing of the label is not the same as configured in gerrit19:42
tobiashthe above patches remove case conversion for the labels in zuul so this issue can be solved19:43
openstackgerritTobias Henkel proposed openstack-infra/zuul feature/zuulv3: Fix tests for "Case sensitive label matching"  https://review.openstack.org/46998519:46
openstackgerritTobias Henkel proposed openstack-infra/zuul feature/zuulv3: Fix tests for "Case sensitive label matching"  https://review.openstack.org/46998519:47
openstackgerritDavid Shrewsbury proposed openstack-infra/zuul feature/zuulv3: Fix log streamer closing  https://review.openstack.org/46998919:57
Shrewsjeblair: that ^^^ should cover the random fail. I'm still not sure exactly why the socket is sometimes already closed.19:57
pabelangerzuul question, why if a job is running and has a depends-on patch that is reuploaded, that job reports: This change depends on a change that failed to merge.20:13
*** jkilpatr_ has quit IRC20:47
mordredjeblair: we missed Zuul's birthday on Monday!20:59
mordredjeblair: Date:   Tue May 29 14:49:32 2012 -070020:59
mordred    Initial commit.20:59
SpamapSman, we're such a-holes21:01
*** jkilpatr has joined #zuul21:06
mordredSpamapS: ikr?21:12
mordredjlk, SpamapS: re: ref-updated events - there have been a few requests in openstack land from folks who want a specific job to emails results to a specific place, but they do not want to define a whole new pipeline21:13
mordredso maybe there's a thing we should think about21:14
mordredjlk, SpamapS: OTOH, I was also thinking that, at least with github, github allows you to leave arbitrary comments on files in a repo21:14
mordredso maybe the github plugin could have the ability to leave ref-updated comments on the commit - or even in-line ones if we got fancy21:15
mordredhttps://github.com/ansible/ansible/commit/eb83c6f4e772c6861e41b4cc17296e00747d83aa <-- at bottom, example of leaving a comment on a specific commit21:16
SpamapSthat's interesting21:20
jlkyeah that's... interesting21:25
jlkanother "extension" to the git standard21:25
jlkIn Github you can also set a status on any commit object, it is not tied to a pull request21:35
*** dkranz has quit IRC21:36
jeblairmordred: were you planning on continuing review of 469595-468564?21:46
jeblairShrews: re 469989 -- if we get an error from shutdown, do we not want to run close?21:47
Shrewsjeblair: the error comes from shutdown when it's already closed21:48
jeblairShrews: gotcha21:49
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Fix log streamer closing  https://review.openstack.org/46998921:58
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Fix fake gearman py3 bug and re-enable sched tests  https://review.openstack.org/46858322:13
mordredjeblair: yes!22:17
mordredjeblair: I kinda feel like we should have a tool that makes little javascript slideshows like the zuul demo given a test case22:23
mordredjeblair: I don't actually want to write that, mind you22:23
jeblairthat would be nice :)22:23
jeblairif we do something for the status page, we could automatically derive it from the tests22:24
mordredjeblair: zomg. a view of the status page for a given change or pipeline that would be animated like the slideshow22:25
mordredwould be fun to put on a really big monitor22:25
mordredlittle boxes floating down to little branch tips22:26
jeblairmordred: the idea that someone might do that someday is actually why the canvas animation has an object model that matches zuul's.  :)22:32
mordredjeblair: :)22:33
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Extend job list when inheriting jobs  https://review.openstack.org/46539322:35
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Enable test_project_override  https://review.openstack.org/47004922:41
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Enable test_periodic  https://review.openstack.org/47005322:55
SpamapSyou guys are making my presentation brain explode with desire23:01
mordredSpamapS: ikr?23:02
SpamapSFYI, Zookeeper CVE .. CVE-2017-5637 https://people.canonical.com/~ubuntu-security/cve/2017/CVE-2017-5637.html23:06
SpamapS"The wchp/wchc four letter words can be exploited in a DOS attack on the23:07
SpamapSZK client port - typically 2181.23:07
SpamapS"23:07
SpamapSjeblair: so, 453851, how do we get that one reviewed and approved, given that I wrote most of it but you uploaded the null driver fix?23:12
jlkin v3 land, when somebody pushes a change to a config repo, is zuul supposed to "notice" this and reconfigure?23:20
pabelangeruntrusted yes23:22
pabelangertrusted you need to reload zuul23:23
pabelangerjlk: you mean zuul.yaml right?23:24
jlkyes23:24
pabelangernow you have me thinking23:25
pabelangerfor openstack-infra, we have only added projects to our zuul.yaml in a config repo.  I do know you need to have the projects in the tenant before you can add them to zuul.yaml otherwise zuul -1 as a configuration error23:27
pabelangerbut, being trusted jobs, zuul will only notice them after they merge, zuul should reconfigure automatically23:28
pabelangerbut jeblair knows best23:28
*** jamielennox|away is now known as jamielennox23:59

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