Tuesday, 2017-09-05

dmsimardgrep -I --color='auto' -P "[\x80-\xFF]" * -R00:00
dmsimardI meant to add it as a local global pre-commit hook but never got around to it00:00
jamielennoxhas anyone seen errors like:00:11
jamielennox2017-09-04 22:26:02,098 DEBUG zuul.AnsibleJob: [build: 99c01a347def47b6988518d9761ce66b] Ansible output: b' [WARNING]: provided hosts list is empty, only localhost is available00:11
jamielennox'00:11
jamielennox2017-09-04 22:26:02,400 DEBUG zuul.AnsibleJob: [build: 99c01a347def47b6988518d9761ce66b] Ansible output: b' [WARNING]: Failure using method (v2_playbook_on_play_start) in callb00:11
jamielennoxack plugin'00:11
jamielennox2017-09-04 22:26:02,401 DEBUG zuul.AnsibleJob: [build: 99c01a347def47b6988518d9761ce66b] Ansible output: b'(<ansible.plugins.callback.zuul_stream.CallbackModule object at'00:12
jamielennox2017-09-04 22:26:02,401 DEBUG zuul.AnsibleJob: [build: 99c01a347def47b6988518d9761ce66b] Ansible output: b"0x7f5aee225f60>): 'NoneType' object has no attribute 'values'"00:12
jamielennoxbest guess from that is that http://git.openstack.org/cgit/openstack-infra/zuul/tree/zuul/ansible/callback/zuul_stream.py?h=feature/zuulv3#n17300:13
jamielennox_variable_manager._hostvars is None. I do have a play that targets localhost, but afaik that should be ok00:14
tristanCdmsimard: to avoid non-breaking space, you can use this xmodmap -e "keycode 65 = space space space space underscore underscore space space"00:15
dmsimardtristanC: what's that do ?00:16
tristanCdmsimard: by default, xorg bind those weird space character at alt-space or altgr-space iirc00:16
dmsimardyeah that's the one00:17
tristanCdmsimard: this modmap make sure that when you press space it doesn't send non-breakable space00:17
dmsimardI tend to produce that whitespace around pipes which I press alt+gr + tilde for (below esc key)00:17
dmsimardand since there is a space before and after the pipe, sometimes I don't depress the alt key fast enough00:17
dmsimardtristanC: is that persisted or do I need to save it/load it somewhere ?00:19
tristanCdmsimard: you'll have to run it at starttime, e.g. in your .xinitrc00:19
jamielennoxoh - wait, somehow zuul is generating an inventory with an empty hosts: {}00:20
dmsimardtristanC: thanks, this will save me a lot of headaches00:21
dmsimardjamielennox: where is that happening ?00:21
jamielennoxin zuul-executor00:21
jamielennoxhostvars is None because there are no hosts in the inventory00:22
tristanCdmsimard: heh you're welcome :-)00:22
dmsimardjamielennox: right, in zuul-executor but what patch ? what job ?00:23
jamielennoxdmsimard: one of Bonny's00:23
dmsimardI guess it's technically possible for there to be no hosts for a job -- but there should at least be localhost (the executor?)00:24
jamielennoxi think i figured it out, i have been pushing towards trying to reuse upstream roles and i had nodes: defined on a role higher than base00:28
jamielennoxso in the swap i've got no nodes: attached to the job00:29
openstackgerritJamie Lennox proposed openstack-infra/zuul-jobs master: Pass correct variables to install bindep  https://review.openstack.org/50064800:40
tristanCjamielennox: shouldn't nodes default to localhost?01:16
jamielennoxtristanC: it doesn't look like it does01:26
jamielennoxbut localhost typically is not displayed in an inventory01:27
dmsimardjeblair: looked at the generate failure -- the error is the following: Unexpected status '404 NOT FOUND' on URL /reports/ajax/results/ce9cbcd1-eeb9-472c-9096-d60561419124.txt02:24
dmsimardThere's an inconsistency -- that uuid is a playbook: ce9cbcd1-eeb9-472c-9096-d60561419124 ( /var/lib/zuul/builds/7740680fc95042649e17e2ee655ad39b/work/src/git.openstack.org/openstack-infra/devstack-gate/playbooks/devstack.yaml )02:27
dmsimardHowever, that playbook did not finish running, it was apparently interrupted02:27
dmsimardOr something that made it so the callback didn't make it to "v2_playbook_on_stats", maybe an exception raised somewhere before ?02:28
dmsimardjeblair: yeah, I can't pull more information than that using just the database. The problem is that something prevented that playbook run from finishing. It either crashed or was interrupted -- so there are basically no results for that particular playbook.02:32
dmsimardLooking at the console output, we would probably see some exception crashing the playbook run or something like that.02:33
dmsimardFWIW 404's during static generation are no longer fatal in 1.0 due to the nature of how the API works and 404's are somewhat expected02:35
dmsimardhttps://github.com/openstack/ara/commit/3b5db8b9311ce2efa7dc98c66f7ef6b2783f881e02:35
openstackgerritJamie Lennox proposed openstack-infra/zuul-jobs master: Only do the bindep_command if bindep_file is defined  https://review.openstack.org/50068306:23
tobiashmordred: I was wrong yesterday, something did break07:12
tobiashmordred: zuul tests don't work anymore within pycharm (but work within tox)07:13
tobiashmordred: bisected the problem to change 49812707:13
tobiashmordred: looking now into this problem07:13
*** hashar has joined #zuul08:08
*** electrofelix has joined #zuul08:40
openstackgerritTobias Henkel proposed openstack-infra/zuul feature/zuulv3: Fix missing logconfig when running tests in pycharm  https://review.openstack.org/50074809:28
openstackgerritTobias Henkel proposed openstack-infra/zuul feature/zuulv3: Close logging config file after write  https://review.openstack.org/50075409:43
openstackgerritTobias Henkel proposed openstack-infra/zuul feature/zuulv3: Close command socket after sending stop  https://review.openstack.org/50075509:44
tobiashjamielennox: do you mind if I rebase and update these patches which I think would be useful for windows support? https://review.openstack.org/#/q/topic:username+status:open09:57
*** Shrews has quit IRC10:16
*** Shrews has joined #zuul10:43
*** jkilpatr has joined #zuul10:59
*** jkilpatr_ has joined #zuul11:01
*** jkilpatr has quit IRC11:05
jamielennoxtobiash: go for it - there was some dissent about where the username should be stored and communicated, but i think that was the preferred way11:09
tobiashjamielennox: thanks11:09
tobiashjamielennox: I'll add also add password and connection type to it so zuul/ansible can use that for connecting to windows nodes11:10
tobiash(on top of the stack)11:10
openstackgerritTobias Henkel proposed openstack-infra/zuul feature/zuulv3: Use username from node information if available  https://review.openstack.org/45398311:22
openstackgerritTobias Henkel proposed openstack-infra/nodepool feature/zuulv3: Add username to build and upload information  https://review.openstack.org/45396811:45
openstackgerritTobias Henkel proposed openstack-infra/nodepool feature/zuulv3: Add username to build and upload information  https://review.openstack.org/45396812:16
openstackgerritTobias Henkel proposed openstack-infra/zuul feature/zuulv3: Rename ssh_port to connection_port  https://review.openstack.org/50079912:37
openstackgerritTobias Henkel proposed openstack-infra/nodepool feature/zuulv3: Rename ssh_port to connection_port  https://review.openstack.org/50080012:37
*** dmsimard is now known as dmsimard|afk12:47
leifmadsen_jeblair: mordred: not sure if you'll have any time before the PTG for quickstart, but let me know if you might :)12:49
openstackgerritTobias Henkel proposed openstack-infra/nodepool feature/zuulv3: Support username also for unmanaged cloud images  https://review.openstack.org/50080812:52
openstackgerritTobias Henkel proposed openstack-infra/nodepool feature/zuulv3: Rename ssh_port to connection_port  https://review.openstack.org/50080012:57
openstackgerritTobias Henkel proposed openstack-infra/nodepool feature/zuulv3: Support username also for unmanaged cloud images  https://review.openstack.org/50080812:57
*** persia has joined #zuul12:58
*** dkranz has quit IRC13:05
openstackgerritTobias Henkel proposed openstack-infra/zuul feature/zuulv3: Use password supplied from nodepool  https://review.openstack.org/50082313:29
Shrewstobiash: not sure you want to store a password in ZK. that's totally unencrypted13:33
tobiashShrews: that's based from a discussion from 9th of august: http://paste.openstack.org/show/620410/13:37
mordredrcarrillocruz: https://docs.openstack.org/infra/system-config/github.html#openstack-zuul-app are docs on our app14:00
mordredrcarrillocruz: to create one, you go to the settings page of an organization, so for infra we went to https://github.com/organizations/openstack-infra/settings/profile14:01
rcarrillocruzOh!14:01
mordredrcarrillocruz: then on the left-hand side you'll see "GitHub Apps"14:01
rcarrillocruzThat looks better, thx!14:01
mordredand "Register a new GitHub App"14:01
*** dkranz has joined #zuul14:22
jeblairShrews: we need to add support for encryption and auth to zk anyway14:26
jeblairtobiash: ^14:26
jeblairdmsimard|afk: yes, that invocation of ansible-playbook was killed because the job timed out.  that is a thing that will happen a lot and we need to handle it gracefully.  i'm surprised though since even the normal post playbook which generates ara does so before it is completed.  i guess the difference here is that there is an interrupted playbook run followed by more playbook runs?14:29
tobiashjeblair: yes14:34
tobiashjeblair: hm, just found this: https://github.com/python-zk/kazoo/issues/38214:34
tobiashjeblair: looks like kazoo doesn't support ssl yet14:34
jeblairi guess we'll have to add that14:36
fungimordred: any guess why 499843 is still resulting in that "extra keys not allowed" validation error from zuulv3 even after its parent merged?14:44
jeblairfungi: hrm, the periodic pipeline definition is wrong14:48
jeblairthere was no vote from zuul on the change that added it14:48
fungioh, also, not sure whether anyone else has noticed yet but http://zuulv3.openstack.org/status.json seems to include some cruft changes which aren't represented in the html rendering14:49
jeblairfungi: aha!14:49
jeblairfungi: mordred made a change that (mostly) hides changes with no jobs from the status page.  however, it doesn't hide the queues.  so we could see there was something stuck there, but didn't know what.14:50
jeblairfungi: it turns out the change that is stuck there is the change to add the periodic pipeline, which has an error and did not report.14:50
fungigah!14:50
jeblairfungi: failing_reasons: "it has an invalid configuration"14:50
jeblairit's a non-live item with nothing behind it, so it should have been removed.14:51
jeblairoh wait, it does have an item behind it14:52
jeblairokay, so i think i understand the bug now14:53
jeblairi think it's because there's a change behind a change with a config error14:54
jeblairremote:   https://review.openstack.org/500864 Zuul v3: Revert "Add periodic pipeline"14:57
jeblairfungi, mordred: let's merge that for now; i'll work on reproducing the zuul bug14:57
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Revert "Only add changes to status page with jobs"  https://review.openstack.org/50086515:00
fungithanks jeblair!15:04
mordredjeblair: ++15:17
mordredjeblair: ah! so that's why the shade patches were failing with merge errors too15:17
fungimordred: not urgent, but are these topic:zuulv3 nodepool changes from last year still needed and just on the back burner, or a dead end to be abandoned? 411512 41147315:26
mordredfungi: 411512 is bong, abandoned15:28
fungithanks. still working my way through some of the older unapproved zuulv3 reviews trying to make sure i know what's actually going in15:29
mordredfungi: 411473 I _think_ is superseeded by other logic in v3 - Shrews could you double-check me on that?15:30
mordredShrews: I think our use of nodepool_build_id makes the check for is_public not needed in v315:30
Shrewsmordred: looking15:37
*** hashar is now known as hasharAway15:38
Shrewsmordred: i believe you are correct15:38
fungithanks for confirming, Shrews!15:38
mordredthanks fungi Shrews15:50
Shrewswas it intentional to overwrite the zuul 2.5 docs with v3?  https://docs.openstack.org/infra/zuul/15:56
Shrewsguess it really doesn't matter for this last week15:57
clarkbShrews: also noticing that the current template doesn't show the version in it15:59
jeblairShrews: no it wasn't intentional; that probably means there's an error in the doc publishing jobs somewhere16:03
jeblairpabelanger: ^16:03
Shrewsjeblair: qq... for the cloner shim, i can safely ignore the --branch and --project-branch arguments, yeah?16:08
jeblairShrews: yep16:08
Shrewscoolio16:08
fungii'm in the process of trying to rebase jhesketh's stack of 456090 and 456162 for zuul, but a fair amount of the underlying logic seems to have changed/moved. can anyone skim and tell me whether that's a futile effort before i get much deeper into those?16:10
jeblairfungi: there is a very distinct possibility that all 456090 needs is the TODO comment removed.  so i'd say focus on verifying that the underlying problem has been solved in the interim.16:13
jeblairfungi: (i'm pretty sure i had to make all that work a while back for something else i was doing)16:13
jeblairfungi: 456162 should still be applicable16:15
fungijeblair: ahh, okay cool. the merge conflicts on 456090 were mostly around a parameter name change16:15
fungi456162 merge-conflicted on moving some logic into a new method which seems to have already been created in the interim16:16
fungialso, those changes _seem_ unrelated to me... is there actually any reason to keep them in series with each other?16:17
fungithough i guess if the first one turns into just a comment removal then there's no way they truly depend there any longer, i suppose16:19
jeblairfungi: yeah, they can be split16:21
fungithanks16:32
openstackgerritDavid Shrewsbury proposed openstack-infra/zuul feature/zuulv3: WIP: Add zuul-cloner shim  https://review.openstack.org/50092216:39
fungijeblair: digging into history there, is it 460769 you're saying corrected the issue related to that ssh connection context, making that todo obsolete?16:48
jeblairfungi: yes, i think that's the one16:50
fungithanks, just making sure i provide adequate references16:50
openstackgerritJeremy Stanley proposed openstack-infra/zuul feature/zuulv3: Clean up obsolete TODO for _get_git_ssh()  https://review.openstack.org/50092516:55
openstackgerritJeremy Stanley proposed openstack-infra/zuul feature/zuulv3: Clean up obsolete TODO for _setGitSsh()  https://review.openstack.org/50092516:57
fungi456162 unfortunately moved _and_ changed logic, so most of the work will be untangling what it was actually changing from what was simply moved around16:59
*** harlowja has joined #zuul17:08
openstackgerritJeremy Stanley proposed openstack-infra/zuul feature/zuulv3: Only grab the gerrit change if necessary  https://review.openstack.org/45616217:17
fungiokay, i *think* that should be it ^17:17
funginot too hard to straighten out17:17
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Dequeue non-live items with errors  https://review.openstack.org/50093117:20
jeblairfungi, mordred: ^ that should fix both the error with the change getting stuck, as well as the non-reporting of the invalid pipeline config.17:20
fungijeblair: the whitespace gods demand the sacrifice of your tab key17:29
fungithey are quick to anger17:29
fungimy rebase of 456162 is failing unit testing, however i made the mistake of attempting to load the zuul unit test console log in a graphical browser17:31
fungifailed on test_untrusted_yaml_error17:32
fungiwhich seems like an odd test for that change to break17:33
fungioh, nevermind i misread. it failed 131 tests17:33
fungiAttributeError: 'GerritEventConnector' object has no attribute 'abide'17:36
fungii guess it did at some point17:37
*** dmsimard|afk is now known as dmsimard17:38
openstackgerritJeremy Stanley proposed openstack-infra/zuul feature/zuulv3: Only grab the gerrit change if necessary  https://review.openstack.org/45616217:45
dmsimardjeblair: re: generate failure -- I could likely backport that patch I sent you back to master and do a dot release.17:58
dmsimardThe only thing it does is to make 404's non-fatal on static generation17:59
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Dequeue non-live items with errors  https://review.openstack.org/50093118:07
jeblairdmsimard: what does 404 mean in this context?18:07
fungii think i've gotten in over my head on the unit test failures for 456162. i'm not sure if switching from GerritEventConnector.abide to GerritEventConnector.connection.sched.abide was the correct way to address the exceptions raised in patchset 3, or if doing that is what leads to the exceptions for ambiguous project naming from tenant.getProject(event.project_name) in patchset 418:32
mordredjeblair: 500931 looks great to me - let's get it landed and restarted, then I can propose a revert revert of the periodic and see what zuul wanted to tell me18:38
mordredpabelanger, jlk, SpamapS, clarkb, Shrews, fungi, tobiash: anybody feel like +3ing https://review.openstack.org/#/c/500931 ?18:39
fungiyeah, i had just gotten back to reviewing that one18:41
fungilgtm18:49
pabelangerjeblair: Shrews: Yes, that is a mistake. We need to land https://review.openstack.org/500229/ and https://review.openstack.org/500591/ In the mean time we can revert publish-openstack-python-docs on zuulv3 post if needed18:49
pabelangerjeblair: mordred: is there anything I should be focusing on or looking at? Our afs publishing jobs are in good shape, just pending reviews.18:52
clarkbpabelanger: shouldn't only master changes publish to the document root though? (I guess on the other openstack docs jobs its to latest/ now)18:57
clarkbpabelanger: just reading thsoe commit messages I'm a little confused why that would change zuulv3 branch from publishing to master destination18:57
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Dequeue non-live items with errors  https://review.openstack.org/50093118:59
jeblairreminder: we'll have a zuul ptg status checkin at the infra meeting starting nowish in #openstack-meeting19:00
pabelangerclarkb: yes, master will be doc root. That works atm, but for feature/zuulv3 branch, we need to land 500229, since it was still using old zuul variables19:01
clarkbpabelanger: right but why did zuulv3 publish to master/root/latest?19:01
pabelangerclarkb: it is using run_docs.sh right now19:02
pabelangerwhich, still has old zuul branch vars19:02
pabelangerso, currently a bug can we can stop publishing for a moment19:02
Shrewsjeblair: ooh, thx for the reminder19:05
mordredpabelanger: -1 on https://review.openstack.org/#/c/500591 - but I'd like to get https://review.openstack.org/500229/ landed asap19:11
pabelangermordred: looking19:13
pabelangermordred: ah, forgot19:13
pabelangerfixing19:13
dmsimardjeblair: sorry, caught in between meetings. The 404 is because the UI does an "ajax" call to an endpoint to fetch the results for a playbook. There were no results for that particular playbook so the endpoint returned a 404 and this is (currently) fatal for static generation.19:59
clarkbpabelanger: can you see comments on 229?20:00
clarkbpabelanger: also do you know where we end up publishing to /latest for master? I'm not seeing that in v2 or v3 jobs20:01
pabelangerlooking20:01
mordredclarkb: I don't believe we do20:01
jeblairdmsimard: ah cool.  yeah, that would be helpful to have backported if possible.  i think as long as we set ignore_errors it's not critical, we just won't have ara in those cases otherwise, and it would be nice to.20:02
clarkbmordred: https://docs.openstack.org/nova/latest/ that works somehow though?20:02
mordredclarkb: oh - hrm, I'm totally wrong about that20:02
jeblairclarkb ,mordred: http://files.openstack.org/docs/nova/20:03
dmsimardjeblair: yeah, since the playbook run would be incomplete, there would be that grey icon that we typically have for the post playbook for log collection for example.20:03
dmsimardjeblair: I'll go ahead and backport it.20:03
jeblairdmsimard: cool, thanks20:04
clarkbjeblair: ya so something is creating that, but I don't see it in 229 or in existing project-config jobs20:04
jeblairthere's no .root-marker in that directory; the next one up is Project: openstack/openstack-manuals Ref: master Build: b2d85b0da8174434ad2532d3f057b3e0 Revision: cad68a203fde595a20f06ce19408ac69da90723520:05
pabelangerclarkb: replied, but for master we just accept the default docs folder structure, so no moving things20:06
clarkbpabelanger: right but that is a regresion isn't it?20:06
pabelangerclarkb: no, that is how we do it today in run_docs.sh20:06
pabelangerif master, we skip20:06
clarkbah ok, then that leaves me more confused for latest/20:07
pabelangerhttp://git.openstack.org/cgit/openstack-infra/project-config/tree/jenkins/scripts/run-docs.sh#n3320:07
pabelangerclarkb: ya, I haven't actually looked at latest stuff yet20:07
clarkbsince latest is basicaly a mv of / (master)20:07
pabelangerclarkb: which job is using that?20:07
pabelangerOh, I wonder if it is on the publisher side20:08
clarkbpabelanger: thats the problem I don't see it in jobs but its definitely in the output20:08
clarkboh maybe20:08
pabelangerYa, I think at PTG, we can simplify some of this. but might be too much to do before cut over20:08
pabelangerI know some jobs have different publisher directories20:08
pabelangerbut all call run-docs.sh20:09
clarkbpabelanger: then the other concern is do we need to skip things more aggressively if doing tags only?20:09
mordredyah - tags-only is handled20:09
fungii thought the docs jobs refactor a few weeks back basically stopped publishing on tag events20:10
pabelangerya, I haven't look much into tag stuff, was leaning on mordred changes for that20:10
mordredthere is branching logic - depending on whether or not a tags-only parameter is passed - there are 3 repos that pass that parameter20:10
clarkbfungi: http://files.openstack.org/docs/nova/ does lack a 16.0.0 tag for pike so that wouldn't surprise me20:10
clarkbmordred: can you see my comment on 229 to see what I mean about handling tags only?20:11
mordredhttps://review.openstack.org/#/c/500229/7/roles/prepare-docs-for-afs/tasks/main.yaml <-- the left hand side has the existing code20:11
clarkbmordred: theer are a couple branches that would run with tags only that I think should not run20:11
pabelangerOh, interesting: http://files.openstack.org/docs/nova/20:11
pabelangernow I see what you mean about latest20:12
pabelangerso ya, we'd need to make sure shade published into a different directory20:12
clarkboh you know what I bet we handle that in zuulls layout tody20:12
clarkbwhere we only run the job in the release pipeline20:12
mordredclarkb: so - the 3 logic branches there are, I thnk the same as the 4 on the left hand side20:13
mordredclarkb: there isn't an explicit no-op for branch == 'master' - because branch == 'master' doesn't match the other three anyway20:13
jeblairokay, looking at the most recent run of openstack-manuals-tox-doc-publishdocs, i can confirm that job isn't doing anything with the project directories.  it is *trying* to delete them because they don't have .root-marker files, but it's failing because their children *do* have .root-marker files.  that's probably okay, if slightly weird (theoretically, there should be some job somewhere that sticks a .root-marker in nova/).  i don't think that ...20:13
jeblair... was accounted for with the new jobs.20:13
jeblairnova's latest .root-marker is Project: openstack/nova Ref: master Build: 9d0798a6a0ef4fa79b8df1db95cf2e36 Revision: 019f7ecb88e031d7c56472c378473e48b26ea59d20:15
jeblairhttp://logs.openstack.org/01/019f7ecb88e031d7c56472c378473e48b26ea59d/post/20:15
jeblairhttp://logs.openstack.org/01/019f7ecb88e031d7c56472c378473e48b26ea59d/post/nova-docs-unified-ubuntu-xenial/9d0798a/console.html#_2017-09-05_19_18_07_56400820:15
clarkbmordred: ya its basically removing the first case by explicitly blocking out master in the subsequent 320:15
mordredso the first non-master branch is for there being a tag (and not on master) the second is are we on a branch with stable in it and not master or tag, the third is we're on a branch without a tag but that isn't a stable branch or master20:15
mordredclarkb: yah20:15
mordredclarkb: becaue there's no elif in ansible -so each when: has to be self-sufficient20:16
clarkbmordred: ya, if only ansible had proper branching syntax :)20:17
jeblairhttp://logs.openstack.org/01/019f7ecb88e031d7c56472c378473e48b26ea59d/post/nova-docs-unified-ubuntu-xenial/9d0798a/_zuul_ansible/scripts/07-ad0138d0065a4c82ac0f58a3371d07f2.sh20:17
jeblairthat's where latest comes from20:17
clarkbmordred: note the oldcode seems to use dirname not basename where you -1'd?20:18
clarkbjeblair: thanks for finding that, so I think that would be a good candidate for cleanup once past the initial transition20:18
mordredclarkb, pabelanger: yah - I see that ... I think we should actually not do either20:19
clarkbmordred: and just publish to feature/zuulv3 ?20:19
mordredsince we're working with zuul.tag which is feature/zuulv3 - and we want to publish the docs for non-stable branches to feature/zuulv3 not to feature or zuulv320:19
jeblairhttp://git.openstack.org/cgit/openstack-infra/project-config/tree/jenkins/jobs/openstack-publish-jobs.yaml#n2220:19
jeblairthat's where it's defined20:19
mordredhttps://docs.openstack.org/infra/zuul/feature/zuulv3/20:19
mordredoh good20:20
clarkbmordred: ya20:20
mordreddid we translate the wrong thing?20:20
jeblairthat looks like an docs publishing job for a non-infra official openstack project20:20
mordredyah. so I think what we have currently is a docs job for a non-official project - which really should only apply to infra projects at this point20:21
mordredI also don't see any issue with infra using that same doc publication job20:22
jeblairmordred: well, it's official, but infra :)20:22
mordredyah - I mean - having https://docs.openstack.org/infra/zuul/latest doesn't seem like it would be bad or a thing we should keep an infra-specific publish job for20:22
*** hasharAway has quit IRC20:23
jeblairmordred: yep -- as long as it can handle publisihng one level down (infra/)20:23
mordredother than the location of the base dir20:23
mordred++20:23
mordredso - I mean, we need an infra-specific job - but we don't need an infra-specific role20:23
jeblairthat sounds reasonable20:23
pabelangerokay, so we'll need a little update then20:23
jeblairmordred: i think we need a redirect though?20:23
jeblairor is that in the server config?20:24
pabelangerlet me see how latest stuff works20:24
jeblairsomething does nova/ -> nova/latest/20:24
mordredjeblair: yah - I'm not sure where theredirect is coming from20:24
jeblair.htaccess in openstack-manuals20:25
mordredawesome20:25
*** jkilpatr_ has quit IRC20:25
mordredjeblair: should we just add a redirect there for infra? or to root-level config?20:25
pabelangerlooking at the link jeblair posted: http://git.openstack.org/cgit/openstack-infra/project-config/tree/jenkins/jobs/openstack-publish-jobs.yaml#n22 it doesn't support feature branches, how would that look with feature/zuulv3?20:26
clarkbpabelanger: thats what mordred was saying dropping the dirname/basename entitely20:27
jeblairmordred: it's templated; we'd need to update the script to add /latest/ redirects for the infra projects once they exist20:27
jeblairpabelanger, clarkb: it does seem that not publishing feature branches is a bit of a problem for us at the moment though.20:27
jeblairso i think we're going to need the infra publish jobs to continue to work the way they do now, and we should talk about switching to the unified jobs after cutover (maybe after v3 release)20:28
mordred++20:28
mordredagree20:28
pabelangerokay20:28
mordredso we fix up 500229 and rename it to be openstack-publish-infra-docs20:29
pabelangerpublish-openstack-python-docs-infra and publish-openstack-python-docs jobs ?20:29
pabelangerah20:29
mordredthen make a new one that is openstack-publish-docs that uses the content from docs-unified20:29
pabelangerk20:29
mordredyah20:29
mordredpabelanger: your names are clearly better :)20:30
pabelangerk, I'm going to need some food, so I'll start on that after I eat20:30
mordredpabelanger: and we can have zuul use the new publish-openstack-python-docs-infra and shade use publish-openstack-python-docs when we have it20:30
mordredsince shade does unified openstack publishing already20:30
pabelangermordred: ++20:30
mordredthat way we can verify both work20:30
mordredpabelanger: cool - youre on this one?20:30
pabelangerya20:30
mordredsweet20:30
mordredpabelanger, jeblair, clarkb, fungi: https://etherpad.openstack.org/p/zuulv3-constraints-jobs20:31
pabelangeryup, I'll start hammer out the jobs here in 45mins20:31
jeblairmordred: i will read your constraints change now20:31
jeblairmordred: and your treatise :)20:31
mordredI made an etherpad with the background, what's trying to be accomplished and what the current options are20:31
mordredjeblair: you might want to just start with the etherpad and ignore the changes themselves for now20:31
mordredjeblair, fungi: btw - we've been doing this long enough that I was able to know which of you was jeblair and which was fungi just from wording and writing style :)20:41
*** jkilpatr has joined #zuul20:41
jeblairalso fungi is always chocolate20:41
fungii shall endeavor to be more opaque in the future ;)20:41
mordredyou'd think that would be how I knew ...20:41
mordredand people say tone doesn't come across when chatting via text ...20:42
jeblairmordred: i'd like to explore the option that we have openstack-tox-py35 with parent: tox-py35 and the addition of openstack/requirements and any job var needed20:42
mordredfungi, jeblair, pabelanger: so I think we can probably switch back to here having enough context for stuff to talk here20:43
jlkmordred: text has its own tone20:43
jeblairmordred: i feel like that's actually a really good use of zuul-jobs -- there's no duplicate job definition, we're just enhancing the zuul-jobs tox job with the openstack-specific add-ons20:43
mordredjeblair: what about openstack-tox-py35 do you like more than project-template: openstack-python-jobs ?20:43
mordred(I mean, we already have project-template openstack-python-jobs, so it's more a question of what you like about openstack-tox-py35 more than just setting the repo and var in the template def)20:44
pabelangerinteresting question, since both should do the same thing20:45
jeblairmordred: it means you have to use the project-template in order to not have a mess; if you need a different project template for some reason, that would need to duplicate the settings.  and if you just wanted to add a one-off (tox-py36?) again, duplicated settings.20:45
mordredjeblair: k. I can understand that - from my side I prefer the tempate because the thing that reports to the user is "tox-py35" whether the job uses a constraints file or not, so people experiencing the system here and then using it elsewhere can learn that "tox-py35" is the thing they want to run on their zuul back home20:46
jeblairmordred: i was actually about to type into the etherpad that i like that it has a different name.  fundamentally, it behaves differently.  it's not *just* a tox-py35 job, it's a tox-py35 job with the *openstack constraints*20:47
mordredat the end of the day, since it'll be in a template for a large portion of the users anyway I can just eat the openstack-tox-py35 and get over it20:48
fungiwhat's the downside to the project-template alternative?20:48
mordredjeblair: but ... so - the thing is20:48
jeblairi consider that less important than the usability, but still desirable20:48
pabelangerright, I thought that is why we named it tox-py35-constraints to better indicate the constraints in comments20:48
mordredjeblair: thejob will run with upper-constraints whether we have a job that does those things or not20:48
fungioh, nevermind, i see jeblair answered that further up20:49
* fungi is a slow reader20:49
mordredsince the upper-constraints processing is actually logic that's in the tox.ini20:49
jeblair(like, if you just gave me that choice with no context about cost/benifit, i'd still say "two job names because they behave differently")20:49
mordredso they don't actualy behave differently from a content execution perspective - the difference would be providing depends-on with openstack/requirements and not having the job wget the file but instead have it pushed to the node20:50
mordrednow - that may still be enough to warrant "it works differently"20:50
mordredbut to me those are deployer-specific optimizations that should be hidden from the user20:50
jeblairoh wait, i thought tox-py35 isn't going to go wgetting files20:50
mordredthe tox.ini file in shade will TOTALLY wget files if something doesn't put them there20:50
mordredor, rather, pip will20:51
jeblairah.  but zuul tox-py35 won't.20:51
mordredthe default value of the variable is "https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt"20:51
mordredright20:51
mordredso zuul using the thing I pushed up will not do anything since its tox.ini doesn't know or care about constraints files20:52
fungipart of my concern over how much of this is generalizable outside openstack is the upper-constraints idea vs constraints as a whole. we have upper-constraints.txt as a rendering of the highest usable versions of our transitive deps for a synchronized set of global requirements. that's very openstack-specific. having a mechanism to generally apply a constraints set would be nice and non-openstack-specific20:52
fungiassuming we don't need a lot of arbitrary shell callout from the tox.ini to handle it (e.g. if we get direct support for constraints in tox)20:52
mordredeven with the excessive version of adding o/r to all required-projects- zuul's tox-py35 will operate unchanged20:52
mordredfungi: yes - I agree with that - I think that medium-term goal should be adding feature to tox to support arbitrary constraints set20:53
mordredfungi: at that point, theimpl details of the tox role passing UPPER_CONSTRAINTS_FILE as an env var could be replaced with a different mechanism20:53
pabelangeronce concern about adding o/r to base required-projects, is puppet-jobs won't use it. So, unneeded repo on disk now20:54
mordredpabelanger: yah - that's the bad part about that and I think I'm fairly convinced doing that is a bad idea20:55
jeblairmordred: another option (which i don't like, but has a potentially better shape in the future) added to etherpad20:55
mordredjeblair: yah - that's what I was starting to ask about before ...20:57
mordredjeblair: can we just shadow the tox base job instead of tox-py35?20:57
jeblairmordred: yeah, that might be a bit better20:57
fungihaving zuul-jobs:tox-py35 inherit from project-config:tox would be a layering violation wouldn't it?20:58
jeblairmordred: hrm, 2 problems with that: 1) tox has 3 playbooks, so we'd need to copy those.  2) we'd still be pushing the requirements repo to projects that don't need it.20:59
mordredyah20:59
mordredok - how about this as a resolution for now20:59
mordredwe do the openstack-tox-py35 job for now20:59
fungior do you mean shadow both zuul-jobs:tox-py35 _and_ zuul-jobs:tox in project-config?20:59
jeblairfungi: if we shadow tox in project-config, that's the job that zuul-jobs will inherit from20:59
mordredand we put it into a openstack-python-jobs-constraints template20:59
mordredbut - we put an asterisk by it with a goal that we'd like to get openstack-python-jobs-constraints to have just tox-py* in it and not openstack-tox-py*21:00
fungiand there's nothing wrong with having baser-level zuul-jobs definitions inherit modified replacement jobs from our openstack-specific project-config set?21:01
jeblairmordred: i'm really tempted to agree with that, except wouldn't that still mean that we'd end up with all tox jobs getting the requiremnts repo regardless of whether they use it?21:01
mordredfungi: zuul-jobs already inherit from jobs in project-config :)21:01
mordredjeblair: nope21:01
mordredoh - the repo. hrm21:02
mordredjeblair: well - I think I was thinking about your statement about post-ptg work about inheriting and shadowing21:02
fungimordred: which ones? mostly curious at this point if we've somehow added jobs to zuul-jobs which aren't usable outside openstack because they depend on things in project-config21:02
mordredfungi: base21:02
mordredfungi: all zuul installs must define a base job21:03
jeblairmordred: yeah, i'm starting to talk myself out of that, because i think we may have been dancing around the central question:21:03
jeblairshould tox-py35 in openstack's zuul automatically include the openstack/requirements repo?21:03
fungioh, got it. so the base job definition is something that we expect the deployer to provide from somewhere, possibly customized?21:03
mordredjeblair: I think, for me, if we could have a tox base job in project-config that didn't have to copy playbooks and essentially only added a repo and a variable21:04
mordredfungi: yes. because secrets and log publication and whatnot21:04
pabelangerIf voting, I would say no to automatically include openstack/requirements21:04
mordredjeblair: then o/r always being added to tox jobs in openstack's zuul would not bother me personally21:04
jeblairfungi: we're really close to being able to provide a 'base' job that's reusable, but back-burnered that till after ptg.21:04
fungimakes sense21:05
mordredjeblair: (I actually did some hackingon that too this weekend)21:05
mordredjeblair: but yes - back-burnered so I haven't pointed it out :)21:05
jeblairmordred: i think i lean toward 'no' on that question -- i'd prefer not to have that in every tox job.21:06
jeblairas a zuul developer, i *would* like to have the tools available to *do* that :)21:06
mordredyah21:06
mordredjeblair: also - once we have those tools, perhaps it's also a place where tenant differences can be used21:07
jeblairbut as an openstack zuul operator, i'm currently inclined to say that it's not an assumption we sholud make in openstack21:07
jeblairmordred: agreed; if we ended up with an official openstack tenant, that would be an easier sell for me21:07
mordredjeblair: like, have only 'openstack' projects in the openstack zuul tenant, do the tox shadow + o/r repo there21:07
mordredjeblair: because then there really are no cases when there's a repo that has a good reason to opt-out of that21:07
pabelangerOh, that would be fun21:07
mordredjeblair: but I think that's a level of complexity we should avoid for this week21:08
mordredk. I'll update the constraints patch ... do we prefer tox-py35-constraints? or openstack-tox-py35? or openstack-tox-py35-with-constraints?21:09
pabelangerI don't mind tox-py35-constraints21:09
jeblairwfm21:09
fungii think openstack-tox-py35 is accurate and sufficient21:09
jeblairalso wfm :)21:10
pabelangerdealers choice21:10
fungiparticularly if we find there's anything else "special" that openstack-specific tox-based jobs will also need to do21:10
jeblairmordred: heads or tails?21:10
jeblairfungi makes a good point :)21:10
fungiwhereas teh odds that things outside the openstack set will want to apply openstack's upper-constraints.txt file are fairly slim21:11
* jeblair changes vote to openstack-tox-py3521:11
pabelangerha, I think we originally called tox-py35-constraints that :D21:11
pabelanger++21:11
fungigives us a convenient place to contain the openstackisms21:11
jeblairi also updated etherpad with example21:12
*** harlowja has quit IRC21:13
mordredok. cool21:13
mordredbtw - https://review.openstack.org/#/c/500320 itself is good to go - the part we're discussing was related to a project-config change21:13
mordredjeblair, fungi, pabelanger: WHILE I HAVE YOUR ATTENTION ...21:14
jeblairyou certainly have it now!21:14
mordredhttps://review.openstack.org/#/c/489719 is also readyfor review ... and is the thing that magically adds python projects on the system from required-projects into tox21:14
mordredand I have a set of shade and keystoneauth patches that show it doing its job, both in not making changes when there are no changes to make, making them when there are, and responding to an opt-out flag21:15
mordredthe shade patches end here: https://review.openstack.org/#/c/50038821:15
mordredlooking at http://logs.openstack.org/87/500387/1/check/tox-py35/98fc1f1/testr_results.html.gz is how you can see that it failed becaue it applied the keystoneauth depends-on patch21:16
mordredsince the exceptoin in the unittest is "This is an intentionally failing change"21:16
fungiif anyone with deeper understanding of gerritconnection module has a moment, i think i've gotten in over my head on the unit test failures for 456162. i'm not sure if switching from GerritEventConnector.abide to GerritEventConnector.connection.sched.abide was the correct way to address the exceptions raised in patchset 3, or if doing that is what leads to the exceptions for ambiguous project naming from21:19
fungitenant.getProject(event.project_name) in patchset 421:19
fungii would have assumed it should be able to figure out the host by context, but i guess that gets dereferenced by washing it through the scheduler object?21:22
openstackgerritMonty Taylor proposed openstack-infra/zuul-jobs master: Add UPPER_CONSTRAINTS_FILE file if it exists  https://review.openstack.org/50032021:23
mordredjeblair: ^^ fixed from your comments21:23
jeblairmordred: thx21:23
mordredjeblair: also, it depends on https://review.openstack.org/#/c/50032421:24
jeblairfungi: lookin21:24
fungijust starting to attempt to delve into how to get from the event connector to a tenants list with connection context, or whether i need to assemble a host-specific project name to pass into tenant.getProject() now21:25
openstackgerritMonty Taylor proposed openstack-infra/zuul-jobs master: Override tox requirments with zuul git repos  https://review.openstack.org/48971921:25
mordredjeblair: have we restarted zuul scheduler since your patch to fix the reporting?21:27
jeblairmordred: not i21:27
fungiyeah, i assume we still need a restart to clear out the cobwebs in the check pipeline21:28
mordredjeblair: k. I'd like to do that21:28
jeblairmordred: ++ you have a 'go' from me.21:29
* mordred restarting zuulv3 scheduler21:29
fungiif it were working now the check queue count wouldn't be off-by-one21:29
fungimordred: graceful restart i guess?21:29
pabelangermordred: do you mind getting executors too? Want to make sure we are running pastebin friendly debug logs21:30
fungiwe have several changes in the zuulv3 gate21:30
mordredpabelanger: sure thing21:30
pabelangerdanke21:30
mordredfungi: oh - no - sorry - will need to recheck those21:30
mordredmy bad - I'll dump/restore next time21:31
clarkbpabelanger: pastebin friendyl logs? like text?21:31
fungi500865,1 500476,2 and 500324,1 need reapproving i guess?21:31
fungi500320,9 489719,29 and 500943,3 will need rechecking21:31
mordredclarkb: pabelanger found a place where secrets could leak into log21:31
clarkboh fun21:32
clarkbthats the service logs though not the job logs. I see the change now21:32
mordredclarkb: yah21:33
jeblairfungi: left some text on 456162 for ya21:33
mordredpabelanger: restarted21:33
fungii'll get those 6 changes reenqueued21:33
fungithanks jeblair!21:33
mordredv3 should be running with all latest changes21:33
jeblairmordred: thanks!21:33
clarkbmordred: pabelanger should we make that more obvious in the code too? reading the patch I don't think that woudl be clear to me as a reviewer21:34
fungiwhat tenant name do i need to pass to zuul enqueue now on zuulv3.o.o?21:36
fungiis that "openstack"?21:36
jeblairfungi: yes21:36
fungithanks21:36
jeblairclarkb, pabelanger: well, maybe in the commit message; i'm not sure the code needs extra annotation.21:37
clarkbjeblair: I guess its never "safe" to print playbook objects?21:38
jeblairclarkb: correct (not at the moment, now that we moved secrets there)21:38
fungireenqueued 3 gate jobs and 3 check jobs following the scheduler restart21:39
clarkbjeblair: maybe make stringification of playbook objects filter out secrets?21:41
jeblairclarkb: they're just dicts there; we could make them special21:43
jeblairclarkb: i'm not really worried about this as a systemic problem because we've knowingly logged excessively while in development; i'd consider this merely initial cleanup rather than a developer oops.21:43
clarkbok21:44
pabelangerya21:44
jeblair(for instance, we still log the entirely of the cat job data we get back on dynamic reconfiguration; that's not going to last long into production scale :)21:44
clarkb(I just bring it up because similar problem has existed in openstack since well forever and it has hampered efforts to make certain logs public)21:44
pabelangerwell, I'm sure we might be sharing debug logs this weekend with non infra-root people too. That was my main concern about the restarts :)21:45
jeblairyeah.  the intent is not to log any secret data.  all we need to do is not log any secret data.  :)21:45
jeblairclarkb: and, yeah if we *do* find that we want to log the playbook object, we should make a safe formatter21:46
jeblairi'm going to take a short break then try to dig into the wget issue21:46
openstackgerritJeremy Stanley proposed openstack-infra/zuul feature/zuulv3: Only grab the gerrit change if necessary  https://review.openstack.org/45616221:47
fungigoing to go try and perform pre-travel yardwork while that ^ is tested21:47
fungijeblair: thanks for the reference to connection.canonical_hostname there... i was worried assembling the host-specific project name there was going to end up being the answer (at least until that new todo is addressed_21:48
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Revert "Only add changes to status page with jobs"  https://review.openstack.org/50086521:48
openstackgerritMerged openstack-infra/zuul-jobs master: Update tox/test-requirements  https://review.openstack.org/50032421:49
mordredremote:   https://review.openstack.org/501001 Add OpenStack constraints versions of tox jobs21:49
mordredjeblair, fungi, pabelanger, clarkb: ^^21:49
mordredpabelanger: I think you're going to need to make a copy of the job with the new name, then update zuul's use of it, then delete the old one21:52
pabelangermordred: Yup, that is what I'm working on now21:52
mordredpabelanger: cool21:54
mordredpabelanger, fungi, jeblair, clarkb: for https://review.openstack.org/#/c/500229 - since we've now learned that it's actually just for publishing infra-docs - how about we drop support for the tags-only logic?21:56
mordredpabelanger, fungi, jeblair, clarkb: it's used in exactly three places: bindep-infra-docs-tags-only git-restack-infra-docs-tags-only git-review-infra-docs-tags-only21:56
clarkbmordred: and just publish on every change for those tools? I think that is likely ok for most. bindep may cause problems21:57
pabelangerwill do what group wants to21:57
clarkbmordred: since bindep is largely consumed on releases?21:57
fungisame for git-review and git-restack21:57
mordredwell - whether we publish is a which-pipieline-does-the-job-go-in thing21:57
clarkbgit review is really static now and comes with a man page at least. Not sure about restack21:57
*** dkranz has quit IRC21:58
mordredthe only difference with the tags-only flag is how we put files into a subdir21:58
fungii wasn't too thrilled with the switch to continuously publishing per-branch docs in openstack as a whole, but i expect them to come back around when enough users complain21:58
fungiand get at least some back to a on-releases-only publication method21:58
mordredI honestly to god can't see the logic difference with the tag too21:58
clarkbmordred: I think its only supposed to publish to / when tags happen21:59
clarkbmordred: the idea being if you go to docs/foo youget the last tagged docs not the current dev docs21:59
mordredahh - so - with tags-only flag is only moves the docs into a tag subdir if the tag is also the latest tag in the repo22:00
fungii think it was mostly just that we only put the job in the release pipeline rather than post for some projects22:00
mordredclarkb: http://paste.openstack.org/show/620448/22:00
fungiand, yeah, that was to keep stable point releases from overriding the most recent22:01
mordredGOTCHA22:01
mordredbut that doesn't really apply to git-review, git-restack or bindep22:02
mordredthe comment above it helps22:02
mordredpublish to / and /$TAG if this is the latest version for projects and we are only publishing from the release pipeline, or just /$TAG otherwise22:03
clarkbya that should be fine22:04
clarkbmordred: So ya I think just drop logic entirely would be a good simplification22:09
pabelangermordred: clarkb: do you mind commenting on 500229 and I'll push those changes up22:10
jeblairenabling keep on ze0122:16
jamielennoxpabelanger: can you have a look at https://review.openstack.org/#/c/500683/ and https://review.openstack.org/#/c/500648/22:16
jamielennoxthey're simple and at least the first one i can't work around locally without forking zuul-jobs22:16
mordredpabelanger: done22:18
pabelangerjamielennox: left comment on 500683 which likey will turn into bikeshed22:23
mordredpabelanger: sorry - +A'd it before seeing your comment22:24
mordredpabelanger: it's completely reasonable to not have bindep_file - the role should be "run bindep on the repo if it's useful to do so"22:25
mordredbut we can't know if it's useful to do so without looking to see if there is a bindep_file in the repo22:25
mordredpabelanger: BUT - we should almost certainly move the installation of bindep to after we determine if we even have a bindep file22:26
pabelangermordred: ya, that's fine. I think we can discuss at PTG, I'm not a fan of adding roles that just noop. Because, if you don't have a bindep.txt file, no reason to use bindep roll22:26
pabelangerrole*22:26
pabelangerbut, then we are getting into conditional role includes22:26
pabelangerwhich, is also tricky22:27
mordredpabelanger: I disagree22:27
mordredI think we always want to run the bindep role22:27
mordredas part of the unittest base job22:27
pabelangeryes22:27
mordredbecause it's a base job thats intent is to do its best to set things up for people22:27
mordredso we cannot know whether a given repo uses bindep or not without running the role22:27
pabelangerso, I would do include_role: bindep if bindep_file is defined, in playbook22:28
pabelangerbut, I know people don't like include_role22:28
pabelangerover having bindep role install bindep, then skip calling it22:29
mordredoh - there's a problem though22:29
mordredthe playbook can't do that22:29
mordredwithout running the role22:29
mordredbecause in 99% of the times, bindep_file is not defined by the job or user22:29
mordredbindep_file is a fact set by find.yaml22:29
mordredit's only an argument to allow people to do really weird things22:29
pabelangerAh, I thought we dropped the find stuff22:30
openstackgerritMerged openstack-infra/zuul-jobs master: Pass correct variables to install bindep  https://review.openstack.org/50064822:31
clarkbrun tox has always been a super set of what people generally need in order to do the right thing depending on what they do need22:31
clarkbsubunit vs nose for example22:31
clarkbI think its ok to contineu doing that as it reduces the number of things people have to think about getting just right in order to have their jobs do what is expected of them22:32
openstackgerritMonty Taylor proposed openstack-infra/zuul-jobs master: Don't install bindep if there's no bindep file  https://review.openstack.org/50101822:33
mordredpabelanger, clarkb, jamielennox: ^^22:33
mordredI think that should further optimize for the case where there is no bindep file (no need to install anything if there's no file)22:33
jamielennoxpabelanger: i'd agree with not installing bindep at all if not necessary22:36
jamielennoxbut like -infra i ended up embedding it in the image anyway22:36
mordredjamielennox, jlk: over the weekend I made these: https://review.openstack.org/#/q/topic:zuulv3-base-rollup22:36
openstackgerritMerged openstack-infra/zuul-jobs master: Only do the bindep_command if bindep_file is defined  https://review.openstack.org/50068322:37
mordredjamielennox, jlk: I don't expect us to have much time to think about them til post-ptg - but after chatting with jamielennox about consuming things directly last week, the idea popped into my head that we could make tracking that stuff easier -anyway - just wanted to toss them across your bow22:37
jeblairmordred: erm, can we WIP those till later?22:37
mordredjeblair: yup22:37
mordredjeblair: I just changed their topic so they wouldn't show up in people's review lists - but I'll go wip them explicitly22:38
jlkI saw those, and ignored them for the most part. LOTS of line changes, and failing tests.22:38
jeblairmordred: i think there's an alternative with more direct use of the base job but i don't have time to explore it now.22:38
mordredjeblair: wipd22:38
mordredjeblair: ++ - all marked WIP22:39
clarkbmordred: one potential problem with the bindep change is bindep_command no longer accepts a valid command but only a path to an executable22:43
clarkbmordred: how painful would it be to rename it to bindep_executable to make that clearer?22:44
pabelangerclarkb: mordred: fungi: jeblair: should we delete zuulv3-dev.o.o too to free up quota?22:44
pabelangersorry, should have been in #openstack-infra22:44
jlkclarkb: that change shouldn't be too difficult to enact, as long as we agree on that color :D22:45
mordredclarkb, jlk: yah - we just need to add bindep_executable: to project-config zuul/site-variables first22:54
mordredthen update the bindep role to consume executable instead of command - then remove command from zuul/site-variables22:54
clarkbmordred: can you see comment on https://review.openstack.org/#/c/500320/9 about requiring environment and environment_defaults?22:58
mordredclarkb: yah - can fix that - but I need to AFK for now23:02
clarkbmordred: oh doesn't look like environment defaults is used at all23:05
clarkbmordred: so maybe we collapse it down into a single required item?23:05
clarkbmordred: other than that stack for constraints lgtm. I think just want to make it clear what params are used such23:09
jeblairprogress on the wget error -- i think the problem is in zuul_command, where we are getting some unexpected encoding from wget:23:12
jeblair2017-09-05 23:10:08.979822 | ubuntu-xenial | 'Saving to: \xe2\x80\x98/opt/stack/devstack-corvus/files/etcd-v3.1.7-linux-amd64.tar.gz\xe2\x80\x99\n'23:12
jeblair(that's with zuul_command changed to use repr on the strings it gets)23:12
jeblairso we can see there are some unicode characters there23:12
jlkeww?23:12
clarkbthose are quotes23:13
jeblairthe devstack connection may be that devstack sets some local veriables to override system defaults23:13
jeblairclarkb: yep23:13
clarkbleft and right single quote marks in utf823:13
clarkbmordred: pabelanger 229 lgtm now23:14
jeblairoh, actually, i think the devstack locale thing may be a red herring23:14
jeblairand in fact, my test wget job *did* fail23:14
jeblairi just didn't notice it23:15
jeblairbecause it just silently stopped logging but then continued23:15
clarkbjeblair: a quick local test of wget shows that saving to string uses utf8 quotes23:18
clarkbjeblair: so thats "normal" for wget in a utf8 locale looks like23:19
jeblairclarkb: yeah, that jives with what i'm seeing23:19
jeblairtheoretically zuulv2 should be subject to this..23:19
clarkbwe don't stream that bit though23:20
clarkbin v2 I think we just redirect that to a file (the devstack log that is)23:20
jeblairclarkb: oooohhh... that's just redirected to a file?23:20
clarkbya23:20
jeblairokay.  neat.23:20
jeblairso we're a bit ahead of ourselves here :)23:20
clarkbpretty sure because in main console log we say "go look at the main log for this thing if it fails"23:20
clarkband that file is devstacklog.txt23:20
jeblairi think the problem here is that we're attempting to encode the string at all -- it's a bytestring that we read from a pipe -- it should already be encoded23:23
clarkbI thought the websocket default was to utf8 or rather websockets require utf8?23:37
clarkbwe may be failing at the read side though no the write I suppose23:37
jeblairclarkb: this is at the lowest level -- the ansible module that runs a command and pipes the output over a tcp socket23:38
jeblair(to be clear -- that's *zuul's* ansible module doing that)23:38
jeblairnot an ansible problem per-se, it's where we hook into ansible to get command streaming23:39
clarkbjeblair: in ansible/callback/zuul_stream.py ?23:40
jeblairclarkb: ansible/library/zuul_console.py23:41
jeblairi have a fix; i'm just trying some more permutations of things that might go wrong now23:41
jeblairclarkb: Console.addLine23:41
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Be explicit about byte and encoding in command module  https://review.openstack.org/50104023:59
jeblairclarkb, mordred: ^23:59

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