Wednesday, 2017-11-01

openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: On reconfiguration, re-enqueue items at the same position  https://review.openstack.org/51679900:07
jeblairthat changes fixes a pretty significant performance degradation ^  i'd like to merge it asap00:13
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Add support for override-checkout, deprecate override-branch  https://review.openstack.org/51645100:43
*** hashar has quit IRC00:47
openstackgerritMerged openstack-infra/zuul feature/zuulv3: On reconfiguration, re-enqueue items at the same position  https://review.openstack.org/51679900:50
*** xinliang has quit IRC01:37
*** xinliang has joined #zuul01:49
*** xinliang has quit IRC01:49
*** xinliang has joined #zuul01:49
openstackgerritMerged openstack-infra/zuul-jobs master: Authorize the multi-node-bridge network in iptables if there's one  https://review.openstack.org/51675702:04
*** robled has quit IRC04:53
*** robled has joined #zuul07:21
openstackgerritTristan Cacqueray proposed openstack-infra/zuul feature/zuulv3: web: add /tenants route  https://review.openstack.org/50326807:24
openstackgerritTristan Cacqueray proposed openstack-infra/zuul feature/zuulv3: web: add /{tenant}/status route  https://review.openstack.org/50326907:25
openstackgerritTristan Cacqueray proposed openstack-infra/zuul feature/zuulv3: web: add /{tenant}/jobs route  https://review.openstack.org/50327007:27
openstackgerritTristan Cacqueray proposed openstack-infra/zuul feature/zuulv3: web: add /{tenant}/builds route  https://review.openstack.org/46656107:30
openstackgerritTristan Cacqueray proposed openstack-infra/zuul feature/zuulv3: web: make console-stream tenant scoped  https://review.openstack.org/50545207:30
openstackgerritTristan Cacqueray proposed openstack-infra/zuul feature/zuulv3: web: add /{source}/{project}.pub route  https://review.openstack.org/50253007:32
*** hashar has joined #zuul07:48
openstackgerritTristan Cacqueray proposed openstack-infra/zuul feature/zuulv3: web: add /{tenant}/status route  https://review.openstack.org/50326909:28
openstackgerritTristan Cacqueray proposed openstack-infra/zuul feature/zuulv3: web: add /{tenant}/jobs route  https://review.openstack.org/50327009:28
openstackgerritTristan Cacqueray proposed openstack-infra/zuul feature/zuulv3: web: add /{tenant}/builds route  https://review.openstack.org/46656109:28
openstackgerritTristan Cacqueray proposed openstack-infra/zuul feature/zuulv3: web: make console-stream tenant scoped  https://review.openstack.org/50545209:28
openstackgerritTristan Cacqueray proposed openstack-infra/zuul feature/zuulv3: web: add /{source}/{project}.pub route  https://review.openstack.org/50253009:28
*** jkilpatr has joined #zuul09:56
*** electrofelix has joined #zuul09:57
openstackgerritTristan Cacqueray proposed openstack-infra/nodepool feature/zuulv3: Refactor provider config to driver module  https://review.openstack.org/48838409:58
openstackgerritTristan Cacqueray proposed openstack-infra/nodepool feature/zuulv3: Implement a static driver for Nodepool  https://review.openstack.org/46862409:58
openstackgerritTristan Cacqueray proposed openstack-infra/nodepool feature/zuulv3: Add username to build and upload information  https://review.openstack.org/45396809:59
*** jkilpatr has quit IRC10:11
openstackgerritTristan Cacqueray proposed openstack-infra/nodepool feature/zuulv3: Implement an OpenContainer driver  https://review.openstack.org/46875310:12
openstackgerritTristan Cacqueray proposed openstack-infra/nodepool feature/zuulv3: builder: do not cleanup image for driver not managing image  https://review.openstack.org/51692010:14
*** hashar is now known as hasharAway10:58
*** sambetts|afk is now known as sambetts10:59
*** weshay|PTO is now known as weshay12:09
*** bhavik1 has joined #zuul12:35
*** bhavik1 has quit IRC12:39
*** dkranz has joined #zuul12:51
openstackgerritDavid Shrewsbury proposed openstack-infra/nodepool feature/zuulv3: Use >= in instance count comparison to max-servers  https://review.openstack.org/51698813:05
*** hasharAway is now known as hashar13:35
leifmadsenpabelanger: jeblair: SpamapS: so I'm thinking that the "quickstart" playbooks I'm working on should be specifically biased and low configurability, and link back to the quickstart guide that basically runs the same commands that you would do in the guide. Then would it make sense to build out another more advanced version consuming the Windmill playbooks? I assume that's what Windmill is there for... ?13:58
leifmadsen(although I'm going to have to lock pabelanger in a room and make him write some docs on how to consume them)13:58
*** rfolco has quit IRC14:27
leifmadsenjeblair: ping15:01
jeblairleifmadsen: hi there!15:01
leifmadsenit's 11am :)15:01
jeblairleifmadsen: yes!  may i have 5 more minutes to finish up my breakfast?  sorry i got a slightly late start :/15:02
leifmadsenabsolutely not15:02
leifmadsendocumentation waits for no one!15:02
leifmadsen(actually i could use a snack and coffee too :))15:02
leifmadsenjoin when you can, I'm idling in the room now15:03
pabelangerleifmadsen: jeblair: I might join up in another few minutes or so, was running errends this morning before travels15:23
leifmadsenall good15:23
leifmadsenwe're just debugging stuff ;)15:23
SpamapSleifmadsen: oh, you're working on playbooks?15:31
SpamapSleifmadsen: You could just pare down BonnyCI/hoist15:32
leifmadsenI don't want to follow another set of playbooks, but rather build against the docs15:32
SpamapSleifmadsen: hrm15:32
SpamapSplaybooks are code15:32
leifmadsenneat15:33
SpamapSso I'm concerned that we'll have _three_ sets of playbooks to maintain15:33
leifmadsenwe're not going to maintain this15:33
SpamapS(software factory, BonnyCI/hoist, and now these)15:33
leifmadsenit's going to be separate from what you would run to actually run15:33
leifmadsendon't worry, they are in my own personal repo15:33
leifmadsenwe can discuss later when I'm not trying to do 3 things at once, but I'm following the framework that was discussed in our initial documentation overview for a quickstart15:35
leifmadsenwhich is the equiv of a "hello world", bare min15:35
leifmadsenmake it "do something"15:35
*** hashar has quit IRC15:39
leifmadsenalso technically there are already three if you count SF, BonnyCI, and Windmill15:42
SpamapSYeah didn't even know about Windmill :-P15:45
leifmadsenblame pabelanger :)15:45
SpamapSoh that one, ok I kinda knew about it.15:45
SpamapSso anyway15:45
*** hashar has joined #zuul15:45
SpamapSOn a related note.. I'm trying to fetch keys from my zuul, and finding that my zuul has no keys.15:45
jeblairSpamapS: it should generate them at startup15:46
SpamapSjeblair: yeah it has not. My /var/lib/zuul/secrets dir has one directory: 'openstack', which is odd since I have no openstack projects.15:47
jeblairSpamapS: should be /var/lib/zuul/keys15:48
SpamapSah that dir does not exist at al15:49
SpamapSall15:49
jeblair/var/lib/zuul/keys/<connection name>/<project name>15:50
jeblairSpamapS: is /var/lib/zuul/ writable by zuul?  if so it should create keys/15:50
jeblair(and of course this is on the scheduler node)15:50
SpamapSdrwx------ 8 zuul zuul 186 Oct 30 14:42 /var/lib/zuul15:52
SpamapSyeah15:52
SpamapSI see the os.mkdir.. not sure why that isn't happening15:53
jeblairSpamapS: hrm, there should be an exception if something went wrong, probably under "Exception in management event:"15:55
SpamapSjeblair: Yeah looking for something like that now and not finding it. It would be pretty early I'd think.15:56
SpamapSsince we _get_project_key_dir pretty early on15:57
SpamapShttp://paste.openstack.org/show/625226/15:58
SpamapSso something is silently failing that shouldn't maybe15:58
pabelangerokay, ready to eavesdrop now15:59
leifmadsenpabelanger: in my bluejeans room16:00
leifmadsenfyi16:00
leifmadsenjust about to start basic configuration of zuul16:00
leifmadsenso good timing16:00
leifmadsenpabelanger: reference etherpad we're working with: https://etherpad.openstack.org/p/zuulv3-quickstart16:00
SpamapSjeblair: ok, that's annoying. I dunno why, but in Bonny we actually separated /var/lib/zuul into role-specific state dirs16:05
SpamapSso the keys are in /var/lib/zuul/scheduler-state/keys16:05
jeblairleifmadsen: https://docs.openstack.org/infra/zuul/feature/zuulv3/admin/quick-start.html16:05
jeblairSpamapS: gotcha. yeah, it'll use state_dir +'/keys'16:06
SpamapSYeah so they are in there16:07
SpamapSNow to figure out why I'm getting 404 on them16:07
SpamapShm that regexp looks suspect16:10
SpamapS        m = re.match('/keys/(.*?)/(.*?).pub', path)16:10
SpamapSmy project name is 'something/something'16:10
jeblairSpamapS: that should be fine16:11
* SpamapS never REALLY understands regexes until they work16:12
jeblairSpamapS: you know about the encrypt_secret script?16:13
jeblairSpamapS: it should take arguments and construct the right url, etc16:13
dmsimardWhat happens if we reboot a node during a job ? Can we do that ? I guess the zuul console would need to be started... is there anything else ?16:19
jeblairdmsimard: should be possible.  yeah, restarting zuul_console would be good.16:20
SpamapSjeblair: yes, it's not working16:21
dmsimardjeblair: I wonder if we should handle that through a systemd unit16:21
jeblair(though, strictly speaking, things should still work even without zuul_console running)16:21
SpamapSjeblair: which is why I'm looking at why my port 8001 is 404'ing on /keys16:21
SpamapS(8001 being where webapp is)16:21
jeblairdmsimard: not a bad idea, then there's less impact on playbooks16:21
jeblairSpamapS: keys are served through the old webapp16:22
jeblairwhich is probably 800116:22
SpamapSyeah same as status.json and such yes?16:22
jeblairjust wanted to be clear, it's served from the scheduler-internal webapp, not the new zuul-web.16:22
jeblairSpamapS: yep16:22
SpamapSYeah I'm adding comment='s to the HTTPNotFound's in webapp16:23
jeblairSpamapS: do you need to add or remove a tenant name?16:23
SpamapSso I know which 404 is firing16:23
jeblairlike, in case you're proxying a level down or something16:23
SpamapSjeblair: it's not clear yet16:23
SpamapSand I'm not proxying /keys yet16:23
SpamapSwanted to see if it had a tenant component or not :)16:23
SpamapSso just trying to hit 127.0.0.1 from the scheduler16:24
SpamapSjeblair: ok, so it does seem to want ot have a tenant component... and when it does, I get a 50016:28
SpamapShttp://paste.openstack.org/show/625234/16:29
SpamapSAttributeError: 'Project' object has no attribute 'public_key'16:29
SpamapSOh I did find a doc bug, or a url bug, not sure which16:33
SpamapShttp://127.0.0.1:8001/GoDaddy/keys/gd-github/cloudplatform/k8s-ansible.pem.pub16:33
SpamapSthat's the URL needed16:33
SpamapSnotice, not <project>.pub, but <project>.pem.pub16:33
SpamapSor that's a bug in the tool and the webapp that went hand in hand16:33
jeblairoh weird.  we should fix that when we move this to zuul-web16:35
SpamapSSo I am adding debug logging around, and the keys are loaded by the parser.. not sure why webapp later reports they don't have that attribute16:40
SpamapShm that looks like a driver project model object, not a config object.16:42
SpamapSoh no it's even weirder16:47
SpamapSso, that .pem.pub is just a bug in the tools script I think16:47
SpamapShttp://127.0.0.1:8001/GoDaddy/keys/gd-github/cloudplatform/project-config.pub works16:48
SpamapSwith GoDaddy being the tenant, and gd-github being the source16:48
leifmadsenpabelanger: jeblair: back from lunch16:48
SpamapSoh no actually I'm just dumb, ok, the .pem thing was a red herring from a copy-paste-type-o16:49
SpamapSjeblair: all is well. Sorry for the confusion. We do have a 500 that should be a 404, so I'll submit a small patch for that.16:50
SpamapSUgh, and I think I found a DoS bug in the /keys target too17:02
*** openstackgerrit has quit IRC17:03
SpamapSjeblair: https://github.com/openstack-infra/zuul/blame/458ab7bc90ecd3a0173831f81b351426c6fe302a/zuul/driver/gerrit/gerritsource.py#L49-L52 <--this lets anybody who can hit /keys fill up your memory with project objects.17:04
SpamapSwe need some kind of "get project but only if it actually exists" ;)17:04
*** openstackgerrit has joined #zuul17:06
openstackgerritClint 'SpamapS' Byrum proposed openstack-infra/zuul feature/zuulv3: Improve error handling in webapp /keys  https://review.openstack.org/51705317:06
* SpamapS just tries removing the 'add if not found' to see what breaks17:09
SpamapSoh doh, like, everything17:10
openstackgerritDavid Shrewsbury proposed openstack-infra/nodepool feature/zuulv3: Add additional launcher logging  https://review.openstack.org/51705717:12
ShrewsI'd like to get this in ASAP, please ^^^17:12
pabelangerlooking17:13
pabelanger+217:13
* SpamapS almost done with patch to shore up getProject problems17:17
*** hashar is now known as hasharAway17:35
*** hasharAway is now known as hasharDinner17:48
jeblairShrews: both lgtm18:00
openstackgerritClint 'SpamapS' Byrum proposed openstack-infra/zuul feature/zuulv3: Add BaseSource.getProjectReadonly and refactor  https://review.openstack.org/51706718:06
jeblair2017-11-01 18:08:20,993 ERROR zuul.GithubConnection: No installation ID available for project leifmadsen/dummy-commits18:10
jeblairSpamapS: we added an app to the leifmadsen org/account/whateveryoucall it to apply to all projects18:10
jeblairbut still got that error18:10
jeblairSpamapS: any idea what could cause that?18:10
openstackgerritMerged openstack-infra/nodepool feature/zuulv3: Use >= in instance count comparison to max-servers  https://review.openstack.org/51698818:10
openstackgerritMerged openstack-infra/nodepool feature/zuulv3: Add additional launcher logging  https://review.openstack.org/51705718:10
SpamapSjeblair: did you wait 5 minutes? Because I don't trust github's API anymore. ;)18:11
leifmadsenok :)18:11
leifmadsenno... we didn't wait maybe long enough...18:12
SpamapSIt's like eating before swimming.18:12
SpamapSIt may be a myth18:12
leifmadsenI love doing that!18:12
SpamapSbut .. might as well wait and see if it helps. ;)18:12
SpamapSin all seriousness, I'm not sure why that doesn't work.18:12
SpamapSI have been relegated to github enterprise, so I don't get to use apps.18:12
openstackgerritDavid Shrewsbury proposed openstack-infra/nodepool feature/zuulv3: Unpause a declined request  https://review.openstack.org/51706818:13
Shrewsjeblair: pabelanger: another issue i noticed ^^^18:13
jeblairSpamapS, jlk, tobiash, leifmadsen: i'm looking at the code: https://git.openstack.org/cgit/openstack-infra/zuul/tree/zuul/driver/github/githubconnection.py?id=feature/zuulv3#n51618:17
jeblairthat's where the error originates18:17
jeblairbut i can't see how we're expected to have an installation key at all18:17
jeblairit kind of looks like that's only going to work *after* zuul has gotten an event from the project18:19
SpamapSjeblair: looks like it builds installation_map on events18:19
jeblairwhich is going to be hard at startup18:19
SpamapSagreed18:19
SpamapSjeblair: we may need to keep that state on disk.18:19
pabelangerjeblair: oh18:20
pabelangerwhat version of gitpython are you using?18:20
leifmadsen0.9.318:20
leifmadsenI think18:20
SpamapSjeblair: so as a test of that theory, try reinstalling the app :)18:20
leifmadsenwait, that was before, let me check18:20
pabelangerrr18:20
pabelanger1 sec18:20
jeblairSpamapS: while scheduler is running, presumably18:20
* jlk tries to catch up18:20
SpamapSjeblair: yeah18:20
leifmadsen1.0.0a418:20
leifmadsenpabelanger: ^^18:20
pabelangerleifmadsen: you need github3.py from master18:21
leifmadsenof course I do18:21
jlkI'm really sad they haven't released a new version yet18:21
jlkalso tempted to stop waiting for graphql to be available to apps, and just rip out github3.py all together18:21
pabelangerleifmadsen: I had issues installing it with pip for some reason, and it fell back to download from pypi18:21
jeblairpabelanger: yeah, i think the same thing happened to us, but we've re-installed from master now18:24
pabelangercool18:24
jeblair1.0.0a4 is what zuulv3.o.o reports too, so i think that's good18:24
jeblairSpamapS: hrm.... the trick about your suggestion is that we can't get past the initial startup, so zuul is wedged18:25
jeblairokay, we are seeing this in openstack:18:26
jeblair2017-11-01 14:24:38,161 ERROR zuul.GithubConnection: No installation ID available for project gtest-org/ansible18:26
jeblairso, somehow it's possible to get past this :)18:27
jeblairhrm, i wonder if this is a non-fatal error18:29
jlkYeah I think you can get past it, if you don't get an installation ID I think it falls back to API key auth, or it drops the event. I'm not sure which18:29
jeblairwe're getting this on 'getProjectBranches'18:30
jlkhrm, I don't like calling functions in a function argument.18:31
jlk(looking through this code)18:31
jlkso I guess it's a question of what github.login() does if it gets a token='' value18:31
jeblairyeah, it actually looks like we get past this just fine18:32
jeblairso maybe the bug here is in log severity :)18:32
jlkas others stated, the event itself is supposed to have an installation_id key within it, and when we handle said event, we put it into the installation map18:32
jeblairjlk: right.  so this error should go away once events start happening.  but on startup, we create a github object to get the project branches18:33
jlkOoooh okay. yeah that's interesting. Probably okay, it just means we'll hit a different API limit18:34
jeblairbut that will mean we have a lower rate limit?18:34
jeblairya :)18:34
jeblairso we probably do want to do what SpamapS suggested and save these on disk to minimize having to rely on this18:34
jlkAre we hitting the limit at start up?18:34
jeblair2017-11-01 18:31:55,464 DEBUG zuul.GithubConnection: GitHub API rate limit remaining: 54 reset: 150956330118:34
jlkah okay18:34
jeblairthat's what i just saw18:34
jlkI guess that would drain faster as we add more github based projects18:35
jeblairso probably okay in rare cases, but it won't scale too big18:35
jlkright, I don't think we thought about the start up case, where we iterate to see branches18:35
jeblairokay, 52 more chances to get this right before lunch :)18:36
SpamapSPretty easy cache to maintain.18:36
jeblairSpamapS: ++18:36
jlkit is, opens the door to other caches, like the cace of repo data18:36
jlkfor both github and gerrit18:37
jlkwhere's the call to get the branches?18:37
jeblairjlk: getProjectBranches is the method... happens from configloader18:38
jlkah blah18:39
jlkso that's within an iteration of 'for project in untrusted_projects'18:39
jlkWith GraphQL we could do a neat thing where we do one query for all the branches of all our repos we want to know about (maybe some iterations if the list is larger than allowed in one query), but we'd have to know all the projects to query for.18:40
openstackgerritClint 'SpamapS' Byrum proposed openstack-infra/zuul feature/zuulv3: Do not add invalid projets via the /keys API  https://review.openstack.org/51707818:41
SpamapSjeblair: ^^ DoS bug fix18:41
SpamapSjlk: that sounds pretty nice, and we should know all the projects to query for at startup and reconfig.18:42
jlkSpamapS: we do, it'd just require some code shuffling, do to one thing for github driver and another for all others18:42
jlkso, there is an API call we can hit to get a list of all our app installations.18:44
jlkWe could maybe use that to prime the map at startup18:44
* jlk ponders how that would work18:45
jlkjeblair: SpamapS: if, at onLoad, we auth as the app, which will allow us to get a listing of our installations, we then use that listing to prime the installation_map, so that when we go to get branches for the repos we've likely already got the key in the map, thus we'll auth as the installation. Reasonable?18:50
jeblairjlk: ooh yeah, that sounds ideal18:54
jlkI'll whip up a patch18:55
*** sambetts is now known as sambetts|afk19:02
*** openstackgerrit has quit IRC19:03
* jlk just spotted some stuff that will need to change once apps are supported in GHE19:07
jlkour current apps code is hard coded for github.com19:07
*** openstackgerrit has joined #zuul19:11
openstackgerritMerged openstack-infra/zuul-jobs master: Persist iptables rules  https://review.openstack.org/51394319:11
*** hasharDinner has quit IRC19:31
leifmadsenjlk: oh really? in theory there <github_connection>.server value should provide you a place to override "github.com"19:35
jlkyeah, except there is a hardcoded URL for some things that github3.py doesn't expose19:35
leifmadsengotcha19:35
*** hashar has joined #zuul19:36
*** electrofelix has quit IRC19:43
jlkwell this is interesting. Somehow I fucked up my deploy in that zuul can't contact the gearman it launched19:57
leifmadsenthat sounds pretty neat...20:20
jlkoh got it20:21
jlkstupid. Forgot there's a bug in minikube in that a container cannot reach a service that's hosted on itself.20:21
jeblairjlk, SpamapS, tobiash: we still have the issue where if you turn on branch protection, you can't approve your own change, right?20:36
jlkIf you turn on BP and require a review yes20:37
jlkas GH will not (yet) allow one to review ones own PR20:37
jeblairoh, heh, so you can turn on branch protection, but not enable any protections?20:37
jlkthere are multiple protections20:38
jeblairyeah, i see 4: review, status, push, and "include admin"20:38
jlkyou can require status, you can limit who can commit (regardless of reviews)20:38
jlkhuh, bonnyci.org is failing to load. that's a github pages thing I thought20:39
clarkb it lacks dns records20:40
jlkSpamapS: hey there, you're hte owner for bonnyci.org, did something happen to the DNS for it?20:40
jlkjeblair: https://github.com/BonnyCI/bonnyci.org/blob/master/lore/end_users/setup/README.md#merge-options the last two sections here are of interest20:41
jlkoh except that doesn't cover PR reviews. Derp20:42
jlkblaahhhh. An installation may be a specific user, not necessarily a specific repository.20:45
* jlk thinks more20:45
jeblairjlk: well, my immediate concern was for leifmadsen's quickstart -- where we wanted to be able to submit a pr to a repo and have zuul run a check.20:46
leifmadsenI think we've worked around the issue though by making things less restrictive :)20:46
jeblairyeah, i think having branch protection on, but none of the extra restrictions will work for this20:46
leifmadsenI'll test real quick to confirm20:46
jlkwhat's the point of having BP on but no extra? what is the protection at that point?20:47
jeblairthat lets us set "exclude-unprotected-branches" in the zuul config, which means we can push up a commit to a 'working' branch which is unprotected, and zuul will ignore that.20:47
jeblairthen we can make a PR from 'working' to master20:47
jeblairjlk: apparently with branch protection alone, it blocks force-push and delete20:47
jlkah, right.20:48
jeblairthat seems like a pretty sensible base level of protection20:48
jlkForgot about the exclude thing20:48
jlkI never make dev branches on a repo that would be getting CI done20:48
jeblairyeah, i wouldn't in prod, but it's really handy for single-user bootstrapping20:49
leifmadsen++20:49
leifmadsenjeblair: confirmed, all is well in the world now!20:49
jeblairyay20:49
leifmadsenI even got it to write a fail msg :D20:50
jeblairhttps://github.com/leifmadsen/dummy-commits/pull/220:50
jeblairnice :)20:50
leifmadsen(I forgot to rebase before commit)20:50
leifmadsenthis is pretty sweet20:50
jeblairthat's a PR from an unprotected branch (so zuul is ignoring it), to master (protected, and zuul is watching it)20:50
leifmadsenyea, that's pretty awesome20:51
leifmadsenI can see some use-cases for that already20:51
pabelangercool20:51
jeblairjlk, tobiash, SpamapS: i have noticed that we perform reconfigurations when something is pushed to an unprotected branch.  zuul still doesn't load configs from the branch, but it does the reconfig anyway.  we can optimize that case and have zuul ignore a push event from an unprotected branch (if it's ignoring unprotected branches)20:51
leifmadsenso next up is some sort of "cowsay" ansible play that mostly does nothing, but at least runs on a remote node I guess20:51
leifmadsenthis is why writing documentation is awesome :)  look at all these bugs you can to fix!20:52
leifmadsens/can to/get to20:52
jeblair++20:52
leifmadsen"awesome"20:53
jlkjeblair: sounds reasonable. Can you toss that on storyboard, and I'll pick it up when ready?20:53
jeblairjlk: yep20:53
leifmadsenok, end of work day here basically, and kids are home, so I'm out for a bit20:53
leifmadsenjeblair: thanks again for all the time20:53
jeblairleifmadsen: thanks for all the documenting :)20:53
leifmadsenI haven't even started the documenting part! lol20:54
leifmadsenI'll see if I can at least get some of the quickstart stuff updated to look a bit more sane20:54
leifmadsenexisting quickstart stuff*20:54
*** dkranz has quit IRC20:56
jeblairjlk: https://storyboard.openstack.org/#!/story/200127020:56
jlkthanks!20:57
SpamapSjlk: Name Server: NS1.SOFTLAYER.COM20:57
SpamapSName Server: NS2.SOFTLAYER.COM20:57
SpamapSjlk: guessing they finally cleaned that one up :)20:57
jlkhah20:58
SpamapSI'll fix the GH pages A record20:58
jlkjeblair: okay, it appears we'll have to first get a list of installations, then for each installation, auth and get a list of repositories (projects) said installation covers.21:09
jeblairokay, finally sent out the roadmap email i've been trying to send since monday :)21:47
jeblairit is looking like 80 simultaneous builds for one of our executors is the sweet spot.  so that's one vCPU for every 10 simultaneous builds.22:00
jeblairif folks haven't seen it recently, http://grafana.openstack.org/dashboard/db/zuul-status  has useful and accurate information once again22:04
tobiashjeblair: I think I can look into the unprotected branch reconfig next week22:05
jeblairtobiash: okay, there's a story above ^ i'll let you and jlk negotiate for it :)22:06
jeblairthanks :)22:06
SpamapSoh neat22:11
* SpamapS likes t3h graphs22:11
openstackgerritJesse Keating proposed openstack-infra/zuul feature/zuulv3: Prime github app install map on connection load  https://review.openstack.org/51712122:29
jlkjeblair: SpamapS: https://review.openstack.org/517121 is the code to prime the mappings onLoad. Still needs tests, but I wanted y'all to see the code first.22:31
*** Guest7 has joined #zuul22:33
*** Guest7 has quit IRC22:37
jeblairjlk: ++ from a high level, that looks reasonable22:56
jlkokay, where the heck do we trigger a reconfigure...22:56
openstackgerritClint 'SpamapS' Byrum proposed openstack-infra/zuul feature/zuulv3: Add BaseSource.getProjectReadonly and refactor  https://review.openstack.org/51706722:56
openstackgerritClint 'SpamapS' Byrum proposed openstack-infra/zuul feature/zuulv3: Do not add invalid projets via the /keys API  https://review.openstack.org/51707822:56
jeblairjlk: it's also now the tiniest little jump to supporting "automatically add all installed repos as untrusted-repos" which would be a pretty good github UX22:56
jeblairjlk: in a test?  you can call 'self.sched.reconfigure(self.config)'22:57
jlkno, I meant where in the zuul code does it decide that an event should cause a reconfigure22:57
jeblairjlk: that will do a 'full' reconfiguration (no cached data)22:57
jeblairjlk: oh heh22:57
jeblairjlk: https://git.openstack.org/cgit/openstack-infra/zuul/tree/zuul/scheduler.py?id=feature/zuulv3#n84622:58
jlkjeblair: re tiny jump, yeah that would be pretty neat, but it would only work on start up? or on driver reload events. maybe?22:58
jeblairjlk: i think there's a registration hook we're ignoring right now?22:59
jlkahhhh, 'branch_update' is the thing.22:59
jlkjeblair: oh true, we do ignore a new install happening event, because we thought the app owner (eg bonnyci) should handle that instead of zuul, but maybe not!22:59
jlk(branch_updated that is)23:00
jeblairyeah, i think either is a reasonable choice depending on circumstances23:00
jeblairand, i mean, we can also do that for gerrit, but haven't yet.  :)23:00
jlkI'll cook on that idea for a bit23:00
jlkre branch_updated, we get a 'push' event from github, and that event has all the details we need (thus far) to generate the event. We don't query the API for any more details, such as the repo branch protection status. Would have to add another query here, more API use.23:02
SpamapSI would love it if install of app meant that the repo was added.23:08
SpamapS(once I have apps)23:08
SpamapSAnd maybe some rules for sorting them into tenants or white/blacklisting repos that misbehave.23:08
jeblairjlk: we do have a cached list of branches in Project.unparsed_branch_config.  we should be able to consult that to know to ignore a push to any change not in there, as long as we detect creating a new branch as something separate.23:11
jeblairer, "ignore a push to any *branch* not in there" rather23:12
jeblairi'm just doing word association at this point in the day23:12
jlkheh23:12
jlkyeah, I'm typing some notes into the story, rather than coding it.23:13
jlkStory updated with some notes23:25
*** hashar has quit IRC23:27
jamielennoxanyone here coming to sydney?23:31
SpamapSwow.. good job Mac OS being ancient23:35
SpamapS$ openssl version23:35
SpamapSOpenSSL 0.9.8zh 14 Jan 201623:35
SpamapSjamielennox: sadly I'm out for this one. :(23:35
SpamapSwas looking forward to seeing .au but I couldn't justify it given new position.23:35
jeblairjamielennox: i am, mordred, clarkb, fungi, jhesketh at least.  ianw is organizing an infra evening thing if you want to join: http://lists.openstack.org/pipermail/openstack-infra/2017-October/005653.html23:35
jamielennoxunfortunately i don't expect many people23:35
jeblairoh and pabelanger23:36
jamielennoxthat's useful, i should be able to get along to that23:37
jeblairyay!23:37
clarkbI'm waiting for my plane to show up so I can board23:37
SpamapSjeblair: so, FYI, encrypt_secret doesn't work on OS X23:39
SpamapSbecause the OpenSSL version is so old 'n busted23:39
* SpamapS has fix23:41
jeblairSpamapS: wow.  thanks.   yeah, my intent is for that to work anywhere (that's why it's super simple py27 builtins, and what i thought was pretty unexciting openssl :|)23:46
jlkat some point I think I brewed myself a newer openssl23:49
openstackgerritClint 'SpamapS' Byrum proposed openstack-infra/zuul feature/zuulv3: Make encrypt_secret.py work with OpenSSL 0.x  https://review.openstack.org/51713323:50
openstackgerritJesse Keating proposed openstack-infra/zuul feature/zuulv3: Prime github app install map on connection load  https://review.openstack.org/51712123:50
SpamapSjeblair: yeah, I like the work-anywhere of it. :)23:50
jlkoh turns out that the installation ID stuff and login via app isn't covered by any tests right now at all, so not oging to block on that to get this in23:52
jlkalthough now I"d love some ideas on how to actually test it :/23:52

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