Wednesday, 2017-07-26

*** harlowja has quit IRC01:29
mordredjeblair: I think that looks great!01:36
*** isaacb has joined #zuul04:05
*** isaacb has quit IRC04:05
*** harlowja has joined #zuul04:40
*** deep-book-gk_ has joined #zuul04:46
*** deep-book-gk_ has left #zuul04:48
*** harlowja has quit IRC05:39
*** amoralej|off is now known as amoralej06:54
tobiashjeblair: yay, looks great :)07:24
tobiashpabelanger: currently trying out the tox-docs job from zuul-jobs in my environment and it fails during configure-mirrors08:27
tobiashpabelanger: that's pulled in currently by the unittests pre playbook with hard coded openstack specific variables08:27
*** hashar has joined #zuul08:53
*** ajafo has quit IRC09:15
*** ajafo has joined #zuul09:23
*** jkilpatr has quit IRC10:00
*** jkilpatr has joined #zuul10:12
*** jkilpatr has quit IRC10:39
*** clarkb has quit IRC10:45
*** clarkb has joined #zuul10:45
*** jkilpatr has joined #zuul11:12
*** dkranz_ has joined #zuul12:30
*** hashar has quit IRC13:05
*** hashar has joined #zuul13:06
*** amoralej is now known as amoralej|lunch13:59
dmsimardpabelanger mentioned a job_output.json file, where are those located ?14:17
tobiashdmsimard: it's part of the job result folder14:26
tobiashdmsimard: e.g. here: http://logs.openstack.org/40/485840/14/check/tox-linters/02644f0/14:27
* dmsimard looks14:27
tobiashdmsimard: or did you mean on the executor during the build?14:28
dmsimardtobiash: no, that seems to be what he was referring to14:28
jeblairit gets written to <jobdir>/work/logs on the executor host when the job is running -- same place as the console log (job-output.txt).  then copied up along with it in a post playbook14:28
dmsimardHe'd like to import those in ARA so I was curious what they were14:28
dmsimardI'm still juggling with the idea of import/export "drivers" in ARA so knowing what people want to do is helpful :)14:29
dmsimardThere was also the notion of picking up messages from mqtt14:29
jeblairdmsimard: it's *similar* to the json produced by the json output plugin, but it's a list of json blobs, one for each invocation of ansible-playbook.14:29
dmsimardjeblair: yeah, let's call it a "proprietary" format :)14:30
jeblairis importing this into ara the better approach?  or just adding the ara callback like we discussed?14:31
jeblairtobiash: looks like configure mirrors is intended to switch on the presence of the variable mirror_host, which is hard-coded in there now14:33
jeblairtobiash: and it's waiting on https://review.openstack.org/447734 site-local vars to make that configurable14:34
tobiashjeblair: which is already +2 from me :)14:34
jeblairpabelanger, mordred, SpamapS: ^ maybe one of you want to +3 that?14:34
*** amoralej|lunch is now known as amoralej14:38
dmsimardjeblair: it depends on the approach, the ara callback works well for standalone reports (statically generated like stackviz)14:42
dmsimardjeblair: if we want to aggregate data (like openstack-health), we need to look at something else14:42
dmsimardjeblair: the callback has support for sending data to a remote relational database (i.e, mysql) but at openstack-infra scale, I fear it might not be very reliable, introduce latency and such14:43
dmsimardso we need some way of importing data asynchronously, mqtt was an option, importing the json can be interesting as well14:43
pabelangertobiash: Ya, we can work on that today to remove the openstack variable bits14:43
pabelangertobiash: I think some of that is in our shadow base job now14:43
dmsimardmqtt is interesting because of the real time nature of it, importing the json only makes the data available at the end of the run which is okay too but need to be kept in mind14:44
dmsimardimporting the json would be very much like openstack-health current imports the subunit files14:44
tobiashpabelanger: it's not that urgent, currently fighting with openshift14:44
pabelangerRight, was going to see if that was possible, then we shouldn't need anything on executor?14:44
pabelangertobiash: ack14:45
dmsimardpabelanger: for importing the json ?14:45
pabelangerdmsimard: right, like I said, not sure if possible today14:46
dmsimardpabelanger: there's nothing in ara that would allow you to do that easily right now, it needs at the very least a refactor for introducing the API that will abstract a lot of the logic14:46
dmsimardpabelanger: fwiw I just got confirmation that I'm (at least) going to the PTG, AnsibleFest I don't know yet14:46
dmsimardSo we'll get the opportunity to hack on things14:46
tobiashdoes someone know if there's a possibility to install zuul from source without the git dir?14:46
dmsimardand by the PTG, I should have made good progress towards the API14:47
tobiashopenshift doesn;t want to put the .git dir into the build context :(14:47
dmsimardtobiash: with s2i ?14:47
jeblairpabelanger: let's not add those vars to the base job, let's land site-vars instead14:47
tobiashdmsimard: Using docker build with dockerfile14:48
jeblairtobiash: are you having problems because of pbr version stuff?14:48
jeblairtobiash: if so, there's an env variable you can set that pbr will use instead of trying to do git ops14:49
tobiashjeblair: could be (I'm still a setup.py noob)14:49
tobiashjeblair: ah, checking out14:49
jeblairtobiash: https://docs.openstack.org/pbr/latest/user/packagers.html  PBR_VERSION14:49
* tobiash trying14:50
tobiashjeblair: yay, works, you saved me hours of digging into a custom builder workaround :)14:56
* tobiash is heading home happily14:57
openstackgerritMerged openstack-infra/nodepool feature/zuulv3: Remove FakeProvider getClient monkey-patch  https://review.openstack.org/47513115:09
*** olaph has joined #zuul15:13
jeblairtobiash, mordred: i was thinking -- maybe instead of using the zuul domain in https://review.openstack.org/487239  i could make a sphinx yaml domain.  so we'd do things like yaml:dict yaml:key etc.  might work just as well and be generally applicable.15:14
*** nt has left #zuul15:21
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Remove refspec  https://review.openstack.org/48587515:30
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Remove ZUUL_REFNAME  https://review.openstack.org/48623215:33
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Remove ZUUL_OLDREV and ZUUL_NEWREV  https://review.openstack.org/48623315:33
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Remove ZUUL_COMMIT  https://review.openstack.org/48623515:33
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Remove ZUUL_REF  https://review.openstack.org/48623615:36
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Remove ZUUL_PATCHSET  https://review.openstack.org/48624015:36
dmsimardMERGE ALL THE THINGS15:38
SpamapSjeblair, pabelanger: How hard would it be to start having zuulv3.openstack.org gate feature/zuulv3?15:41
* SpamapS waits for them to tell me it's already doing that15:41
openstackgerritMerged openstack-infra/nodepool feature/zuulv3: Support UUID as builder identifier  https://review.openstack.org/48441415:41
jeblairSpamapS: i think we'd probably just switch both branches (we're not doing much for master right now anyway).  and i think we'll do that soon.15:42
tobiashjeblair: sounds good15:42
pabelangerSpamapS: jeblair: ++15:43
tobiashI'm gating my project documentation with v315:44
tobiashworks flawlessly so far15:44
pabelangerjeblair: Shrews: we should upgrade nodepool-launcher to python3 today15:44
Shrewshttps://review.openstack.org/485247 is waiting for another +2 to do just that15:45
pabelangerYa, lefts roll that out now, I have time to monitor15:46
jeblairoh look at that it just got one15:46
pabelanger\o/15:46
Shrewspabelanger: there have been some significant code reorg and the UUID feature added to nodepool since last restart. we should watch logs closely at restart15:48
Shrewsi'd submit a change to remove the gate-nodepool-python27-ubuntu-xenial nodepool job for the feature branch, but i can never figure out the project-config magic16:01
*** tristanC has quit IRC16:03
*** hashar is now known as hasharMeeting16:07
pabelangerShrews: sounds good16:07
*** harlowja has joined #zuul16:15
SpamapSmordred: fyi, you are the inspiration for this tweet:  https://twitter.com/spamaps/status/890245921685897216  (specifically https://review.openstack.org/485897)16:23
Shrewsjeblair: is there an existing zuul test that you could recommend that I use as a model for a new autohold test?16:42
Shrewsor is this going to be a "start from scratch" sort of thing?16:43
jeblairShrews: test_check_queue_failure  is the shortest path to a failed job16:46
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Remove ZUUL_CHANGE  https://review.openstack.org/48624116:47
*** hasharMeeting has quit IRC16:48
*** tristanC has joined #zuul16:48
Shrewsjeblair: thank you16:50
jeblairShrews: and there's a self.fake_nodepool (instance of tests.base.FakeNodepool) that will probably be useful.  it's the stand-in for nodepool itself (ie, the remote application which interfaces over zookeeper).  so that might be the place to put a method to query nodes to verify they have hold state in zk, etc.16:54
Shrewsneat. this should be an interesting challenge16:57
clarkbjeblair: comment on https://review.openstack.org/#/c/487243/1 do you want to fix that or should I just push a new patchset then deploy on my test setup against review-dev?17:00
jeblairclarkb: oh sorry, i forgot to check in on those test results.  i'll fix.17:04
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Don't request empty nodesets  https://review.openstack.org/48724317:06
jeblairclarkb: i at least ran test_nodepool tests on it locally this time :)17:06
clarkbthanks, I should have that up and running and testing against gerrit shortly. Need to file a bug against keystone I said I would file yesterday...17:07
pabelangerJul 26 15:56:42 nl01 puppet-user[7892]: (/Stage[main]/Nodepool/Exec[install_nodepool]) Failed to call refresh: Could not find command '${pip_command}'17:11
pabelangerfixing puppet-nodepool17:11
Shrewspabelanger: oops17:13
mordredSpamapS: yes - I agree with you. fwiw, getting testing plumbed in for that is very high on my agenda17:16
mordredSpamapS: hackig on it currently is ... non-optimal17:16
mordredjeblair: wfm re: general sphinx domain17:16
jeblairmordred, tobiash: i spent about 30m on it and still really like the yaml domain idea, but it's *complex*.  so i think i'm going to defer it for a rainy day and continue with the zuul-specific approach for now.  hopefully that will help shape ideas.17:18
clarkbjeblair: https://review-dev.openstack.org/#/c/107960/1 that got things further :) but results in NODE_FAILURE17:18
jeblairby 30 minutes i think i might actually mean an hour.  time flies when you're sphinxing.17:18
clarkbjeblair: good new is that means we've tested just about everything except for submit17:19
jeblairclarkb: neat, i'll peek at those logs17:19
clarkbalso it toally verified -117:19
clarkbtobiash: ^ you were seeing that posting the votes wasn't working right?17:19
jeblairclarkb: where's that zuul running?17:19
clarkbjeblair: its in screen on review-dev (screen owned by my user window 017:19
jeblairclarkb: i think tobiash's error only occurred during submit?17:19
clarkbjeblair: feel free to attach and scroll the logs in window zero17:20
jeblairclarkb: no disk logs?17:20
clarkbjeblair: no I've just been running foreground because it is easy17:20
mordredjeblair: ++17:21
clarkbI can rerun with logs writing to disk if you like17:21
mordred(to rainy day)17:21
jeblairclarkb: i'll try screen first17:21
jeblairderp17:23
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Add zuul:value sphinx directive  https://review.openstack.org/48753017:24
clarkbjeblair: its trying to query the nodeset later on?17:25
clarkb(and that fails because it never was in zk?)17:25
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Don't request empty nodesets  https://review.openstack.org/48724317:26
jeblairclarkb: no i think that's it ^.  it was treating it as a failed node request because "nodepool" did not set the state to fulfilled.17:27
clarkbah17:28
* clarkb retries17:28
jeblairclarkb: screen is yours17:28
jeblairclarkb: wow i need coffee or something17:30
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Don't request empty nodesets  https://review.openstack.org/48724317:30
jeblairclarkb: ^17:30
clarkbjeblair: it certainlly didn'y like ps3 :)17:30
*** dkranz_ has quit IRC17:31
*** dkranz_ has joined #zuul17:32
clarkbhttps://review-dev.openstack.org/#/c/107960/1 that worked17:32
jeblairclarkb: cool, can you try a submit now?17:33
tobiashclarkb, jeblair: error was during handling of successful gate: gerrit accepted the vote but silently ignored the submit17:33
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Fix the rendering of item entries  https://review.openstack.org/48624217:36
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Remove ZUUL_CHANGE_IDS  https://review.openstack.org/48624317:36
clarkbtobiash: gotcha17:38
clarkbjeblair: yup I need to make the jenkisn account inactive so that it doesn't interfere then rerun things17:38
clarkbjeblair: but first I'm trying to properly understand why an empty nodeset implies job success os that I can +2 your change17:39
jeblairclarkb: it doesn't -- noop implies success.  the nodeset is orthogonal (unless it fails, obvs)17:40
openstackgerritDavid Shrewsbury proposed openstack-infra/zuul feature/zuulv3: WIP: Implement autohold  https://review.openstack.org/48669217:40
jeblairclarkb: reason being -- since you can run certain things on an executor without actually needing a node, an empty nodeset job is actually a legit config.17:41
jeblairclarkb: (eg: hitting an rtfd hook.  don't need a node for that)17:41
clarkbgotcha17:42
clarkbso we are running the noop job and it is magically successful as before. Problem was we needed to not request nodes whendoing so17:42
clarkbya I see that now in the executor client17:43
jeblairclarkb: exactly17:43
Shrewsjeblair: so, the pieces aren't in place yet to expect the new autohold test in 486692 to succeed, but does the logic st least seem sound there?  https://review.openstack.org/#/c/486692/3/tests/unit/test_scheduler.py17:45
Shrewss/st/at/17:45
*** harlowja has quit IRC17:46
Shrewsit bypasses using the client, but i don't see any tests doing something similar17:47
clarkbjeblair: I've approved your change. Now to test submit17:47
jeblairShrews: looks dead on17:47
Shrewsjeblair: shocking! lol, thanks a bunch. now i have something to work from17:48
jeblairShrews: i think that's the right thing to do in this case -- this way we're not relying on anything in zuul to tell us the node is held.  we're actually checking zk.17:48
openstackgerritMonty Taylor proposed openstack-infra/zuul feature/zuulv3: Use yarn and webpack to manage status javascript  https://review.openstack.org/48753817:51
openstackgerritMonty Taylor proposed openstack-infra/zuul feature/zuulv3: Migrate console streaming to webpack/yarn  https://review.openstack.org/48753917:51
clarkbjeblair: tobiash I also notice that the +1 from my zuul didn't end up overwriting the -1 from when it failed on node failure. Gerrit comment says Patch Set 1: Verified+1 Verified-117:52
clarkbits psosible we may need to work around new gerrit behavior when setting new votes17:52
clarkbI'm going to go ahead and clear that out for now though and move on to checking submit17:52
mordredclarkb: isn't that a config we need to set in gerrit on repos? did we get that in on the review-dev repo?17:52
clarkbmordred: in this case its not a new patchset its just me voting differently17:53
mordredhrm17:53
clarkbmordred: first I -1'd then recheked and +1'd17:53
clarkbend result was still -1 according to web ui and the comemnt said both :)17:53
mordredclarkb: I certainly hope that's not new intended behavior in new gerrit17:53
tobiashclarkb: ah, could also be such a side effect, now I remembere that clearing votes at start of jobs wasn't working properly17:53
clarkbmordred: ya its possible its related to tobiash's case sensitivity fix17:54
mordredah. gotcha17:54
mordred*phew*17:54
tobiashclarkb: after applying my fix in my deployment I didn't notice such things anymore17:54
clarkbtobiash: good to know17:54
tobiashjust got an idea for a multinode use case... running tox-py35 on 5 nodes in parallel, that could increase the chance of blocking racy tests from landing17:55
tobiash(or prevent any change from landing if a racy test got through)17:56
clarkbI'm going to stop zuul on zuul-dev because marking the user inactive didn't kill the existing ssh connection and I don't want it to dos me (we've seen that in production whee ssh fails)17:58
clarkbdoes this conflict with anyone else's work?17:58
jeblairtobiash: yeah, we actually did something similar for neutron for a while a couple years ago: we just ran a second job.  that idea is easier and more elegant.  :)17:58
jeblairclarkb: nope17:59
tobiashmordred: I've put a question in https://review.openstack.org/#/c/487538/118:00
mordredtobiash, jeblair: yah - especially since the unittest jobs are deisgned to run on "all"18:00
mordredlog collection might be slightly weird ...18:00
tobiashdidn't pabelanger already have some patches in that direction?18:01
mordredtobiash: that's an excellent question - in this case I believe putting it in the repo is 'good' because this is an app and not a library18:02
mordredtobiash: the rust folks have a great writeup on this here: http://doc.crates.io/faq.html#why-do-binaries-have-cargolock-in-version-control-but-not-libraries18:02
mordred(obviously slightly different- but similar philosophy)18:02
mordredtobiash: that siad - we can obviously go either way on that18:03
* mordred will put that as comment on change too - so it doens't get lost18:03
tobiashmordred: ah, so it's for fixing dependencies, now I see...18:04
tobiashmordred: then it *should* be part of the repo, otherwise the build will be broken frequently18:04
tobiashmordred: had such issues a few years ago with composer and it was pain in the ass...18:04
SpamapSmordred: Indeed, but everything can't have tests, so we all have to defuse code bombs every day. :-D18:08
openstackgerritMonty Taylor proposed openstack-infra/zuul feature/zuulv3: Migrate console streaming to webpack/yarn  https://review.openstack.org/48753918:09
openstackgerritMonty Taylor proposed openstack-infra/zuul feature/zuulv3: Use yarn and webpack to manage status javascript  https://review.openstack.org/48753818:09
tobiashlooks like we were all impatient and didn't wait on the test result of 487243...18:11
mordredtobiash: :)18:11
openstackgerritPaul Belanger proposed openstack-infra/nodepool feature/zuulv3: Add zuulv3 jobs for nodepool  https://review.openstack.org/48716918:12
pabelangermordred: Shrews: jeblair: should we pip uninstall nodepool on nl01 first for py27?18:12
mordredpabelanger: probalby not a terrible idea18:13
pabelangerok, will stop nl01 in a few minutes18:13
clarkbjeblair: turns out I didn't define a gate pipeline, with that now done do I need to restart zuul to pick up new pipelines from trusted configs or did that get addressed?18:14
SpamapSanbody know what this is? http://logs.openstack.org/45/486245/2/check/gate-zuul-python35/33bcbe2/testr_results.html.gz <-- looks to be a racey fail somewhere deep in the bowels...18:16
SpamapShttp://logs.openstack.org/45/486245/2/check/gate-zuul-python35/33bcbe2/testr_results.html.gz18:16
SpamapSoops18:16
SpamapSft2.6: tests.unit.test_executor.TestExecutorRepos.test_periodic_override_StringException18:16
jeblairclarkb: i think that should be fine18:16
SpamapSHave seen it a couple of times now18:16
clarkbya I now see the reaosn it didn't work is there is an error in my new yaml18:17
jeblairSpamapS: :|  i'll try to take a look at it later and see if i can guess what might be happening18:17
mordredShrews, tobiash: I still don't get tired of watching consoles stream18:18
SpamapSother ones seem to be producing mass fails that make the subunit too big18:18
tobiash:)18:19
*** amoralej is now known as amoralej|off18:19
pabelangerzuul-npm-build o.018:20
pabelangerthat is new18:20
tobiashclarkb: jlk fixed that in https://review.openstack.org/#/c/483597/18:21
pabelangerokay, stopping nl01 to preform uninstall / pip3 install18:23
clarkbnow running into http://paste.openstack.org/show/616611/ as far as I can tell reading the docs and even reading voluptuous schemas that should be valid?18:23
clarkbbut I notice we have event_approvals, require-approvals, and reject-approvals now and event apparovals which I am using are defined differently in the schema, perhaps that is a bug? or I'm just not reading something right18:23
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Change jobroot_dir to job_dir in executor config  https://review.openstack.org/48716518:24
jeblairclarkb: i think you need a 'gerrit' after require now18:24
openstackgerritMonty Taylor proposed openstack-infra/zuul feature/zuulv3: Migrate console streaming to webpack/yarn  https://review.openstack.org/48753918:24
openstackgerritMonty Taylor proposed openstack-infra/zuul feature/zuulv3: Use yarn and webpack to manage status javascript  https://review.openstack.org/48753818:24
tobiashclarkb: do you have connection specific requirements?18:24
clarkbah ok18:25
jeblairclarkb: require: gerrit: ...the block currently under require...18:25
pabelangernl01.o.o restarted18:26
clarkbhttps://docs.openstack.org/infra/zuul/feature/zuulv3/user/config.html#pipeline doesn't really make that clear18:26
pabelangernodepool 24711  8.0  0.6 2926712 52744 ?       Sl   18:25   0:01 /usr/bin/python3 /usr/local/bin/nodepool-launcher -c /etc/nodepool/nodepool.yaml -l /etc/nodepool/launcher-logging.conf -p /var/run/nodepool-launcher/nodepool-launcher.pid18:26
clarkbit lists approval as a sub item of require18:26
mordredpabelanger: it's new in that patch - because yay zuulv3 we can define jobs along with patches! :)18:26
pabelangermordred: \o/ Wasn't sure we landed that job or not18:27
jeblairclarkb: yep.  i think we forgot to update that.18:27
mordredpabelanger: nope - it's got some issues even so - we should likley not actually land it in that particular form18:27
pabelangerShrews: py35 running for nl01, so far, so good18:27
pabelangermordred: Ya, thought we might have converted our exixting npm build JJB stuff18:28
mordredpabelanger: it does uncover an 'interesting' edge-case - which is that that job needs to install some additional package repos - working around it for now, but might be worth us pondering18:28
Shrewspabelanger: cool. watching log now18:29
openstackgerritPaul Belanger proposed openstack-infra/zuul-jobs master: Move subunit processing into fetch-testr-output  https://review.openstack.org/48584018:29
pabelangermordred: tobiash: ^ nip fixed, if you want to re-review and maybe land18:30
clarkbtobiash: and http://paste.openstack.org/show/616614/ must be what you see with the case sensitivity problem?18:30
clarkbtobiash: basically it says all tests succeeded, I'm reporting, then merge failed so item failed18:30
tobiashclarkb: jepp18:31
pabelangerhttps://review.openstack.org/487173 also makes tox-cover non-voting for zuul, but job is passing so maybe we should just leave it voting?18:31
clarkbok now to pull in tobiash's patch and give it a go. I have to update my config to be Verified too18:31
tobiashclarkb: and the change probably has now V+218:31
pabelangeror, maybe we don't care about coverage on zuul long term. Might be there just for testing18:32
clarkbtobiash: https://review-dev.openstack.org/#/c/107960/1 is the change, it doesn't look like the +2 made it18:32
pabelangerShrews: cool, 487169 is ready now too18:32
openstackgerritMerged openstack-infra/zuul-jobs master: Move subunit processing into fetch-testr-output  https://review.openstack.org/48584018:34
Shrewshrm, i'm not finding the uuid file18:37
Shrewsoh, not a builder. duh18:38
clarkbtobiash: jeblair I seem to have confirmed that tobiash's change fixes the -1 to +1 problem18:39
tobiashyay18:39
clarkbstill getting the it failed to merge error though18:40
clarkboh that may be coming from my merger not from gerrit submit18:40
openstackgerritPaul Belanger proposed openstack-infra/zuul-jobs master: WIP: Simplify run tox task  https://review.openstack.org/48755118:42
clarkbDEBUG:zuul.Scheduler:Adding merge complete event for build set: <BuildSet item: <QueueItem 0x7f3f4806d2b0 for <Change 0x7f3f4807d2e8 107960,1> in gate> #builds: 0 merge state: PENDING> why would merge state be pending if merge complete event is being added?18:42
jeblairclarkb: state is updated after that gets called (that's an event being added to the queue, it's processed later async)18:44
* Shrews will now take a few moments to go through mordred's giant pile18:45
clarkboh! I see the problem. I didn't have a gate pipeline so I added that, well I still don't have a gate job >_>18:45
mordredclarkb: haha18:45
clarkbso I'll need to retest things without tobiash's change as well18:46
tobiashmordred: just read the zuul-web section of your mail18:52
tobiashmordred: what I'm asking myself is wouldn't it make sense to use the event ingestor idea someone here had for the webhook -> github driver data?18:53
clarkbwoo I think I may have just tripped over a zuul bug http://paste.openstack.org/show/616615/ is the result of pushing up https://review-dev.openstack.org/#/c/107964/18:53
clarkbjeblair: ^18:53
jeblairtobiash: that was mordred's idea iirc18:53
tobiashmordred: or is it too early to think about this?18:53
jeblairclarkb: looking18:54
mordredtobiash: so - I think the github patch will largely be the same as what github would need for the ingestor too18:54
mordredtobiash: because of github being webhooks having a scale-out story for it it much easier - and I don't think it's as immediately essential to do the de-duping since load-balancers are pretty good at that sort of thing18:54
tobiashmordred: sure it will work easily for this, just thinking if gearman will stay forever or be replaced at some time completely by zookeeper18:55
jeblairtobiash: replaced eventually.  we call that "zuul v4".18:55
openstackgerritMerged openstack-infra/nodepool feature/zuulv3: Add zuulv3 jobs for nodepool  https://review.openstack.org/48716918:56
mordredtobiash: it's certainly a good question - I know gearman will stay for at least a while, since that'show we're getting data from the scheduler for log streaming ... so I think just using it for this for now is fairly easy and if we do a different approach in the future *should* be easy enough to change18:56
mordredtobiash: but yes - as jeblair says - v4 :)18:56
jeblairclarkb: i verified that copy.deepcopy(re.compile('foo')) errors on 3.4 and 3.518:57
jeblairbut i'm just assuming that's what happened18:57
jeblairi wish deepcopy told you which key failed18:58
jeblairrather than "this"18:58
tobiashmordred: I'm fine with that, just like the idea of having persistent queues of events,ipc,etc in the future18:58
jeblairit's like a clickbait exception.  "You won't believe this error!"18:58
clarkbNew in python! this fails!18:58
clarkbjeblair: but legit bug ya?18:58
* Shrews clicks on jeblair18:59
jeblairShrews: ouch!18:59
clarkbI'll just manually merge the change then restart zuul if I have to18:59
mordredtobiash: ++18:59
jeblairclarkb: i suspect so, yeah.  we may not have any pipeline requirements in the dynamic dependent pipeline addition.18:59
jeblairclarkb: i suspect so, yeah.  we may not have any pipeline requirements in the dynamic dependent pipeline addition test.18:59
jeblairleft off important word :)18:59
clarkbin this case my regex is in the independent pipeline19:00
clarkbso I'm assuming that is what is causing the problem19:00
clarkbjeblair: do you need anything more from me before I submit manually and restart zuul?19:01
jeblairclarkb: nope that helps, thx19:01
Shrewsmordred: do you still see zuul-web acting as the finger protocol gateway too?19:02
clarkbtobiahs's change worked to merge https://review-dev.openstack.org/#/c/107960/1 I'm now going to rollback the case sensitive changes and retest without them to make sure that I wasn't just failing due to lack of gate job19:03
mordredShrews: I don't see why not - it has to get the same info it needs for finger protocol for websocket streaming - and it's also scale-out able19:03
mordredShrews: (most of finger protocol gateway code should be fairly similar to the websocket streaming code - just different socket listener, yeah?)19:03
Shrewsmordred: yeah19:04
mordredShrews:  I mean - we could ALSO write it as a completely separate daemon if we wanted to19:04
tobiashmordred: maybe it makes sense to be able to start it separately (for e.g. starting, scaling separately in a k8s environment)19:04
clarkbmordred: you'll also potentially need to accomodate for raw bytes rather than text because websockets handle the text aspect more natively19:05
mordredclarkb: ++19:05
mordredclarkb: actually - I believe we're emitting as utf-8 encoded bytes rather than text already - but I agree, the receiver on the other side of that is going to be less likely to be expecting weirdness19:06
mordredtobiash: nod. I mean, we can keep the shared "here is how you verify stuff from teh scheduler via gearman" in library code and make a little daemon that uses it - it's an interesting trade-off - since adding another daemon will make some deployment forms nicer and others more work19:07
tobiashmordred: ack19:08
tobiashmordred: where would you see a nodepool status page (like w web-'nodepool list' thingy)?19:08
Shrewsmordred: there is a slight advantage in a separate thing in that the finger gateway MUST be started as root. so zuul-web would have to do privilege de-escalation and fork things which might interact weirdly with asyncio event loops, but i'm sure it could eventually be figured out19:08
tobiashmordred: in nodepool or zuul-web crawling zookeeper?19:08
mordredtobiash: I think in nodepool - there's folks who want to use nodepool without zuul who would want that19:09
tobiashok19:09
mordredShrews: that's a good point19:09
mordredShrews: I mean - you could start it on a high port and depend on a load-balancer in front of it to run on the low port - but I agree, for the simple-case where one gateway is fine, having it separate limits the code that needs root19:10
clarkbso thats weird, I didn't even get gate jobs triggered without tobiash's change19:11
Shrewsmordred: may not be that big of deal since a forked process should have its own event loops. just thinking outloud19:11
clarkbwith tobiash's change the gate runs and merges19:11
clarkbso still not seeing a +2 without merge, it just says I've got nothing to do19:11
tobiashclarkb: without you have to change the config casing again19:11
clarkbtobiash: oh do I have to lower case everything in my config again?19:11
tobiashclarkb: yepp19:11
clarkbtobiash: I thought zuul was normalizing everything to lower case though? or is it only normalizing what it receives from gerrit?19:12
mordredShrews: ++19:12
Shrewspabelanger: nl01 looks good for now. going to monitoring it after it's been running for an extended period19:12
Shrewss/monitoring/monitor/19:12
clarkbin any case its an easy switch back to lower case so giving that a go19:12
tobiashclarkb: almost everything: https://review.openstack.org/#/c/469946/4/zuul/driver/gerrit/gerritconnection.py19:13
tobiashclarkb: allow_needs takes the label as defined in the config19:13
tobiashclarkb: that's why without the patch there is no combination possible to get the casing right in the config19:14
openstackgerritMonty Taylor proposed openstack-infra/zuul feature/zuulv3: Migrate console streaming to webpack/yarn  https://review.openstack.org/48753919:18
openstackgerritMonty Taylor proposed openstack-infra/zuul feature/zuulv3: Use yarn and webpack to manage status javascript  https://review.openstack.org/48753819:18
mordredTIL that an https apt source without apt-transport-https installed makes apt-get update ***HANG***19:20
mordrednot emit an error - just hang19:20
clarkberror: fatal: Failed to submit 1 change due to the following problems: Change 107965: needs Verified19:20
clarkbtobiash: ^ reproduced I think19:21
pabelangerShrews: wfm19:21
*** harlowja has joined #zuul19:21
clarkbtobiash: jeblair so ya I think we should get tobiash's change rebased and squashed (to deal with merge conflict and failing tests) then get that in. As this affects our mysql set up as well19:23
clarkbI haven't done all this testing with v2 though. Beginning to wonder if it is even necessary19:24
clarkbI don't expect v3 and v2 are very different in this gerrit code19:25
*** harlowja has quit IRC19:25
mordredclarkb: yah - I think that part of the gerrit code is mostly the same19:29
tobiashclarkb: the changes are identical (except tests), but the code locations moved to different files/functions19:29
*** jkilpatr has quit IRC19:46
openstackgerritMonty Taylor proposed openstack-infra/zuul feature/zuulv3: Migrate console streaming to webpack/yarn  https://review.openstack.org/48753919:49
clarkbtobiash: would you be willing to rebase and squash the two changes on the v3 branch?19:55
tobiashclarkb: almost done...19:55
clarkbah cool19:55
openstackgerritTobias Henkel proposed openstack-infra/zuul feature/zuulv3: Case sensitive label matching  https://review.openstack.org/46994619:56
tobiashclarkb: here it is ^19:56
tobiash(hopefully with working tests)19:56
jeblairgoogle searches for "sphinx" and "index" are :(  [sphinx is also a fulltext search engine]19:56
tobiashdid run whole py35 suite, but test_idle seemed had a race once19:57
jeblairi should say, sphinx is a fulltext *document* search engine19:57
jeblairso seriously, major overlap here19:57
tobiashjeblair: test_timer seems to be racy20:01
tobiashjeblair: just ran it a few times and got another fail20:02
tobiashs/test_timer/test_idle20:03
tobiashclarkb: yay, +1 from jenkins20:04
jeblairtobiash: timeout or otherwise?20:06
tobiashjeblair: console text rush for more than a minute and ending with http://paste.openstack.org/show/616622/20:08
tobiashjeblair: possibly some crash in python20:10
mordredwhy is did the pep8 job post_failure :(20:12
tobiashmordred: some fetch failure http://paste.openstack.org/show/616625/20:14
tobiashjeblair: did you encounter such stuff already? http://paste.openstack.org/show/616623/20:14
tobiashjeblair: that's dominating my console when test_idle fails20:15
mordredtobiash: that is, unfortunately, a "normal" error20:16
tobiashmordred: ?20:16
mordredtobiash: the fetch failure - it's not actually a failure - it's tox/pip being confused by zuul having a 'remote' configured but that remote not being a URL20:19
tobiashmordred: then that seems to be something during/after gzipping the console log20:22
tobiashmordred: can that fail if we archive it and at the same time write to it?20:22
mordredif so I think it would fail every job - since we should be writing to and archiving every time20:23
jeblairtobiash: ah yeah, that's some extra gc debugging info.  it's being falsely triggered by a preceding error20:25
tobiashmordred: don't know if that could race: https://github.com/openstack-infra/zuul-jobs/blob/master/roles/upload-logs/tasks/main.yaml#L2720:25
jeblairtobiash: we could probably drop that, i think we got what it was debugging under control20:26
jeblairi'll make a patch later20:26
tobiashjeblair: ok20:26
tobiashmordred: maybe the answer can be found in executor debug logs (at least which task failed)20:27
mordredtobiash: sigh. I had looked in the SCHEDULER logs and didn't see anything. I will now go look in the executor like a sane person20:32
*** hashar has joined #zuul20:32
mordrednope. still nothing20:34
tobiashmordred: maybe next time20:38
mordredtobiash: yah - I don't like things falling in to a hole like that20:39
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Provide nicer index entries for config items  https://review.openstack.org/48758020:45
*** dkranz_ has quit IRC20:45
tobiasheod now20:45
tobiashcya20:45
jeblairtobiash: night!20:45
openstackgerritMerged openstack-infra/zuul feature/zuulv3: Remove state_dir from setMountsMap  https://review.openstack.org/48676620:59
*** jkilpatr has joined #zuul21:17
*** hashar has quit IRC21:17
clarkbtobiash: jeblair I left a comment on the category case sensitivity change. I think we can/should remove the last use of normalization just to avoid any ambiguity around what is an acceptable value21:37
clarkbmordred: I'm confused by your big thoughts email, are you suggesting we backport web changes to master?21:40
clarkbmordred: if not I'm not sure I'd worry too much about the backward compatibility issues21:41
clarkb(it is a feature branch afterall and we can spam people beforehand)21:41
jeblairclarkb: my understanding is that we go ahead and do this before we release 3.0.21:54
jeblairclarkb: ie, the transition to this is gnarley.  we already know the transition from 2->3 is gnarley, so doing this then won't make a difference.  doing it *after* 3.0 would be annoying for all.21:55
clarkbjeblair: right but on which branch? CDing relatively stable master has different concerns than CDing not stable v3 branch21:55
pabelangerjeblair: mordred: github credentials now live on zuulv3.o.o21:55
pabelangerI'm guessing we need to restart zuul to pick up settings21:56
pabelangeror reload config21:56
pabelangerwill have to do that in the morning, about to head off to docker meetup this evening21:56
clarkbjeblair: if we merge v3 and webapp changes at once into master and tag 3.0 I think thats fine is what I'm trying to get at21:57
jeblairclarkb: tbh, i don't know that we've worked out exactly when we would switch back to master (before, or at v3.0 release).  but my guess is still on the feature branch.21:57
clarkbbut merging webapp before we merge v3 is where it becomes tricky for consumers21:57
jeblairclarkb: i don't think mordred is suggesting anything go into the master branch before v3 is merged into the master branch21:58
clarkbgotcha21:58
mordredclarkb: yah - this is all v3 related21:58
* jeblair sighs with relief21:59
clarkbI interpreted your concern of breaking all the people as implying you wanted to update master21:59
mordredgotcha - nope, I just want to avoid breaking new v3 users once we release v321:59
mordredand since there's no good graceful way for us to release that shift for CD users, I think we should get it done before we 'release v3'22:00
*** harlowja has joined #zuul22:00
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Provide nicer index entries for config items  https://review.openstack.org/48758022:03
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Use zuul config sphinx directives for pipeline  https://review.openstack.org/48760422:03
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Remove email-filter requirement  https://review.openstack.org/48760722:07
clarkbI'd be curious to see your response to my comments in https://review.openstack.org/#/c/469946/522:26
clarkber jeblair ^22:26
clarkbI'm going to put tobiash's patch back in place on my test setup and test the you already have a verified +1, you recheck with a workflow +1, does it gate behavior. Newer gerrit should fix that for us I think (but we might have to configure it to do so)22:35
jeblairclarkb: yeah, i think removing normalize category is probably a good idea.  that way approval requirements must look the same as reporter actions.22:36
jeblairclarkb: (that's what you were getting at, right?)22:37
clarkbjeblair: ya22:37
openstackgerritPaul Belanger proposed openstack-infra/zuul-jobs master: WIP: Simplify run tox task  https://review.openstack.org/48755122:37
clarkbwoot new gerrit does indeed fix the preexisting vote isn't seen in the event stream problem we have with 2.1122:38
clarkbthings are looking good with the case sensitivity fix in place22:39
clarkbthose were the two items I knew we needed to test. Any other scenarios that check edge cases in gerrit/zuul behavior?22:39
jeblaircan't think of any right now, but i have sphinx brain22:40
openstackgerritPaul Belanger proposed openstack-infra/zuul-jobs master: WIP: Simplify run tox task  https://review.openstack.org/48755122:49
openstackgerritPaul Belanger proposed openstack-infra/zuul-jobs master: WIP: Simplify run tox task  https://review.openstack.org/48755123:01
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Cleanup pipeline requirements  https://review.openstack.org/48761823:11
jeblairclarkb: there's your requirements doc fix ^23:11
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Remove extra GC debug info  https://review.openstack.org/48762223:39
clarkbjeblair: reviewing ^ and in zuul/driver/gerrit/gerrittrigger.py there is approval, require-approval, and reject-approval. Is approval now redundant as well?23:39
clarkbI've also posted comments directly to the change where things are in the files edited23:39
clarkboh nice removing the gc debugging, I take it that means the problem was sorted out (I don't remember)23:40
jeblairclarkb: hasn't shown up except in a false positive in a while23:42
clarkbjeblair: and commented on the GC change23:43
jeblairclarkb: approval is "this event is the addition of an approval" require-approval is "regardless of what this event is, in order for this event to trigger, there must also be an approval"23:44
jeblairthat's an area of docs that still needs revising23:44
openstackgerritJames E. Blair proposed openstack-infra/zuul feature/zuulv3: Remove extra GC debug info  https://review.openstack.org/48762223:46
jeblairclarkb: thanks, fixed ^23:46
clarkbreading the docs they take both of the same info so it is really confusing as to how they are different23:46
clarkbmaybe require-approval can refer to approvals by name?23:47
clarkbthat changes things a bit though and may not be worth the headache to update23:47
jeblairclarkb: when you say refer by name, you mean change the code or change the docs?23:51
clarkbjeblair: the code23:51
clarkbbut I may be misunderstanding the relationship between them23:51
jeblairclarkb: ah, they might be completely different23:52
jeblairclarkb: here's our prod config: http://paste.openstack.org/show/616639/23:53
clarkbah, maybe we call it require-state and approval?23:53
jeblairclarkb: so that works out to "if someone adds a workflow+1, only consider adding it to the check pipeline if jenkins has already left a -2 on it"23:54
jeblairclarkb: 'approval' is the gerrit word for 'vote', that's why we use it.23:55
clarkbanyways, I update my review on that change, I think you did miss a spot unrelated to this thing23:55
clarkb(and tried to explain the reasoning)23:55

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