Tuesday, 2017-08-01

*** harlowja has quit IRC00:38
*** xinliang has joined #zuul01:40
*** xinliang has quit IRC01:40
*** xinliang has joined #zuul01:40
*** https_GK1wmSU has joined #zuul02:08
*** https_GK1wmSU has left #zuul02:08
*** harlowja has joined #zuul02:22
*** harlowja has quit IRC02:44
*** harlowja has joined #zuul03:38
tristanCfwiw, I wrote a blog post about what's new in ZuulV3: https://github.com/redhat-openstack/website/pull/101904:40
*** harlowja has quit IRC05:10
openstackgerritTobias Henkel proposed openstack-infra/zuul feature/zuulv3: Fix test_cache_hard_links when on tmpfs  https://review.openstack.org/48937705:16
tobiashSpamapS: ups... ^^^ better?05:16
*** bhavik1 has joined #zuul05:48
*** harlowja has joined #zuul05:51
openstackgerritTobias Henkel proposed openstack-infra/zuul feature/zuulv3: Improve cleanup of test disk accountant  https://review.openstack.org/48947705:52
tobiashSpamapS: ^^ addresses your comments in 48936805:53
openstackgerritTristan Cacqueray proposed openstack-infra/zuul feature/zuulv3: Add max-nodes-per-job tenant setting  https://review.openstack.org/48948105:56
openstackgerritTristan Cacqueray proposed openstack-infra/zuul feature/zuulv3: Add max-nodes-per-job tenant setting  https://review.openstack.org/48948105:58
tobiashtristanC: nice approach to the max-nodes-per-job06:08
openstackgerritTobias Henkel proposed openstack-infra/zuul feature/zuulv3: Don't ignore inexistent jobs in config  https://review.openstack.org/48875806:11
openstackgerritTobias Henkel proposed openstack-infra/zuul feature/zuulv3: Don't ignore inexistent jobs in config  https://review.openstack.org/48875806:12
*** bhavik1 has quit IRC06:27
openstackgerritTobias Henkel proposed openstack-infra/zuul feature/zuulv3: Use zuul attributes in semaphore documentation  https://review.openstack.org/48949906:40
*** harlowja has quit IRC06:51
*** yolanda__ has joined #zuul07:14
*** yolanda__ is now known as yolanda07:15
openstackgerritTobias Henkel proposed openstack-infra/zuul feature/zuulv3: Use zuul attributes in nodeset section  https://review.openstack.org/48950607:16
SpamapStobiash: excellent07:29
*** rcarrillocruz has quit IRC07:45
*** rcarrillocruz has joined #zuul07:45
openstackgerritTristan Cacqueray proposed openstack-infra/zuul feature/zuulv3: Add max-nodes-per-job tenant setting  https://review.openstack.org/48948107:54
tristanCtobiash: thanks :-)07:54
*** clarkb has quit IRC08:04
*** hashar has joined #zuul08:06
openstackgerritTristan Cacqueray proposed openstack-infra/nodepool feature/zuulv3: Refactor provider config to driver module  https://review.openstack.org/48838408:08
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Fix test_cache_hard_links when on tmpfs  https://review.openstack.org/48937708:16
*** yolanda has quit IRC08:17
*** clarkb has joined #zuul08:17
*** yolanda has joined #zuul08:18
openstackgerritTristan Cacqueray proposed openstack-infra/zuul feature/zuulv3: Add max-nodes-per-job tenant setting  https://review.openstack.org/48948108:19
tobiashhrm, doc patch failed test_timer_smtp08:42
tobiashlooks like some gearman glitch: http://logs.openstack.org/99/489499/1/check/gate-zuul-python35/58e37a3/testr_results.html.gz08:42
openstackgerritTristan Cacqueray proposed openstack-infra/nodepool feature/zuulv3: Implement a static driver for Nodepool  https://review.openstack.org/46862409:07
openstackgerritTristan Cacqueray proposed openstack-infra/nodepool feature/zuulv3: Implement an OpenContainer driver  https://review.openstack.org/46875309:07
*** jkilpatr has quit IRC10:44
*** jkilpatr has joined #zuul11:15
openstackgerritTobias Henkel proposed openstack-infra/zuul feature/zuulv3: Make github ssl verification configurable  https://review.openstack.org/48957311:46
openstackgerritTobias Henkel proposed openstack-infra/zuul feature/zuulv3: Make github ssl verification configurable  https://review.openstack.org/48957311:48
* rcarrillocruz waves12:32
rcarrillocruzfolks, correct me if i'm wrong but i don't see a way to set secgroups in Nodepool. Would you accept a patch to pass thru secgroups in label basis ?12:33
*** dkranz_ has joined #zuul12:36
tobiashrcarrillocruz: I'd like support for this12:43
tobiashrcarrillocruz: would also be on the list of my use cases for hardening my deployment later12:43
rcarrillocruzyah, in my use case i'm testing different network operating systems. Some vms have netconf, which has 830 by default, some doesn't12:44
rcarrillocruzsome have http/https management interfaces12:44
rcarrillocruzi dislike having a mix of ports in default12:44
openstackgerritMerged openstack-infra/nodepool feature/zuulv3: Move the fakeprovider module to the fake driver  https://review.openstack.org/48838313:24
SpamapSrcarrillocruz: I'd think any valid parameters for shade would be accepted.14:11
mordredSpamapS, rcarrillocruz: there are a few shade parameters we should disallow because they'd be bonghits in that context - but in general I believe I agree14:24
rcarrillocruzYeah , not overexpose all params, but secgroups seems something a bunch of folks would like14:24
rcarrillocruzWill hack on it14:25
clarkbI wouldnt do it per label though14:42
clarkbit should be on the provider specific instamce description14:43
clarkbsinc different providers may have different names completely out of our control14:43
SpamapSyeah don't make it a nodepool concept :)14:43
tobiashhi15:33
dmsimardOi, release candidate of ara 0.14 (with py3 support) is out https://github.com/openstack/ara/releases/tag/0.14.0rc215:33
tobiashI have a concept question about possibilities of protecting the project config from broken projects15:34
dmsimardmordred: ^ should be able to git+https://git.o.o/openstack/ara@tag that into zuul v3 to see if it breaks stuff15:34
tobiashlets say the owner of an untrusted project pushed some broken (e.g. syntax error) zuul.yaml onto a random branch15:34
tobiash(direct push)15:35
tobiashcurrent behavior is that zuul is no longer able to evaluate any configs after that15:35
openstackgerritTristan Cacqueray proposed openstack-infra/nodepool feature/zuulv3: Implement an OpenContainer driver  https://review.openstack.org/46875315:39
jeblairtobiash: yeah.  we could automatically drop projects with syntax errors from the config15:40
tobiashjeblair: or at least the broken branches15:40
tobiashjeblair: tried out github connection today15:40
tobiashscenario is: I have a project tobiash/sandbox with a valid zuul.yaml15:41
tobiashthen I create branch broken with a patch breaking zuul.yaml and create a pull request15:41
tobiashzuul correctly complains about the syntax error15:41
tobiashbut when restarting zuul-scheduler -> config broken15:42
tobiashbecause it parses also the config of the non-protected branch 'broken'15:42
jeblairtobiash: that's a way of using github with zuul that i don't think we've anticipated.  but yeah, we could auto-drop that branch.15:43
jeblairtobiash: i would expect that projects using zuul would not do random development in the project's own branch, but rather in other repos and submit pr's from the other repos, not the main project's repo15:44
tobiashjeblair: that's probably valid for most users15:44
tobiashjeblair: but we maybe need the centralized repo workflow which simplifies working with multiple repos in parallel15:45
jeblairtobiash: how does that simplify that?15:58
tobiashjeblair: when projects need to have multiple (50+) repos layed out in the workspace we currently use git-repo to manage that15:59
tobiashjeblair: this wouldn't work with personal copies15:59
tobiashjeblair: and I know that these are too many repos and git-repo won't work with github...16:00
tobiashjeblair: so we are currently trying to find a good way to move a project like this into the github workflow16:01
tobiashjeblair: that probably implies to drastically reduce the number of repos belonging together16:01
tobiashjeblair: but I currently don't have a good solution in mind for this problem...16:02
jeblairtobiash: i don't see a reason you shouldn't have as many repos as you want.  i'm not familiar with what github tools are available, but a tool like git-repo which clones 50 projects from a central location and then pushes to user versions of those projects seems practical.16:04
jeblairtobiash: put another way, i think the workflow of having a read-only master repo which only merges pull requests from other repos is feasible, regardless of the number of repos involved.16:05
tobiashjeblair: yes, that depends on the tooling16:10
tobiashjeblair: I still have the hope I can push this project towars less loosely coupled repos16:10
jeblairtobiash: that's your decision of course -- but zuul is designed to support *lots* of loosely coupled repos, so i want to make sure there isn't any limitation there.  however, it's also designed to support gating, so the further you get from a central, gated project the more likely you're going to run into areas where it doesn't work as well.16:12
jeblairtobiash: so, while we can add the protection against broken branches, having broken branches at all is going to be annoying or painful regardless.  so better to try to avoid them in the first place.16:13
mordreddmsimard: fwiw - there is a pre-release pipeline in zuul that you can put on ara so that it'll publish pre-release things to pypi too ... modern pip won't intsall pre-release versioned things unless they are explicitly requested, so it's safe to do so16:13
dmsimardmordred: orly ? I always thought that pip would pick up the rc's due to higher NVR16:13
mordrednope16:16
mordredthat got fixed a few years ago16:16
tobiashjeblair: hrm, that sounds like a lot of work for tooling, but I agree that this would be probably the cleanest solution16:16
mordreddmsimard: if it's a proper pre-release version, you either have to give pip the --pre option or you have to explicitly request a prereleaes version16:17
dmsimardmordred: it's not something magically handled by pbr ?16:17
* dmsimard loves pbr black magic16:18
mordreddmsimard: so like if you do "pip install -U 'ara>=0.14.0rc2'" and then release an rc3, it'll pick it up - but if you just do "pip install -U 'ara>=0.13'" it will not pick up any of the 0.14 preleases16:18
mordreddmsimard: it's not - this is base pip functionality now :)16:18
dmsimardokay, TIL16:18
tobiashjeblair: for the self protection of branches, it might be easier to be able to limit the branches in the tenant config16:28
jeblairtobiash: that seems like a fine idea.16:29
tobiashjeblair: with this we could limit the configloader to the protected branches and support both, shared and forking workflows16:29
tobiashjeblair: and regarding project owners force pushing defects into their projects: I think this could be solved by using tenants more fine granular16:30
tobiashjeblair: I think (hope) that broken configs just affect the tenant(s) referring the broken project16:31
jeblairpabelanger: what do you make of this error? http://logs.openstack.org/09/489409/4/check/tox-linters/d900252/job-output.txt.gz#_2017-08-01_01_35_40_89039516:36
pabelangerjeblair: looks like an issue with role path for ansible-lint16:37
pabelangerzuul_console seems to be missing16:37
mordredzuul_console is in the zuul module path - which we're probably not running ansible-lint with16:38
jeblairpabelanger: did we accidentally approve a change that broke that?  (my change doesn't touch that afaik)16:38
pabelangermaybe16:38
pabelangerand it wasn't reported because github thing16:39
pabelangerlet me look quickly16:39
pabelangerjeblair: left comment, we need to install zuul in test-requirements.txt16:40
pabelangerotherwise, we don't have zuul_console in our path16:41
jeblairpabelanger: oh, *that's* why that was there, thank you.16:42
jeblairpabelanger: i thought it had been added for some other reason.  i will update my patch to put it back and leave a comment for why it's there16:42
openstackgerritJames E. Blair proposed openstack-infra/zuul-jobs master: Switch to using zuul-sphinx  https://review.openstack.org/48940916:44
*** hashar has quit IRC16:44
pabelangerjeblair: thanks, I should have left a comment16:45
jeblairpabelanger: i should have remembered.  :)16:45
jlko/16:50
tobiashjlk: when using github, do I have to configure something other than the webhook in the project?17:06
jlktobiash: there are two ways to configure17:06
tobiashjlk: in my test with github enterprise zuul comments on the pull request, but I don't see any flag17:07
jlkone is a webhook + a secret + using the API key of a user with write access17:07
jlkthe other is an "App" install, which is a github App, that you locally feed the App key into zuul configuration, and the repository in question has to "install" the app for their repo.17:07
jlktobiash: what "flag" are you expecting?17:08
tobiashjlk: I've set status: 'success' in the reporter section of the check pipeline17:08
tobiashjlk: so I expect to see a 'label'17:08
tobiashjlk: probably a dumb question as I'm new to github workflows17:09
jlkstatus != label17:09
jlkstatus is a bit of metadata set on the hash sum17:09
jlkone sec17:09
jlkSee https://github.com/BonnyCI/hoist/pull/43217:09
pabelangermordred: speaking of github, did you want to update openstack-zuul to use SSL without validation17:09
jlkthere's a couple statuses set, check_github has a green status17:10
tobiashjlk: I'll probably have to enable branch protection before seeing the status17:11
jlkI don't think so17:12
jlkstatus can be set whether branch protection is enabled or not17:12
jlkThe API key you've given zuul, does it have write access to the repository in question?17:12
jlkHave you checked the scheduler logs to see if it attempted to report on the pull request?17:13
tobiashjlk: ok, added the zuul users to the collaborators, and now I have the following in the scheduler log17:19
tobiashjlk: http://paste.openstack.org/show/617154/17:19
jlkthat's... weird17:21
tobiashjlk: do I have to define a status somewhere?17:21
jeblairread docs!17:22
jlkno, there's always just the 3 options for status17:22
jeblairtobiash, jlk: https://docs.openstack.org/infra/zuul/feature/zuulv3/admin/drivers/github.html17:22
jlkhrm, that sounds like an oauth issue17:22
jeblairtobiash, jlk: please make sure those are correct :)17:23
jlkthe status reporter is correct17:23
jlktobiash: can you fully stop and fully start zuul again? Make sure there isn't a duplicate oath token somewehre?17:24
dmsimardpabelanger: btw I'm flipping the switch for nodepool boot from volume on review.rdo, I'll let you know how it goes17:27
tobiashjlk: stopped scheduler, waited 2min, started scheduler17:27
tobiashjlk: the issue persists17:27
jlkawesome.... I hope it's not something specific to GHE. What version is your GHE?17:28
tobiash2.9.517:28
pabelangerdmsimard: cool17:30
jlktobiash: huh. A bunch of versions old, but only a few months old.17:32
tobiashjlk: yepp, hoping it will be a newer version soon17:32
tobiashjlk: what access rights are needed for the access token?17:33
jlk"code" or repo:status17:33
jlkhttps://developer.github.com/apps/building-integrations/setting-up-and-registering-oauth-apps/about-scopes-for-oauth-apps/17:34
jlkoh wait, that's uh, different17:34
dmsimardpabelanger: so far so good, seeing new VMs with volumes17:35
tobiashjlk: now I've activated all but still the same error17:35
jlkwhat version of github3.py do you have?17:35
mordredpabelanger: on it17:37
tobiashjlk: c82e90e5 from branch develop17:38
tobiashlooks like the latest in develop17:39
openstackgerritMerged openstack-infra/zuul-jobs master: Switch to using zuul-sphinx  https://review.openstack.org/48940917:39
jlkdamn I don't see any recent changes there that would make that a problem17:39
mordredpabelanger: openstack-zuul in github is now configured to use ssl but not verify17:40
jlktobiash: what if you do: status: success17:44
jlknot in quotes17:44
tobiashjlk: trying17:44
jlkmy life config uses it without quotes.17:45
jlkhttps://github.com/j2sol/project-config/blob/master/zuul.yaml17:45
tobiashjlk: ok, what's interesting is if zuul is not collaborator: comment, but no status, if zuul is collaborator: nothing17:47
jlkwhaaat17:47
jlkwhat level of collaborator is it?17:47
tobiashjlk: the quotes didn't change anything17:47
jlkfffff17:47
tobiashin the project settings, there is no level I can change there (Push access to the repository)17:48
tobiashadding now the comment: true (which is missing in my pipeline)17:48
tobiashhm, still the same17:50
tobiashI should probably first try curl17:50
pabelangermordred: thanks17:53
*** dmsimard is now known as dms17:54
*** dms is now known as dmsimard17:55
tobiashjlk: you probably won't believe it17:56
tobiashjlk: I found the reason....17:56
tobiash...17:56
tobiashjlk: the pipeline description...17:56
tobiashjlk: you don't have one17:56
tobiashjlk: I have a multiline pipeline description, which broke that thing17:57
*** dmsimard is now known as dms17:59
*** dms is now known as dmsimard17:59
*** dmsimard is now known as dms18:02
jlkooooh right, huh.18:03
jlkwe grab the description? I thought we just grabbed the pipeline title.18:03
*** dms is now known as dmsimard18:03
jlkoh we do18:03
jlkcontext is the pipeline name, but the description is the description. Guess that needs some protection against multiline?18:04
tobiashjlk: have to figure out if it's multiline or some special chars18:05
jlkokay18:05
jlkyeah the API says it just takes a "string"18:06
jlk:/18:06
*** dmsimard is now known as dmoreaus18:07
*** dmoreaus is now known as dmsimard18:07
jeblairjlk, tobiash: maybe the github driver should only use the first line if it's multiline.  that way we still get self-documenting pipelines.18:08
jeblairbut can pull out a "summary" line18:08
jlkyeah, that would need documentation alright. Or convert new lines to \n? not sure how it would appear in the github UI18:11
*** EmilienM is now known as emacchi18:14
*** emacchi is now known as EmilienM18:14
tobiashlooks like the length of the string18:17
tobiashdocumentation says 1024 bytes, but 200 chars are already too much18:17
jlkwhere did you see a 1024 byte limit?18:24
tobiashjlk: ups, forgot to paste the link: https://developer.github.com/v3/repos/statuses/18:25
jlkoh haha18:25
jlkI was already on that page, just glossed over that part.18:26
tobiashjlk: ok, the limit which works is 140 chars18:26
jlkbasically we could truncate. How many bytes is 200 chars?18:26
jlk(how does one even measure that in python)18:26
clarkbjlk: the answer is it depends :)18:26
jlk:(18:26
clarkbjlk: utf8 is variable width from one to four bytes per character18:26
jlkugh.18:27
jlkand we'd need to know what encoding github is using on the backend18:27
jlkugghhhhh18:27
tobiashwell these 140 chars limit was with just aaaaaaaaaaaaaa...18:28
tobiashso I don't see any method which would translate 140 equal chars to 1024 bytes18:28
pabelangerwoot18:29
pabelangerhttp://zuulv3.openstack.org/keys/github/gtest-org/ansible.pub18:29
tobiashmaybe just a bug in the docs?18:29
tobiashpabelanger: yay18:29
pabelangerhttp://zuulv3.openstack.org/keys/gerrit/openstack-infra/zuul.pub errors18:29
pabelangerERR_CONTENT_LENGTH_MISMATCH what I get in chrome18:30
pabelangerneed to debug that still18:30
tobiashjlk, jeblair: what do you think about separating the pipeline description from the status description?18:35
tobiashjlk, jeblair: when reading it feels a bit odd like "Newly uploaded patchsets enter this pipeline to receive an initial vote. For running a build again, add a comment 'recheck'."18:36
jlkas in let the user define it at the status:  block?18:36
tobiashas a status description in github18:36
tobiashjlk: possibly18:36
tobiashI think pipeline heading <-> github status description could be different texts18:37
jlkcould be. I honestly haven't seen many descriptions in use18:39
jlkI think Travis uses a description like "The Travis CI build is in progress"18:39
jlkor "The Travis CI build failed"18:39
tobiashjlk: yes, which is completely different than "When a commit is tagged as a release, this pipeline runs jobs that publish archives and documentation."18:40
jlkWe could do something like that.18:40
tobiash(taken from zuulv3.o.o)18:40
jlkCould you write up a quick story on storyboard and I'll pick it up after lunch?18:42
openstackgerritPaul Belanger proposed openstack-infra/zuul-jobs master: WIP: Update tox-tarball to use tox role  https://review.openstack.org/48970518:43
openstackgerritPaul Belanger proposed openstack-infra/zuul feature/zuulv3: Use py35 tox envlist for documentation  https://review.openstack.org/48970718:45
openstackgerritPaul Belanger proposed openstack-infra/zuul feature/zuulv3: Use py35 tox envlist for documentation  https://review.openstack.org/48970718:45
*** jkilpatr has quit IRC18:47
tobiashjlk: like this https://storyboard.openstack.org/#!/story/2001138 ?18:49
jlksure. I may re-word it a bit as a problem statement on status length. The thrust of the work is to stop using pipeline description as the status description.18:50
openstackgerritPaul Belanger proposed openstack-infra/zuul-jobs master: WIP: Update tox-tarball to use tox role  https://review.openstack.org/48970518:56
*** jkilpatr has joined #zuul18:58
openstackgerritPaul Belanger proposed openstack-infra/zuul-jobs master: WIP: Update tox-tarball to use tox role  https://review.openstack.org/48970519:06
tobiashjlk: so now check and gate are triggered and run :)19:20
openstackgerritDavid Shrewsbury proposed openstack-infra/zuul feature/zuulv3: Rename Node.hold_reason to 'comment'  https://review.openstack.org/48971719:20
tobiashjlk: thanks for your help19:20
tobiashjlk: now the merge doesn't work, but I have to figure out that tomorrow19:21
*** hashar has joined #zuul19:21
openstackgerritPaul Belanger proposed openstack-infra/zuul-jobs master: WIP: Update tox-tarball to use tox role  https://review.openstack.org/48970519:26
openstackgerritPaul Belanger proposed openstack-infra/zuul-jobs master: Simplify run tox task  https://review.openstack.org/48755119:26
openstackgerritMonty Taylor proposed openstack-infra/zuul-jobs master: Override tox requirments with zuul git repos  https://review.openstack.org/48971919:30
mordredjeblair, pabelanger: ^^19:30
openstackgerritDavid Shrewsbury proposed openstack-infra/nodepool feature/zuulv3: Add --detail option to nodepool list command  https://review.openstack.org/48972019:30
openstackgerritDavid Shrewsbury proposed openstack-infra/nodepool feature/zuulv3: Add hold job to nodepool list output  https://review.openstack.org/48972119:30
jeblairmordred: that's story 2001136 btw19:31
mordredjeblair: neat!19:32
mordredjeblair: can required-projects go ina variant?19:32
jeblairmordred: yep.  they get dict-merged.19:33
mordredcool19:33
pabelangermordred: cool, will look shortly19:36
mordredpiddle - it doens't fully quite work - looking in to that19:39
openstackgerritPaul Belanger proposed openstack-infra/zuul-jobs master: WIP: Update tox-tarball to use tox role  https://review.openstack.org/48970519:39
*** jkilpatr_ has joined #zuul19:44
jeblairmordred: also if you could update roles/tox/README that'd be swell19:45
mordredjeblair: ++19:45
mordredjeblair: I shall - as soon as I fix it to actually work :)19:45
jeblairmordred: your priorities are all backwards! ;)19:46
*** jkilpatr has quit IRC19:46
mordredjeblair: this is frequently true19:46
openstackgerritPaul Belanger proposed openstack-infra/zuul-jobs master: DNM - testing  https://review.openstack.org/48972419:48
openstackgerritPaul Belanger proposed openstack-infra/zuul-jobs master: DNM - testing  https://review.openstack.org/48972419:53
openstackgerritPaul Belanger proposed openstack-infra/zuul-jobs master: DNM - testing  https://review.openstack.org/48972419:58
mordredjeblair, pabelanger: crappit. the tox --force-dep option doesn't work for requirements files. sigh20:05
mordredslighly different option coming20:06
openstackgerritPaul Belanger proposed openstack-infra/zuul-jobs master: DNM - testing  https://review.openstack.org/48972420:06
pabelangermordred: jeblair: actually, I have an idea. Working on example20:07
jeblairmordred: drat!20:07
mordredpabelanger: neat. is yours to just edit the requirements.txt file before running?20:08
pabelangermordred: https://review.openstack.org/#/c/489724/ was my first example using --force-dep. But you said that won't work20:09
pabelangerhttp://zuulv3.openstack.org/static/stream.html?uuid=ce3ce629c3fb4d8893762a2ac0d90dbc&logfile=console.log is job20:09
pabelangerI was then going to try pip install ~/src/git.openstack.org/openstack-infra/zuul in pre-run task20:10
mordredyah - so the thing is - we have to protect from things that areant' in the requirements files20:10
pabelanger--force-dep seem to work for test-requirements.txt20:10
mordredbecause of the openstack/requirements repo20:10
pabelangermordred: right, I think we specify which repos we want to --force-dep on, rather then looping over src dir20:11
mordred2017-08-01 20:08:43.454300 | ubuntu-xenial | Obtaining zuul from git+git://git.openstack.org/openstack-infra/zuul@feature/zuulv3#egg=zuul (from -r /home/zuul/src/git.openstack.org/openstack-infra/zuul-jobs/test-requirements.txt (line 11))20:11
pabelangerYup20:11
pabelangerI like the idea of 489724, since it works today without adding tox_use_siblings or ansible library. But requires some changes to job setup in repo20:13
jeblairpabelanger: why does force-dep work for test-requirements?20:15
pabelangerjeblair: no, just confused20:16
jeblairthere shouldn't be anything special about it, other than it's the second one on the cmdline20:16
pabelangerI was looking at the wrong stream20:16
jeblairpabelanger: oh ok.20:16
openstackgerritPaul Belanger proposed openstack-infra/zuul-jobs master: DNM - testing  https://review.openstack.org/48972420:18
mordredpabelanger: yah - so, I like tox_use_siblings because it doesn't require user-visible magic in the job definition20:18
mordredpabelanger: but I think we'll basically both just have to get a thing that works then let others decide :)20:18
pabelangermordred: https://github.com/tox-dev/tox/issues/53420:19
pabelangerseems to be a bug20:19
mordredyup20:21
mordredsorry - I should have both been more clear when I said it doesn't work and also pushed up the WIP patch I have for poking at it20:22
jeblairmordred, pabelanger: fwiw, i think the value here is having this work automatically, without needing to change things in every repo20:23
mordredyuo20:23
mordredyes20:23
pabelangerjeblair: Ya, there is value in automatic20:24
openstackgerritPaul Belanger proposed openstack-infra/zuul-jobs master: Update tox-tarball to use tox role  https://review.openstack.org/48970520:24
openstackgerritPaul Belanger proposed openstack-infra/zuul-jobs master: Update tox-tarball to use tox role  https://review.openstack.org/48970520:26
pabelangermordred: jeblair: ^ dropped our shell script for create tarball / wheels and now depends on the tox role20:27
jeblairhttps://docs.openstack.org/infra/zuul-jobs/ exists!20:28
pabelangerjeblair: excellent!20:29
SpamapSthat's pretty sweet20:40
SpamapSnow if only you could get this guy to stop chain sawing 50 feet from me... :-P20:40
openstackgerritMonty Taylor proposed openstack-infra/zuul-jobs master: Override tox requirments with zuul git repos  https://review.openstack.org/48971920:49
mordredjeblair, pabelanger: ^^ something more like that20:49
mordredbasically - let tox do an install like normal, then check to see what packages it installed, then overwrite them if there are any matching projets zuul has checked out - then actually run tox without --notest to run the tests20:51
jlkbike shed time20:52
mordredheck yes20:52
jlkdue to a bug that tobiash found today, I'm changing github reporter driver code with regard to what it sets as a description for a commit status20:53
jlkWe used to just take the pipeline description and shove it in, but that ran into length concerns (max 1024 bytes).20:53
jlkI looked at what Travis does, it sets a description like "The Travis CI build is pending" or "The Travis CI build passed"20:54
jlkWe could do similar, using the pipeline name, e.g. "check pipeline is pending"20:55
jlk"check pipeline succeeded"20:55
jlkI was trying to use the same term as the status state: pending, success, error, failure20:56
jlkbut englishing is hard. "check pipeline result success"  ?20:56
SpamapSperhaps go with more absurd choices.. "check pipeline is lobster"20:57
jlk"success, check pipeline is"20:58
openstackgerritDavid Shrewsbury proposed openstack-infra/nodepool feature/zuulv3: Add --detail option to nodepool list command  https://review.openstack.org/48972020:58
openstackgerritDavid Shrewsbury proposed openstack-infra/nodepool feature/zuulv3: Add hold job to nodepool list output  https://review.openstack.org/48972120:58
jlkso I'm stuck here, trying to think of a good way to word this, so that I can write my (failing) test, so that I can create the code to pass the test.21:00
openstackgerritMonty Taylor proposed openstack-infra/zuul-jobs master: Override tox requirments with zuul git repos  https://review.openstack.org/48971921:01
openstackgerritMonty Taylor proposed openstack-infra/zuul-jobs master: Add README for tox role  https://review.openstack.org/48975021:01
mordredjlk: what about "The Zuul {pipeline} pipeline status is {status}"21:02
mordredjlk: or just "The {pipeline} pipeline status is {status}" - so you get "The check pipeline status is pending" or "The check pipeline status is success"21:03
Shrewsavoid the englishing:   "{pipeline} status: {status}"21:04
mordredjlk: OR - put in a nice little if/elif/elif block with "if status == 'pending': msg = 'This change is pending in the check pipeline" elif status == 'success': msg = 'This change was successful in the check pipeline' ... etc21:04
jlkHrm, I think I like Shrews' suggestion most of all21:05
jlkfewer things to translate should zuul ever be translated.21:05
mordred++21:06
openstackgerritDavid Shrewsbury proposed openstack-infra/nodepool feature/zuulv3: Add --detail option to nodepool list command  https://review.openstack.org/48972021:08
openstackgerritDavid Shrewsbury proposed openstack-infra/nodepool feature/zuulv3: Add hold job to nodepool list output  https://review.openstack.org/48972121:08
pabelangermordred: left comment. I think we should consider moving that logic into tox-pre playbook, and skip adding it into the role if that make sense21:11
pabelangermordred: https://review.openstack.org/#/c/489705/7/playbooks/tox/tarball.yaml would be an example of how we could call the role twice, but using different parameters21:11
mordredpabelanger: ah - gotcha. yeah. I think we can make that work21:12
mordredpabelanger: and you're right- we don't want to do the re-install each of those times :)21:12
mordredpabelanger: update coming21:13
openstackgerritMonty Taylor proposed openstack-infra/zuul-jobs master: Override tox requirments with zuul git repos  https://review.openstack.org/48971921:21
mordredpabelanger: how about that ^^ ? (I mean, assuming it works and whatnot)21:21
jeblairmordred: i think we may also want that documented in the 'tox' job21:26
pabelangermordred: ya, the way I was thinking won't work unless we consider include_role task.  Since we cannot call a role from a role or task between roles21:27
pabelangermordred: it like makes more sense to go back to PS3, and keep logic in same role21:28
mordredpabelanger: I'm confused21:29
pabelangermordred: let me hackup an example21:30
mordredpabelanger: what is it that won't work? if we put it in the pre-playbook it'll happen before any tox invocations happen - so it should only happen once21:30
mordredand as long as you're using the tox base job, all should b fine, yeah?21:30
jeblairpabelanger: i think we can consider include_role.  i don't have a blanket -2 on it.  just don't want to build our jobs out of it exclusively.  i think a primary role including a secondary role may be a good use.21:30
jeblair(sorry if that distracts -- just wanted to put that out there)21:31
mordred(also - I agree about documenting in the job variables - sorry I missed that one :) )21:32
openstackgerritMonty Taylor proposed openstack-infra/zuul-jobs master: Override tox requirments with zuul git repos  https://review.openstack.org/48971921:41
openstackgerritMonty Taylor proposed openstack-infra/zuul-jobs master: Rename tox_command_line in docs to tox_extra_args  https://review.openstack.org/48975821:41
openstackgerritPaul Belanger proposed openstack-infra/zuul-jobs master: DNM: Override tox requirments with zuul git repos  https://review.openstack.org/48976121:45
pabelangermordred: ^ I modified your patch to better explain what I was suggesting21:45
pabelangerbut a new change-id21:45
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Docs: add a glossary  https://review.openstack.org/48927021:46
pabelangerbasic difference is we don't need to change a new role, we could reuse existing tox role but just pass in different variable21:46
pabelangerless copypasta21:46
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Docs: add a :default: argument to zuul:attr  https://review.openstack.org/48930321:48
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Use zuul attributes in semaphore documentation  https://review.openstack.org/48949921:48
jeblairpabelanger, mordred: can you explain https://review.openstack.org/487948 to me?21:48
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Remove zuul_url from merger config  https://review.openstack.org/48937821:48
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Improve cleanup of test disk accountant  https://review.openstack.org/48947721:48
*** jkilpatr_ has quit IRC21:49
pabelangerjeblair: it relates to 487551. Because we setup tox_chdir to src/{{ zuul.project.canonical_name }} in the tox job, we need to override it in 487948 otherwise we will run tox on zuul-jobs repo not openstack-infra/zuul21:50
jeblairpabelanger: what's zuul_work_dir used for?21:51
pabelangerjeblair: we still depend on it for publishing things I believe21:51
pabelangerwe could set tox_chdir to zuul_work_dir in 487551 also21:52
pabelangerand skip using src/{{ zuul.project.canonical_name }}21:52
jeblairpabelanger: basically, i'm starting to lose track of what variables we're using for what.21:53
jeblairpabelanger: 487948 is a red flag because we're setting two vars to the same value21:53
pabelangeragree, part of the issue I think is zuul_work_dir is not avaiable to all playbooks. So some are exposed to it, others are not.  But agree, it is confusing when to use it and when not too21:54
jeblairpabelanger: what is the difference between tox_chdir and zuul_work_dir?21:55
pabelangerjeblair: just a rename, I opted to tox_chdir in this case to be more inline with existing ansible task that use chdir setting21:56
jeblairpabelanger: okay, i'm not seeing the whole plan here.  maybe you could write something up in an etherpad or something to help me understand how you want to effect this change across all usages of zuul_work_dir.21:58
pabelangerjeblair: sure, the general idea was to remove the zuul_work_dir from being directly accessed from the tox role, thats main reason for creating tox_chdir. I have to test again, but I believe I was having issues overriding zuul_work_dir if it was already defined22:02
jeblairpabelanger: are you saying there's a bug?22:07
pabelangerjeblair: not a bug, just that we don't define zuul_work_dir in our inventory file. It is only scoped at the role level22:07
pabelangerso, some playbooks, won't have zuul_work_dir setup22:08
jlktobiash: still around?22:08
jeblairpabelanger: right -- roles that need it set it to the default.  it was added to a bunch of roles with essentially identical default values.22:08
jeblairpabelanger: is that a problem?22:08
*** jkilpatr has joined #zuul22:08
pabelangerjeblair: possible. I think we had zuul_work_dir defined in our inventory file at one point? In the case of the tox-py35-on-zuul it defines in the inventory file, where other jobs don't. So it gets a little confusing on how to use it22:11
jeblairpabelanger: the idea was that normally you don't define it.  our tox roles chdir to the zuul.project directory and run.  but if you wanted to cross-test, you have to define it.22:12
pabelangerjeblair: Ya, so the easier way forward would be just to rename tox_chdir back to zuul_work_dir.22:14
jeblairpabelanger: we've started renaming stuff already?22:15
mordredah - I believe there is confusoin22:16
mordredwe used to set a variable called zuul_workspace - and we decided that we did not need to set that22:16
pabelangerjeblair: ya, I decided to rename it to better fit with the other tox role variable names.22:16
jeblairpabelanger: where is it used now?22:16
pabelangerjeblair: sorry, which it?22:17
jeblairpabelanger: where is tox_chdir used now22:17
mordredwe've never set zuul_work_dir from zuul or the inventory - it was added as a default variable to a bunch of roles - for things where it made sense for the role to be operating in "the project that was triggered"22:17
pabelangerjeblair: just 487551, unmerged22:17
pabelangermordred: okay, was confusing it with zuul_workspace22:18
mordredyah22:18
mordredit's actually important to keep its name not tied to a specific role22:18
mordredbecause it gets used in multiple roles that may be in the same job22:19
mordredso the user may need to set zuul_work_dir as a paramter to a job invocation22:19
mordredand all of the roles that the job uses need to be able to pick that up22:19
jeblairpabelanger: okay, when you said the way forward was to rename it back, i thought you meant we would have to rename something.  what we're actually talking about here is *not* renaming something.22:19
pabelangerjeblair: yes, remove tox_chdir and just use zuul_work_dir22:20
pabelangerwe'll have to reserve that for all roles too22:20
mordredhttp://git.openstack.org/cgit/openstack-infra/openstack-zuul-jobs/tree/zuul.yaml#n822:20
mordredis the example of needing it22:21
mordredand/or using it22:21
pabelangermordred: right https://review.openstack.org/487948/ was how jeblair started asking about it22:21
mordredah - nod22:21
pabelangerit removed zuul_work_dir from tox role and changed it to tox_chdir22:21
pabelangerwhich mean we needed to setup a new variable22:22
pabelangerso, I can remove tox_chdir22:22
mordredI grok how we got where we are now :)22:22
pabelangermordred: jeblair: https://review.openstack.org/#/c/487551/4/roles/tox/defaults/main.yaml also is some history of rename, now that I remember22:23
mordredyah - I think what we were missing was a shared understanding of what was going on with zuul_work_dir - which in isolation on each of these patches can be easy to lose track of22:24
openstackgerritPaul Belanger proposed openstack-infra/zuul-jobs master: Simplify run tox task  https://review.openstack.org/48755122:25
pabelangermordred: right, it means zuul_work_dir will be added to a lot of defaults/main.yaml files, to get the working dir of the cloned project22:26
jeblairpabelanger: cool.  what did we decide on the zero-tests check?22:26
openstackgerritJesse Keating proposed openstack-infra/zuul feature/zuulv3: Simplify github status descriptions  https://review.openstack.org/48976722:26
pabelangerjeblair: I am working on adding that into unittest I think22:26
pabelangerjeblair: plan is to keep it22:26
jeblairok22:26
*** hashar has quit IRC22:28
mordredjlk: I love your really long pipeline name22:37
jlkhad to get creative22:37
SpamapScheckicalifragigateishexpialipostous22:39
pabelangerjeblair: do you mind helping me understand why public keys for gerrit projects in zuulv3.o.o are not loading properly22:39
pabelangerjeblair: github connection seems to work fine22:39
pabelangereg: http://zuulv3.openstack.org/keys/github/gtest-org/ansible.pub works22:40
pabelangerhttp://zuulv3.openstack.org/keys/gerrit/openstack-dev/sandbox.pub error22:41
mordredpabelanger: I don't see any errors in the log for that22:47
pabelangerya, I couldn't see anything wrong in debug logs22:47
mordredpabelanger: sandbox.pem exists on disk22:50
pabelangermordred: ya, and with correct permissions22:50
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Docs: use zuul:attr in project definition  https://review.openstack.org/48977422:55
mordredjeblair: is there a chance that _generateKeys then _loadKeys is hitting an issue with buffering somehow? and because we just added openstack-dev/sandbox.pub but gtest-org/ansible.pub was added before the previous restart is why one works and the other doesn't?22:55
jeblairmordred, pabelanger: looking22:56
mordredI mean - I expect the code in those methods to work22:57
jeblairpabelanger, mordred: has zuul been restarted since adding that project to the tenant?23:00
pabelangerjeblair: sandbox, no. but same issue exists for zuul.pub too23:00
openstackgerritMonty Taylor proposed openstack-infra/zuul-jobs master: Add README for tox role  https://review.openstack.org/48975023:02
openstackgerritMonty Taylor proposed openstack-infra/zuul-jobs master: Override tox requirments with zuul git repos  https://review.openstack.org/48971923:02
openstackgerritMonty Taylor proposed openstack-infra/zuul-jobs master: Rename tox_command_line in docs to tox_extra_args  https://review.openstack.org/48975823:02
mordredhrm. that's more vexing23:02
jeblairpabelanger, mordred: apache says that's a 500 rror23:02
jeblairpabelanger, mordred: i assume we're missing some logging config for that23:05
mordredjeblair: we don't seem to have much logging in zuul/webapp.py23:05
jeblairmordred: well, i mean i assume that paste would log an exception but we're not set up to log it23:06
mordredoh - maybe we need to add ... yah23:06
mordredwas just about to say that23:06
mordredjeblair: you doing that? if not, I will ...23:07
jeblairmordred: i'm not sure what to add23:07
mordredwell - in our test suite we do paste=INFO23:07
jeblairmordred: oh, what we should do is make the root logger also go to the main and debug logs.23:08
jeblairmordred: so yeah, 'paste' probably.  but actually, i think ^ would take care of it.23:08
jeblairwe shouldn't need a special handler for paste23:08
jeblairi'll propose a change23:09
mordredjeblair: kk23:09
jeblairremote:   https://review.openstack.org/489775 Send the root logger to debug and normal logs23:10
jeblairi'll do that manually on v3 now23:10
mordredjeblair: +223:12
jeblairmordred: zuul startup is slowed noticably by the gat jobs for al lof the ansible branches23:13
jeblairs/gat/cat/23:13
mordredjeblair: they have a non-zero number of branches don't they23:14
mordredjeblair: I really can't wait to see how long startup is on the entire corpus of openstack23:14
jeblairmordred: that didn't log an error either.  i'll add an explicit paste section.23:15
jeblairmordred: startup will go faster with 16 mergers+executors23:16
mordredjeblair: indeed23:16
jeblairmordred: 2 things: one, we shouldn't merge my root logger change23:17
jeblair(i think it needs some propogate settings to avoid logging things twice)23:18
jeblairtwo: paste isn't logging anything useful23:18
jeblair2017-08-01 23:17:01,863 DEBUG paste.httpserver.ThreadPool: Added task (0 tasks queued)23:18
jeblairis all i get when i hit that 500 error23:18
mordredjeblair: that's not particularly useful23:18
mordredjeblair: might it be webob that we want logging for?23:21
jeblairmordred: i'm pretty sure the root logger did get us all warning+ logs at least23:22
jeblairthe only problem there is it logs everything twice23:22
mordredgotcha23:22
jeblairmordred: i'm inclined to install a locally patched zuul with lots of debug info23:22
mordredjeblair: yah23:24
openstackgerritMonty Taylor proposed openstack-infra/zuul feature/zuulv3: Wrap handle_keys with debug statement  https://review.openstack.org/48977723:24
mordredjeblair: that was the first thing that came to mind ^^23:24
jeblairmordred: yeah, i'll include that23:24
pabelangersorry for asking and running away, #dadops23:25
jeblairand i borked it by doing 'pip install'23:25
jeblairrestarted23:26
jeblairKeyError: 'gerrit-infra'23:27
jeblairbad regex?23:27
jeblairwait, no, the path we're passed is this: /keys/gerrit-infra/zuul-jobs.pub23:28
jeblairso it's something before handle_keys23:28
mordredsomething consuming tenant_name perhaps?23:28
jeblair        tenant_name = request.path.split('/')[1]23:28
jeblair        path = request.path.replace('/' + tenant_name, '')23:28
jeblairyep.23:28
jeblairif your tenant name is also in your project name.  oops.23:29
mordredyah - because we don't hav ea handle_keys section i nthe upper pre-tenant try section23:29
pabelangerah, that explains it23:29
jeblairokay, so here's how i think we should fix it:23:30
jeblairwe want to change that to use project canonical names anyway, which make sense in a per-tenant context23:31
jeblairso let's do that, and drop the tenant stripping code entirely23:31
jeblairshall i do that?23:32
mordredjeblair: if we're going to do that - should we go ahead and move getting keys to zuul-web? or do the halfway thing and do the aiohttp patch in place? or just muscle this one in?23:32
pabelangerjeblair: I can take a stab at it in the morning, if you don't get to it first23:33
jeblairoh, hrm, we still need to strip the tenant name because most of the handlers expect that as an argument23:33
jeblairso we need to actually fix that.23:34
jeblairmordred: i'm kind of going for mininum needed to unblock job creation23:34
jeblairi'm not opposed to the other stuff, just that i don't want folks to sit around and wait for either of those.23:35
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Fix webapp path parsing  https://review.openstack.org/48977923:37
jeblairmordred, pabelanger: ^ i think that should do it?23:37
mordredjeblair: yah - I think that's simple enough23:37
openstackgerritMonty Taylor proposed openstack-infra/zuul feature/zuulv3: Try handling keys before removing tenant name  https://review.openstack.org/48978023:38
pabelangergreat23:38
mordredjeblair: we can also add that ^^ if we want to support keys without tenant23:38
mordredjeblair: but I don't know that we do want to support that23:38
mordredjeblair: oh - actually - the split is going to leave path witout a leading '/'23:39
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Fix webapp path parsing  https://review.openstack.org/48977923:40
jeblairmordred: ^ fixed23:40
jeblairmordred: i think everything in the web needs to be tenant-scoped23:40
mordredjeblair: cool23:40
jeblair(i realize that doesn't make sense with the current connection based thing, but i think tenant+project name is the right way to move forward)23:41
mordredjeblair: I think we need to circle back around on that and our rewrite/proxy rules - because we're rewriting /keys currently23:41
mordredjeblair: I agree23:41
jeblairmordred: well, we're doing what's needed to make zuulv3.o.o the view on the 'openstack' tenant23:42
mordredjeblair: oh - wait - this is more broken23:42
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Fix webapp path parsing  https://review.openstack.org/48977923:42
mordredjeblair: OH - because we pass in zuul_status_url with an openstack appended23:43
mordredjeblair: anywho, sorry for the trickle of a review, but - I think that code is going to fail on leading /23:44
mordredjeblair: "/openstack/gerrit/openstack-infra/zuul".split('/', 1)  ->  ['', 'openstack/gerrit/openstack-infra/zuul']23:44
mordredI'm not sure if there's a leading / in the initial webob path though23:45
jeblairmordred: there was already a split there, i assumed that part worked at least23:46
jeblairmordred: oh, subscript 123:47
jeblairsigh23:47
mordredjeblair: I couldn't figure out why the earlier thing worked...  subscript 1 indeed23:47
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Fix webapp path parsing  https://review.openstack.org/48977923:48
mordredjeblair: YES23:48
mordredjeblair: I am now certain that will work23:48
jeblair\o/23:50

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