Tuesday, 2019-02-19

*** jamesmcarthur has quit IRC00:22
openstackgerritMerged openstack-infra/zuul-jobs master: Fix build-docker-image when using buildset_registry  https://review.openstack.org/63765000:25
*** sdake has joined #zuul00:25
*** chandankumar has quit IRC00:28
*** chandankumar has joined #zuul00:29
clarkbin cleaning up the issue queries I notice that we search all queries to find the PR depends on00:30
clarkbany idea if we can search PRs instead (would simplify the test suite as we could delete some fakes I think)00:30
clarkbhrm reading the api docs search for PRs is search for issues00:35
*** jamesmcarthur has joined #zuul00:35
*** jamesmcarthur has quit IRC00:40
*** sdake has quit IRC00:58
openstackgerritClark Boylan proposed openstack-infra/zuul master: Don't request PR issue data  https://review.openstack.org/63672800:59
clarkbI think ^ will pass tests now. I was waiting for testsuite to finish locally  but its far too slow for that and I need to make dinner01:00
clarkbI had to update the test suite/fakes to deal with the changes. Also we should have someone with better knowledge of github api and github3 confirm that should work probably01:01
openstackgerritJames E. Blair proposed openstack-infra/zuul-preview master: WIP: test docker registry  https://review.openstack.org/63703701:01
*** sdake has joined #zuul01:15
*** sdake has quit IRC01:16
*** rlandy has quit IRC01:18
*** sdake has joined #zuul01:21
openstackgerritTristan Cacqueray proposed openstack-infra/zuul master: amqp: add basic trigger  https://review.openstack.org/63745801:32
*** sdake has quit IRC01:42
*** sdake has joined #zuul01:43
*** jamesmcarthur has joined #zuul01:46
*** sdake has quit IRC01:54
*** jamesmcarthur has quit IRC01:56
*** jamesmcarthur has joined #zuul01:58
*** sdake has joined #zuul02:01
*** sdake has quit IRC02:22
openstackgerritTristan Cacqueray proposed openstack-infra/zuul master: amqp: add message informations to the job variables  https://review.openstack.org/63766602:27
*** jamesmcarthur has quit IRC02:41
openstackgerritTristan Cacqueray proposed openstack-infra/zuul master: amqp: add message informations to the job variables  https://review.openstack.org/63766603:08
openstackgerritIan Wienand proposed openstack-infra/nodepool master: [dnm] testing devstack fix  https://review.openstack.org/63766903:11
openstackgerritTristan Cacqueray proposed openstack-infra/zuul master: web: add triggers information to pipeline list  https://review.openstack.org/63767003:13
*** cognifloyd has joined #zuul03:33
*** rfolco has quit IRC03:36
fungiclarkb: 637218 seems to be suffering from a merge conflict03:45
openstackgerritTristan Cacqueray proposed openstack-infra/zuul master: webtrigger: add initial driver and event  https://review.openstack.org/55515304:01
openstackgerritTristan Cacqueray proposed openstack-infra/zuul master: webtrigger: add web route and rpclistener  https://review.openstack.org/55483904:01
*** andreaf has quit IRC04:08
*** andreaf has joined #zuul04:09
*** jlvillal has quit IRC04:14
*** jlvillal has joined #zuul04:14
*** Shrews has quit IRC04:17
*** Shrews has joined #zuul04:19
*** Shrews has quit IRC04:24
*** Shrews has joined #zuul04:25
*** jamesmcarthur has joined #zuul04:26
*** jamesmcarthur has quit IRC04:31
*** chandankumar is now known as chkumar|ruck04:32
*** irclogbot_3 has quit IRC04:55
openstackgerritTristan Cacqueray proposed openstack-infra/zuul master: amqp: add message informations to the job variables  https://review.openstack.org/63766604:57
*** jamesmcarthur has joined #zuul04:58
*** bhavikdbavishi has joined #zuul05:00
*** jamesmcarthur has quit IRC05:03
*** jamesmcarthur has joined #zuul05:38
*** jamesmcarthur has quit IRC05:43
*** bjackman has joined #zuul05:46
openstackgerritTristan Cacqueray proposed openstack-infra/zuul-jobs master: install-kubernetes: fix kube config permission  https://review.openstack.org/63768205:48
openstackgerritTristan Cacqueray proposed openstack-infra/nodepool master: DNM: test install-kubernetes fix  https://review.openstack.org/63768305:49
tristanCzuul-maint, looking for review on https://review.openstack.org/632620 to be able to use add-build-sshkey on static node. thanks :)05:50
*** jamesmcarthur has joined #zuul06:10
*** jamesmcarthur has quit IRC06:15
*** badboy has joined #zuul06:19
*** quiquell|off is now known as quiquell|rover06:29
*** sanjayu__ has joined #zuul06:33
*** sanjayu__ has quit IRC06:38
*** saneax has joined #zuul06:59
*** jamesmcarthur has joined #zuul07:11
*** jamesmcarthur has quit IRC07:15
*** quiquell|rover is now known as quique|rover|r--07:26
openstackgerritTristan Cacqueray proposed openstack-infra/zuul-jobs master: install-kubernetes: fix minikube config permission  https://review.openstack.org/63768207:32
*** jamesmcarthur has joined #zuul07:48
*** jamesmcarthur has quit IRC07:53
zbris it true that having a files section in job definition would prevent zuul from running periodic jobs?08:07
zbri think it was raised https://storyboard.openstack.org/#!/story/2005040 -- is there a workaround for this? we still want to avoid duplicating files section at all child jobs.08:09
*** pcaruana has joined #zuul08:11
openstackgerritTristan Cacqueray proposed openstack-infra/zuul-jobs master: install-kubernetes: fix minikube config permission  https://review.openstack.org/63768208:19
*** bhavikdbavishi has quit IRC08:23
*** saneax has quit IRC08:23
*** saneax has joined #zuul08:23
*** gtema has joined #zuul08:23
*** sdake has joined #zuul08:27
*** themroc has joined #zuul08:30
*** sdake has quit IRC08:37
*** electrofelix has joined #zuul08:38
*** sdake has joined #zuul08:45
*** quique|rover|r-- is now known as quiquell|rover08:46
*** jamesmcarthur has joined #zuul08:50
*** jamesmcarthur has quit IRC08:55
*** hashar has joined #zuul08:55
*** bhavikdbavishi has joined #zuul08:57
*** jpena|off is now known as jpena08:59
*** panda|off is now known as panda09:11
*** hashar has quit IRC09:20
*** hashar has joined #zuul09:20
*** sdake has quit IRC09:25
*** sdake has joined #zuul09:28
*** hashar has quit IRC09:47
*** hashar has joined #zuul09:48
*** sdake has quit IRC09:49
*** jamesmcarthur has joined #zuul09:51
*** jamesmcarthur has quit IRC09:55
openstackgerritMatthieu Huin proposed openstack-infra/zuul master: CLI: fail if trying to enqueue/dequeue a change for the wrong project  https://review.openstack.org/63666209:57
openstackgerritSimon Westphahl proposed openstack-infra/zuul master: Show animated progress bar in preparation phase  https://review.openstack.org/63781010:11
*** hashar has quit IRC10:15
openstackgerritSimon Westphahl proposed openstack-infra/zuul master: Log to job output when running Ansible setup  https://review.openstack.org/63781310:24
openstackgerritTristan Cacqueray proposed openstack-infra/zuul master: web: add jobs list filter  https://review.openstack.org/63365210:25
*** jamesmcarthur has joined #zuul10:27
*** jamesmcarthur has quit IRC10:32
openstackgerritMatthieu Huin proposed openstack-infra/zuul master: CLI: fail if trying to enqueue/dequeue a change for the wrong project  https://review.openstack.org/63666210:42
iurygregoryMorning everyone o/, does anyone has idea how to set a configuration file to be used by tox when running zuulv3? We have functional tests in python-ironicclient https://github.com/openstack/python-ironicclient/blob/master/tools/run_functional.sh but i didnt figure out how could i made it run using zuulv3, any tips?10:45
iurygregoryMy zuulv3 patch is https://review.openstack.org/#/c/633010/10:45
*** hashar has joined #zuul10:50
openstackgerritTristan Cacqueray proposed openstack-infra/nodepool master: config: add statsd-server config parameter  https://review.openstack.org/53556010:53
openstackgerritMatthieu Huin proposed openstack-infra/zuul master: CLI: fail if trying to enqueue/dequeue a change for the wrong project  https://review.openstack.org/63666211:01
mordredtobiash: https://review.openstack.org/#/c/636728 - is that ok for github enterprise?11:17
*** jamesmcarthur has joined #zuul11:29
*** jamesmcarthur has quit IRC11:33
*** bhavikdbavishi has quit IRC11:36
*** bhavikdbavishi has joined #zuul11:37
tobiashmordred: looking11:49
tobiashmordred: looks like this was introduced in ghe 2.1311:53
tobiashmordred: and ghe 2.12 is unsupported since Decenber 12, 201811:53
badboyhow do I delete ~/src/project dir after finishing the job?11:53
tobiashso that would be ok from my point of fuew11:54
tobiashSpamapS: I hope you're not on 2.12 and earlier?11:54
tobiashmordred: commented on https://review.openstack.org/63672811:56
tobiashSpamapS: you definitely want to review ^11:57
mordredtobiash: cool11:57
mordredtobiash: perhaps we should have a policy to only support the same versions of ghe that github supports?11:58
tobiashand I've verified that the labels are there on our 2.1411:58
mordred(although I agree, let's make sure SpamapS is not on old ghe)11:59
mordredtobiash: \o/11:59
tobiashprobably11:59
tobiashand if we want to support new gh features we should either wait for all supported versions to support or use that feature optional11:59
tobiash(e.g. if we want to use graphql optimizations)12:00
mordred++12:00
tobiashe.g I think we might be able to optimize some things with graphql but that's supported for apps only since 2.14 (while 2.13 is still supported)12:01
mordredyeah - so in order to continue supporting 2.13, we'd have to have a "detect app graphql support, if so, use it, if not, use the unoptimized version" type of logic12:02
tobiashyea12:02
tobiashor we wait with graphql until 2.13 is unsupported :)12:03
mordredyeah12:05
mordredI tried learning some graphql the other day ... and I think I still have a lot to learn12:05
tobiash\o/ for merging the multi ansible spec12:05
tobiashbtw, I have a working proof of concept of multi-ansible: https://review.openstack.org/63193112:05
tobiashit's still wip as there is something missing like more docs, release notes, more tests and some further minor things12:06
tobiashbut at least ansible 2.6 is already fully working with zuul-stream functional and also tox remote tests12:07
mordred\o/12:07
tobiashe.g. http://logs.openstack.org/31/631931/8/check/zuul-tox-remote/da9d854/testr_results.html.gz12:07
*** bhavikdbavishi has quit IRC12:08
mordredtobiash: I like how the multi-ansible support works for the container images at container build time12:10
tobiash:)12:10
openstackgerritBrendan proposed openstack-infra/zuul-jobs master: Use zuul_workspace_root variable for Git workspace prep  https://review.openstack.org/63687012:10
*** jpena is now known as jpena|lunch12:30
*** rfolco has joined #zuul12:33
*** bjackman has quit IRC12:48
*** bhavikdbavishi has joined #zuul12:57
*** jamesmcarthur has joined #zuul13:06
*** jamesmcarthur has quit IRC13:11
*** jamesmcarthur has joined #zuul13:12
*** bhavikdbavishi has quit IRC13:14
*** gtema has quit IRC13:15
*** hashar has quit IRC13:18
*** sdake has joined #zuul13:25
*** jamesmcarthur has quit IRC13:32
*** rlandy has joined #zuul13:34
*** jpena|lunch is now known as jpena13:35
*** chkumar|ruck is now known as chandankumar13:45
*** jamesmcarthur has joined #zuul13:49
*** jamesmcarthur has quit IRC13:56
*** gtema has joined #zuul13:59
*** sdake has quit IRC14:05
*** rfolco has quit IRC14:07
*** rfolco has joined #zuul14:08
*** bjackman has joined #zuul14:12
*** sdake has joined #zuul14:13
*** cognifloyd has quit IRC14:18
*** sdake has quit IRC14:19
*** hashar has joined #zuul14:23
openstackgerritMatthieu Huin proposed openstack-infra/zuul master: CLI: fail if trying to enqueue/dequeue a change for the wrong project  https://review.openstack.org/63666214:32
*** goern has quit IRC14:33
*** [GNU] has joined #zuul14:34
*** sdake has joined #zuul14:38
fungizbr: yes, adding a "files" list tells zuul you only want the job to be run if the triggering change alters at least one file in the list. since a periodic trigger involves no file changes, it won't trigger a job which limits its runs based on a files list14:40
fungizbr: the argument has been made that this behavior, while consistent, is counter-intuitive and could be improved14:41
zbrfungi: this means that if we want to reuse a job definition in some periodical and in some file triggered jobs, we can do it only if we create two layered base jobs, one with files and one without files. A bit inconvenient I would say, but I can understand why it would be confused. Alternative would be to add an option to make it ignore patterns when triggered on schedule.14:42
*** saneax has quit IRC14:42
fungii think quiquell|rover mentioned creating a story about ignoring files lists if the trigger isn't relevant for files (timer, ref-updated, et cetera)14:43
jktI'm really struggling with this not-yet-merged "runc" nodepool launcher. Is there any black magic in provider's config tracking, especially its pools?14:47
jktthat code is trying to store something for each running container in a "pool", but that "pool" is actually getting reinitialized periodically in the background from a combination of regular nodepool provider config file and on-disk JSON14:48
jktwere there any changes in this in the past two years? Perhaps tristanC wrote that code in that way before these auto-reinits got introduced, or something?14:49
quiquell|roverfungi: yep is samething, I am puting a review in place to possible fix, ignoring files matchine at timer event type14:52
quiquell|roverfungi: if this is ok14:52
fungisince it's a behavior change, it likely warrants a discussion on the zuul-discuss ml14:53
*** sdake has quit IRC14:53
Shrewsjkt: i have no idea what a "auto-reinit" is wrt nodepool. that seems unique to the runc driver perhaps? i haven't looked at that driver yet14:53
jktShrews: I meant that periodic background thread activity at https://git.openstack.org/cgit/openstack-infra/nodepool/tree/nodepool/launcher.py#n107014:56
jktShrews: that thing calls into nodepool/driver/runc/config.py, apparently re-reading config from /etc/nodepool/nodepool.yaml14:57
pabelangerShrews: wb! do you mind adding https://review.openstack.org/636393/ to your review queue, fixes an issue we are seeing downstream with nodepool and large retries numbers14:57
jktand then there's RuncProvider and RuncLauncher, and these two try to store the info about running containers in each "pool" (pool being each hypervisor)14:58
jktexcept that no matter when I try to debug-log len(pool.containers), it's always 0 even though there are some containers launched by nodepool on that hypervisor14:58
*** sdake has joined #zuul14:59
quiquell|roverfungi: I send an email to zuul-discussoin (I think)15:00
Shrewsjkt: reconfiguring of pools should only happen if there were actual changes to the config. if it's happening all the time, that's a runc driver bug15:00
Shrewsjkt: that's been there since the beginning15:01
Shrewspabelanger: will try. i'm still feeling like poo, but also bored15:01
pabelangerShrews: Oh, no rush then. Get healthy!15:02
jktShrews: I am not necessarily saying that it's destroying some handlers, just that it's apparently sticking data which are supposed to be strictly runtime into a data structure for which there's a background thread to update based on on-disk config15:02
jktthat sounds fishy15:02
quiquell|roverfungi: nop I don't find the email :-(15:03
Shrewsjkt: that's vague enough that i have no idea what you are referring to.  :)  you should probably discuss with tristanC15:04
fungiquiquell|rover: could it be stuck in the moderation queue?15:05
Shrewspabelanger: seems simple enough15:05
quiquell|roverfungi: have resend it15:05
quiquell|roverfungi: now s there15:06
dmsimardtobiash: that multi-ansible patch poc is awesome but reminds me how much we need a better way to properly secure plugins/modules/etc15:06
jktShrews: is this OK? https://review.openstack.org/#/c/535556/22/nodepool/driver/runc/config.py@5215:06
tristanCjkt: it's entirely possible that the quota code for the runc provider doesn't work. it seems like using config.pool.containers isn't correct since it's a foreign data struct15:06
jktgiven that the rest of the code is trying to update this pool.containers as it launches and terminates containers?15:06
Shrewsjkt: i do not know. not familiar with the driver15:07
tristanCjkt: that containers set should be moved to the provider object indeed15:07
jkttristanC: I've seen other providers actually iterating the list of currently running nodes from zookeeper, is that the pattern to follow now?15:07
tristanCjkt: that would be another way to check for current quota indeed15:08
jktI'm also confused a bit by the difference between hasProviderQuota and hasRemainingQuota. When does it happen that a pool to use gets chosen?15:09
jktbecause I see that the openstack driver can, perhaps temporarily, raise an exception to indicate that it cannot launch an already assigned VM right now because the openstack tenant is over quota15:10
jktand it *seems* to me that in runc, this allocation happens right when a node is intially requested, and therefore the request will be left waiting once the quotas actually start working, even if other pools become available15:11
tristanCjkt: i don't remember what is the difference betwen hasProviderQuota and hasRemainingQuota. Perhaps tobiash know?15:12
jktthe docs say that hasProviderQuota should somehow disregard the currently allocated nodes15:14
jktperhaps meaning "can this pool ever accommodate this request?"15:14
tobiashjkt, tristanC: the different is that hasProviderQuota tells you if this provider can ever satisfy this request (e.g. in case of a multinode request that is larger than the provider quota) and hasRemainingQuota tells nodepool if there is enough quota at the moment15:15
tristanCShrews: tobiash: btw, https://review.openstack.org/637682 should fix nodepool-functional-k8s failure15:20
tristanCpabelanger: could you please review on https://review.openstack.org/632620, we need this to use add-build-sshkey with static node15:21
openstackgerritMerged openstack-infra/nodepool master: Properly handle TaskManagerStopped exception  https://review.openstack.org/63639315:26
*** sdake has quit IRC15:28
tobiashclarkb: +2 with question on https://review.openstack.org/63761515:33
tobiashclarkb: do you want to rebase that stack to fix the merge conflict?15:33
clarkbtobiash: that chould cache merged shas too aiui15:35
*** sdake has joined #zuul15:35
clarkband ya I need to rebase once properly awake15:35
tobiashclarkb: the merged sha's were on a different key in the json15:35
tobiash'merge_commit_sha'15:36
clarkbhrm right was the sha field not the same as merged sha in that case? I should make that update. I also realized we should flip the order of addition to the cache in getPRBySha so tjat older PRs are evicted first15:37
pabelangertristanC: why doesn't remove-build-sshkey role work? Isn't that what it does, cleans up the authorized_keys file?15:37
clarkbasis weput nwere shas in first I think so they are least recently used15:37
tobiashdepends on the order in which they come from github15:38
tobiashwe should check that first15:38
tobiashok, according to the docs the default sort order is 'created'15:39
tobiashwe might want 'updated' instead if that can be specified in github3.py15:39
clarkbI think we change it to descending, in the search query15:39
tobiashdescending is default15:41
tobiashbut ++ to make that explicit15:41
tobiashwe can also request 'updated' as sort order here: https://git.zuul-ci.org/cgit/zuul/tree/zuul/driver/github/githubconnection.py#n120415:42
tobiashand make desc explicit15:43
corvuspabelanger: if i understand tristanC's change correctly, it's to handle the case where the post playbook doesn't run15:43
pabelangertobiash: tristanC: left questions on 63262015:43
pabelangercorvus: ah, maybe we if grow the cleanup playbook, this is a good use case15:44
pabelangerhowever, a base post-run job that doesn't run, likely means something else is broken15:44
corvuspabelanger: yes, though there will always be a very small chance even that won't run, if an executor crashes, for example.15:45
openstackgerritMerged openstack-infra/zuul-jobs master: install-kubernetes: fix minikube config permission  https://review.openstack.org/63768215:45
clarkbtobiash: for the merged sha should it be if not open and merge_commit_sha in pr: use merge_commit_sha?15:46
pabelangerk, then suggestion with uuid might not work, if we are trying to cover post-run never running15:46
clarkbor do we always want to cache both if present to be able to lookup either?15:47
corvusclarkb: there's no harm to being able to look up either15:47
corvusclarkb: and we need both15:47
corvusclarkb: the ansible post-merge shippable run used the merge sha15:47
tobiashclarkb: I'd just add it to the cache if that key exists15:47
clarkbya can add both and bump size of the cache to accomodate15:48
openstackgerritQuique Llorente proposed openstack-infra/zuul master: Ignore files at timer trigger  https://review.openstack.org/63791615:51
*** sdake has quit IRC15:52
openstackgerritClark Boylan proposed openstack-infra/zuul master: Rename project to project_name in getPullBySha  https://review.openstack.org/63721815:55
openstackgerritClark Boylan proposed openstack-infra/zuul master: Test GithubShaCache  https://review.openstack.org/63722815:55
openstackgerritClark Boylan proposed openstack-infra/zuul master: Switch to LRU based sha to PR cache  https://review.openstack.org/63761515:55
clarkbthat is just the rebase to make review easier15:55
clarkbnow to make those changes suggested above15:55
quiquell|roverfungi: Have put a review with a unit test and fix for the periodic + files just to illustrate15:56
tobiashk15:56
*** sdake has joined #zuul15:59
*** ianychoi has quit IRC16:00
*** jamesmcarthur has joined #zuul16:01
*** sdake has quit IRC16:03
openstackgerritClark Boylan proposed openstack-infra/zuul master: Switch to LRU based sha to PR cache  https://review.openstack.org/63761516:04
clarkbtobiash: ^ that has both suggestions16:04
*** ParsectiX has joined #zuul16:09
*** ianychoi has joined #zuul16:12
jkttristanC: I think I've fixed it. There's indeed also a TOCTOU race, in addition to what we said earlier; there's plenty of opportunity for race between node allocation and time the the container actually begins starting16:13
openstackgerritJan Kundrát proposed openstack-infra/nodepool master: Implement a Runc driver  https://review.openstack.org/53555616:16
*** bjackman has quit IRC16:18
openstackgerritJames E. Blair proposed openstack-infra/zuul master: Fix typo in build api endpoint  https://review.openstack.org/63622716:28
corvusi'm going to self-approve that ^ it's a rebase of a one-line patch to fix a merge conflict16:29
*** themroc has quit IRC16:29
*** bjackman has joined #zuul16:32
*** cognifloyd has joined #zuul16:34
corvusmordred, tobiash, clarkb: i have a tricky problem.  i changed the zuul_return data type for zuul.artifacts from a list to a dictionary keyed by the image name, so that the dictionary merge that zuul_return performs would automatically handle returning multiple artifacts from different playbooks (without the user having to read in the old values, append to the list, and write it out again).  so now the16:37
corvusansible task looks like: http://paste.openstack.org/show/745381/16:37
corvusbut apparently ansible doesn't jinja template dict keys like that16:38
*** quiquell|rover is now known as quiquell|off16:38
corvusshould i purse trying to find a way to make that work, or should we switch back to expecting zuul.artifacts to be a list, and modify zuul_return to treat the artifacts list specially and automatically append?16:38
corvusor some other option?16:38
mordredcorvus: oy16:39
mordredcorvus: the list form *was* nice - and zuul_return is a thing specifically to return data to zuul, so it doesn't seem like a layer violation for it to grok zuul.artifacts16:41
mordredcorvus: so I think I'm in favor of that16:41
corvusyeah, everything about using it felt better, except for the fact that it would be an exception to the general rule of how data is merged in zuul.  but maybe it's worth it.16:42
clarkbone terrible way around it would be to use another variable and append two vars together in a jinja block?16:42
corvusclarkb: you mean if we switched to list, or is that a way to keep using dict?16:43
clarkbthat is a way to keep using a dict16:43
fungicorvus: just a heads up, kendall nelson is sending you a survey link to use for indicating whether or not we want zuul onboarding and/or project update session slots during the summit in denver16:43
corvushey everyone ^ do we? :)16:43
clarkbyou set fact imagestr = 'image_' then {{ imagestr + image.repository }}:{{image_tag}}16:43
clarkbthat should work because {{}} is an explicit jinja block16:44
corvusclarkb: i'm not following16:44
corvusclarkb: maybe you could mock it up in paste/etherpad16:44
mordredoh - I grok16:44
clarkbcorvus: http://paste.openstack.org/show/745381/ I'm looking at that and you are saying the image_ prepend doesn't work beacuse that isn't treated as jinja?16:44
clarkbI'm saying put that all in {{}} which is explicitly jinja16:45
corvusclarkb: no i'm saying that yaml dict keys don't run jinja16:45
openstackgerritJan Kundrát proposed openstack-infra/nodepool master: Implement a Runc driver  https://review.openstack.org/53555616:45
fungicorvus: i thought the onboarding session in berlin was pretty awesome, even if i did miss a chunk of it running around looking for brochures. i didn't see the project update session though16:45
clarkbcorvus: oh at all got it16:45
corvusyeah, what zuul gets back is literally "image_{{ image.repository }}:{{ image_tag }}" in the dict key16:45
corvusso it seems ansible runs jinja on values but not keys16:46
corvusthere's probably some way to build the artifacts dictionary as a string via a json filter or something16:46
corvusbut that almost certainly does defeat the point of having made this change so it's "easier to use" :)16:47
corvusif there were a simple solution like "prefix the dict key with !" or something, maybe...16:47
corvusbut if the vanguard user of this feature can't use it in a comprehensible way, we may have gone off path :)16:48
pabelanger https://github.com/ansible/ansible/issues/17324 might be the issue you are having, seems to include some suggestions, if you are wanting to try16:48
corvuspabelanger: nice google foo :)16:48
clarkbhttps://github.com/ansible/ansible/issues/17324#issuecomment-449108361 is the workaround? its not a great one imo16:53
clarkb(because its magic you need to know is necessary)16:53
clarkbbut it is also reasonably straightfoward once you have that knowledge16:54
*** pcaruana has quit IRC16:57
tobiashcorvus: maybe you could use the from_yaml filter to set a more complex variable like this. https://docs.ansible.com/ansible/latest/user_guide/playbooks_filters.html#filters-for-formatting-data17:05
tobiashto me that reads like it might solve your problem17:05
tobiashcorvus: I'm thinking about something like this: http://paste.openstack.org/show/745382/17:07
SpamapStobiash: no, we aren't actually even live on GHE yet17:11
SpamapSjust deployed it17:11
SpamapSAnd I'm pretty sure GoDaddy was on 2.13 when I left17:12
tobiashSpamapS: ok, so this is ok then17:12
*** chandankumar is now known as kmrchdn17:12
SpamapScorvus: I've had this problem in the past too. tobiash's method is legit, but I usually just drop to python and write a little module.17:25
mordredSpamapS, corvus: which I think sounds like "handle the list merge in zuul_return"17:30
openstackgerritMerged openstack-infra/zuul master: Fix typo in build api endpoint  https://review.openstack.org/63622717:30
openstackgerritClark Boylan proposed openstack-infra/zuul master: Switch to LRU based sha to PR cache  https://review.openstack.org/63761517:32
SpamapSmordred: yep17:34
tobiashclarkb: +2 with comment on https://review.openstack.org/63721817:42
openstackgerritMerged openstack-infra/zuul master: Don't request PR issue data  https://review.openstack.org/63672817:42
clarkbtobiash: why don't I do a followup to implement that17:43
tobiashclarkb: it's still +2, just wanted to make us think about it17:44
clarkbyup17:45
*** ParsectiX has quit IRC17:49
tobiashSpamapS: do you want to re-review the dockerized test setup (636424)?17:49
*** hashar has quit IRC17:50
corvusyeah, i'm 80% through the patch to switch back to list :)17:52
*** bjackman has quit IRC17:54
openstackgerritClark Boylan proposed openstack-infra/zuul master: Clarify project vs repository in getPullBySha  https://review.openstack.org/63795617:54
clarkbtobiash: ^ hows that?17:55
tobiashclarkb: gread (and sorry if that's too much bikeshedding)17:55
SpamapStobiash: +3'd, :-D17:56
tobiashs/gread/great/17:56
tobiashSpamapS: \o/17:56
clarkbtobiash: no I think part of the problem we had with this code was that it was slightly confusing due to name choices and on top of that was trying to accomodate weird api behavior so simplifying both as much as possible is a win17:57
tobiash:)17:57
SpamapStobiash: it will please me very much to apt remove zookeeperd from my laptop.17:58
tobiashSpamapS: I never installed it and had this off-tree for too long17:58
mordredcorvus: https://review.openstack.org/#/c/637615 has 2x+2 (the lru patch) - do you want to look at it agai before it goes in?18:00
corvusmordred: yeah, i'll give it a quick once-over and +318:00
mordredkk. the rest of teh stack is +318:01
corvusclarkb, mordred, tobiash: i bet 2048 per project still would have been fine even with the merge sha -- remember, we're just aiming for active shas, even with ansible, there's probably at most a few hundred of those.18:02
clarkbcorvus: ya though at 1700 active PRs we'd invalidate when we updated the lru18:03
clarkbone way we could address that is to map in the pr updated timestamp to the cache rather than relying on when we last saw it18:03
clarkb(I believe this is possible with cachetools)18:03
tobiashwith the now correct sorting we'll have the newest pr's in the cache on any cache miss so I'm fine with either18:05
corvusclarkb: good point, we don't want to do that... in fact, "more PR sha's than cache size" is currently a potentially fatal situation, yeah?  we may never succeed in the lookup if we page out by the end of our search...18:05
corvustobiash: oh right18:05
corvusso that should address that case18:05
tobiashyes18:05
clarkbya the sort order is the current mitigation against that18:06
corvusso yeah, we can probably dial the size back down.18:06
clarkbso I think it is correct and we can dial the size back if we like18:06
corvusi'm going to +3 and we can do that later18:06
clarkbok18:06
*** jamesmcarthur has quit IRC18:17
*** jamesmcarthur has joined #zuul18:18
openstackgerritMerged openstack-infra/zuul master: Add dockerized test setup  https://review.openstack.org/63642418:21
*** jpena is now known as jpena|off18:22
*** kmrchdn is now known as chandankumar18:26
*** ParsectiX has joined #zuul18:31
mnaserso i've been working on a small poc of an api (authenticated via openstack credentials) that allows you to create 'connections' to github "targets" (i.e. users or orgs)18:36
mnaserwhen you try to create a connection, it checks if its installed or not, and if it is *not*, it stops, if it is, it adds it with a "verification" link which the user has to open to authenticate their account via github18:36
mnaserthat way, i dont have arbitrary people who have access to the app18:37
mnaserthat's as far as i got so far.  the last moving piece is an executable that runs against that db and retrieves all of those and groups them based on openstack tenants18:37
mnaseris anyone doing something similar in terms of self-serve management of projects? or maybe if there's any zuul targets about auth soon so i dont duplicate stuff18:38
mordredmnaser: mhu is working on support for JWT auth: https://review.openstack.org/#/c/576907/18:39
mnasermordred: ou thats interesting but seems to be pretty hard wired for jwt based auth18:41
clarkbmnaser: is the concern that anyone in github could start sending events to your zuul?18:43
*** gtema has quit IRC18:43
clarkb(I think anyone can already add the app as is? I know i didn't do anything in kata for them to start sending us events)18:43
mnaserclarkb: well anyone can add the app but i dont want someone to be able to start adding an arbitrary project to their account without knowing they control it18:44
mnaseri.e. if the zuul app is added across 400 orgs, i do a add project to kata-containers .. how can i know that openstack user X 'controls' github org 'kata-containers'18:44
*** cognifloyd has quit IRC18:44
mnaserhosted CI solutions solve this by doing login via github and call it a day18:45
clarkbI see you are verifying the addition on the zuul side not the github side18:45
clarkb(since github side is already arbitrary)18:45
mnaseryeah18:45
mnaserand not letting you add to zuul if the app isnt installed either18:45
mnaserso the verificaiton gets the user token which then goes ahead and checks that the user is allowed to install that app (or did indeed install it)18:46
mnaserthat way if someone installs zuul on kata-containers, i cant just 'snipe' it and start doing ci on it or something like that18:46
*** gtema has joined #zuul18:47
openstackgerritMerged openstack-infra/zuul master: Rename project to project_name in getPullBySha  https://review.openstack.org/63721818:51
openstackgerritMerged openstack-infra/zuul master: Test GithubShaCache  https://review.openstack.org/63722818:51
openstackgerritMerged openstack-infra/zuul master: Switch to LRU based sha to PR cache  https://review.openstack.org/63761518:51
tobiashjhesketh: do you want to have a third review on https://review.openstack.org/636146 ? (I'm asking because you gave the second +2)18:52
*** jamesmcarthur has quit IRC18:53
SpamapSmnaser: isn't the tenant configuration enough for this? Would you add a project to your tenant if you didn't know who was going to send events to you?18:54
openstackgerritMerged openstack-infra/zuul master: Clarify project vs repository in getPullBySha  https://review.openstack.org/63795618:55
*** gtema has quit IRC18:56
*** electrofelix has quit IRC19:03
openstackgerritTobias Henkel proposed openstack-infra/zuul master: Remove reference to localhost in zuul_return docs  https://review.openstack.org/63797419:09
*** panda is now known as panda|off19:17
mordredSpamapS: what if you don't know the people, and someone comes and signs up for your service and says "I want to have project X be in my tenant" - bur project X is also already in another tenant - how do you know that the requestor is making a valid request?19:22
openstackgerritJames E. Blair proposed openstack-infra/zuul master: Switch artifact return back to list  https://review.openstack.org/63797919:23
*** jamesmcarthur has joined #zuul19:24
corvusmordred, SpamapS, mnaser: we should make a distinction between adding a project to a tenant for read-only (ie, required-projects, depends-on) purposes, vs read-write (ie project stanzas).  at least until we figure out how to do implied foreign projects in required-projects.  the underlying difference is whether configuration objects (especially "projects") are loaded from the repo.19:25
SpamapSmordred: you can see who is in the org that owns the repo or is in the list of write-access-enabled users fo rthe repo.19:25
corvusthat's just a clarification.  the underlying problem of trust still stands.  just that i think the more precise question is "is it permitted to load configuration objects from this project in this tenant?"  rather than "is it permitted to add this project to this tenant?"19:26
mordredcorvus: ++19:26
mordredSpamapS: yah - but that would involve a human going and looking at an account... and would assume you can map a requestor to a github account in the first place19:27
SpamapSAlso I believe you have to have admin on a repo to add an app to it.19:28
mordredSpamapS: so I *think* mnaser is trying to have a computer be able to map a requstor to a github account and then to check to see what permissions that requestor's github account has on the repository in general19:28
SpamapSYeah I just wonder.. if you can't actually add Zuul to a repo without being an admin, what's the danger?19:29
mordredwhat if someone has already added the zuul app to a repo for the purposes of a different tenant in this shared zuul19:29
mordredthe adding of the app to the repo doesn't necesarily contain any information about what zuul tenant(s) that app might want to be used by - nor which of them, to corvus point, are valid tenants to load zuul config objects from19:30
*** sdake has joined #zuul19:33
SpamapSOh, you can use one app, for multiple tenants?19:34
SpamapSThat seems like a bad idea.19:34
SpamapSPerhaps we should add tenant name to the app config.19:34
mordredthere is only one app instance19:34
mordredSpamapS: it's like travis - there is only one travis app - but when you click to install the app into your repo, it takes you to the post-install url which then does a transaction to tie your gh account info to your travis account info19:36
SpamapSBut I'm pretty sure Travis isn't multi-tenant.19:39
SpamapSsince we have cross-repo concerns, we might have to think harder about it.19:39
mordredwell - I'm 100% certain travis is multi-tenant19:40
mordredthey don't run a new travis for each of the million users19:40
mordredbut I agree - since we have cross-repo concerns, I think we likely need to think harder about it19:41
SpamapSIt's multi-tenant at a different level then maybe?19:41
mnaseran app is meant to be used across several projects19:41
SpamapSThe point is that there aren't two ways to do travis in one repo.19:41
mordredyeah19:41
mordredone cannot have one github repo be connected to 2 different travis users19:41
mnaseri.e. the same travis-ci app gets added to anyone using it19:41
mnasertravis does auth via github though19:41
mnaserso they can very easily know who added what19:42
SpamapSYeah19:42
mordredSpamapS: so - yeah - that's definitely a thing we have that they don't that we need to ponder19:42
mnaserso for me the verification portion is to make sure that the person who installed the app is a github admin that is *allowed* to install the app19:43
mnaseralso i totally used it as a hack project to try out golang which is fun and all19:44
mnaserbut i think ill just rewrite it in python+flask19:44
mnaser..boring i know19:44
mordredmnaser: I think to SpamapS's point - I believe one must be an admin to install an app, no?19:45
mnasermordred: thats correct19:45
SpamapSRight so if the app is installed, it was at least authorized by an admin at that time.19:46
mnaserso the flow here: 1) github user mordred installs foobar-ci on `my-cool-org` in github ... 2) openstack user mordred hits $some_api saying that he'd like to add `my-cool-org` to zuul19:46
mnaserat this state, i dont know that github user mordred is the same person as openstack user mordred19:46
mnaserbecause said api i'm talking about authenticates using openstack credentials19:46
mnaser*IF* this api authenticated using github credentials, i can easily "approve" that because i know its mordred, but mordred in openstack could be mordred1234 as a user and i dont have the link between both19:47
SpamapSmnaser: ahh, the github app should be the one pinging $some_api, which it will do, there's a signup API endpoint that can be different than the hook API.19:47
SpamapSAnd it might even make sense for us to just add that to zuul-web.19:47
mnaserand this is more of an administrative reason.. if mordred adds the app to a project, but SpamapS adds the app in $some_api .. now SpamapS has control over the org in the zuul sense19:48
mnaserand they can disable/enable projects from being tested, etc19:48
SpamapSWe actually did that with BonnyCI. jamielennox did the code.. it's somewhere under https://github.com/BonnyCI19:48
corvusSpamapS, mnaser: oh, so maybe the app registration api endpoint could then do some openstack stuff to get the mapping?19:49
mnaserright, github app can ping $some_api, but said api will say that github user "mordred" did this request, and .. i dont know who mordred is in my api19:49
mnaseryes, thats the whole reason behind the "verification" step, i send you off to a custom link which does oauth at github19:49
mnaserand i get a token back to verify that you have identified correctly19:49
corvusmnaser: right, but if that regestration link did *openstack* auth, then you'd have your mapping19:49
mnasercorvus: yep indeed, but the concern here is i wanted to make it api based so it limits my choices19:50
mnaserthat way a user can easily make the request to add a project via cli, get a url to do a manual verification with and move on, it also helps not keeping long lived associations of users19:51
mnaserit's really a tricky problem19:51
*** sdake has quit IRC19:52
*** sdake has joined #zuul19:55
*** sdake has quit IRC19:58
*** hashar has joined #zuul20:00
*** openstackgerrit has quit IRC20:09
*** gtema has joined #zuul20:19
*** gtema has quit IRC20:35
*** openstackgerrit has joined #zuul20:37
openstackgerritJan Kundrát proposed openstack-infra/zuul master: More parallelism for git clones and checkouts  https://review.openstack.org/63799620:37
jkt^^^ 1.5 minutes off of a 6min job :)20:43
SpamapSmmmm paralell20:50
openstackgerritJames E. Blair proposed openstack-infra/zuul master: Combine zuul.artifacts lists in zuul_return  https://review.openstack.org/63800520:55
corvustobiash, clarkb, mordred, fungi: ^ part 2 of that fix20:55
*** hashar has quit IRC20:55
*** hashar has joined #zuul20:56
*** badboy has quit IRC20:57
openstackgerritJames E. Blair proposed openstack-infra/zuul-jobs master: Use list form of zuul artifact return  https://review.openstack.org/63800721:00
fungitobiash: mordred: is there a reason we're holding approval of 637979?21:13
fungior just raced each other reviewing?21:14
* fungi isn't sure whether to +3 or only +2 that one21:14
tobiashI think it was a race ;)21:14
fungiapproved in that case21:19
fungilooking at the other two patches related to that now21:19
*** takamatsu has joined #zuul21:21
fungiapproved all three21:33
openstackgerritMerged openstack-infra/zuul master: Switch artifact return back to list  https://review.openstack.org/63797921:49
openstackgerritMerged openstack-infra/zuul-jobs master: Use list form of zuul artifact return  https://review.openstack.org/63800721:52
mordredfungi: yes. just a race21:56
openstackgerritMerged openstack-infra/zuul master: Combine zuul.artifacts lists in zuul_return  https://review.openstack.org/63800521:56
*** sdake has joined #zuul21:58
*** hashar has quit IRC21:59
*** sdake has quit IRC22:09
*** rlandy is now known as rlandy|brb22:18
*** rlandy|brb is now known as rlandy22:27
*** sdake has joined #zuul22:52
openstackgerritJames E. Blair proposed openstack-infra/zuul master: Allow extra data in artifact schema validation  https://review.openstack.org/63803822:59
openstackgerritMerged openstack-infra/zuul master: Allow extra data in artifact schema validation  https://review.openstack.org/63803823:33

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