Wednesday, 2020-01-22

openstackgerritJames E. Blair proposed zuul/zuul-jobs master: Add upload-logs-google role  https://review.opendev.org/70371100:07
*** armstrongs has joined #zuul00:09
*** mattw4 has quit IRC00:10
*** jamesmcarthur has joined #zuul01:26
*** jamesmcarthur has quit IRC01:38
*** jamesmcarthur has joined #zuul01:47
*** armstrongs has quit IRC02:01
*** saneax has joined #zuul02:35
*** jamesmcarthur has quit IRC02:50
*** jamesmcarthur has joined #zuul03:13
*** bhavikdbavishi has joined #zuul03:26
*** bhavikdbavishi1 has joined #zuul03:29
*** saneax has quit IRC03:29
*** bhavikdbavishi has quit IRC03:31
*** bhavikdbavishi1 is now known as bhavikdbavishi03:31
*** jamesmcarthur has quit IRC04:14
*** jamesmcarthur has joined #zuul04:15
*** jamesmcarthur has quit IRC04:21
*** jamesmcarthur has joined #zuul04:45
*** rlandy has quit IRC04:47
*** jamesmcarthur has quit IRC04:49
*** raukadah is now known as chandankumar04:50
tobiashclarkb: regarding test runtime, it's true that a large part of the test run in total is git operations and a year ago I've experimented a bit with replacing gitpython by pygit2 which improved the performance quite a bit05:32
*** evrardjp has quit IRC05:34
*** evrardjp has joined #zuul05:34
*** sgw1 has joined #zuul05:39
*** sgw has quit IRC05:41
*** saneax has joined #zuul07:24
tobiashfrickler: regarding your question about recheck: in the zuul tenant we dropped the clean check requirement to enable us to quickly take critical zuul changes into gate07:57
*** themroc has joined #zuul08:10
*** tosky has joined #zuul08:27
*** jpena|off is now known as jpena08:43
reiterativefungi Thanks! I was using the git connector - changing it to gerrit has done the trick!08:48
openstackgerritSimon Westphahl proposed zuul/nodepool master: Centralize logging adapters  https://review.opendev.org/70340708:50
openstackgerritSimon Westphahl proposed zuul/nodepool master: Pass node request handler to launcher base class  https://review.opendev.org/70354908:50
openstackgerritSimon Westphahl proposed zuul/nodepool master: Annotate logs in launcher  https://review.opendev.org/70355808:50
openstackgerritSimon Westphahl proposed zuul/nodepool master: Annotate logs in node request handler  https://review.opendev.org/70355908:50
openstackgerritSimon Westphahl proposed zuul/nodepool master: Include event id in node request listings  https://review.opendev.org/70356008:50
openstackgerritSimon Westphahl proposed zuul/nodepool master: Annotate logs in zk module  https://review.opendev.org/70356108:50
*** hashar has joined #zuul08:53
*** yolanda has quit IRC08:54
*** yolanda has joined #zuul09:00
openstackgerritIan Wienand proposed zuul/zuul-jobs master: ensure-tox: use pip3 in preference to pip  https://review.opendev.org/70369409:22
openstackgerritBenjamin Schanzel proposed zuul/zuul master: Fix Test Case "TestScheduler.test_timer_with_jitter"  https://review.opendev.org/70374909:22
openstackgerritBenjamin Schanzel proposed zuul/zuul master: Fix Test Case "TestScheduler.test_timer_with_jitter"  https://review.opendev.org/70374909:25
openstackgerritIan Wienand proposed zuul/zuul-jobs master: ensure-tox: use pip3 in preference to pip  https://review.opendev.org/70369409:39
openstackgerritMerged zuul/zuul master: tox: reduce deps used for pep8 env  https://review.opendev.org/70363409:47
openstackgerritBenjamin Schanzel proposed zuul/zuul master: Fix Test Case "TestScheduler.test_timer_with_jitter"  https://review.opendev.org/70374909:53
*** bhavikdbavishi has quit IRC10:12
openstackgerritMerged zuul/zuul-jobs master: Make ara-report role to zuul_return an artifact  https://review.opendev.org/69768110:33
openstackgerritClément Mondion proposed zuul/nodepool master: add tags support for aws provider  https://review.opendev.org/70365110:37
openstackgerritClément Mondion proposed zuul/nodepool master: add tags support for aws provider  https://review.opendev.org/70365110:47
openstackgerritAntoine Musso proposed zuul/zuul master: test: prevent ResourceWarning in test_bubblewrap  https://review.opendev.org/70376710:51
openstackgerritClément Mondion proposed zuul/nodepool master: add tags support for aws provider  https://review.opendev.org/70365110:55
*** hashar has quit IRC10:56
*** pcaruana has joined #zuul11:02
*** themroc has quit IRC11:09
*** xeivieni has joined #zuul11:13
*** bhavikdbavishi has joined #zuul11:17
*** bhavikdbavishi1 has joined #zuul11:20
*** bhavikdbavishi has quit IRC11:21
*** bhavikdbavishi1 is now known as bhavikdbavishi11:21
*** xeivieni has quit IRC11:23
*** hashar has joined #zuul11:46
*** zxiiro has quit IRC11:56
openstackgerritAntoine Musso proposed zuul/zuul master: test: prevent ResourceWarning in test_client  https://review.opendev.org/70378211:58
*** avass has joined #zuul12:04
*** jpena is now known as jpena|lunch12:16
*** dmellado has quit IRC12:24
*** dmellado has joined #zuul12:26
*** hashar has quit IRC12:27
*** zbr has quit IRC12:34
*** zbr has joined #zuul12:35
*** zbr_ has joined #zuul12:43
*** zbr has quit IRC12:46
*** zbr_ has quit IRC12:46
*** zbr has joined #zuul12:48
*** rlandy has joined #zuul12:59
*** avass has quit IRC13:05
*** jamesmcarthur has joined #zuul13:18
*** jpena|lunch is now known as jpena13:21
*** zbr has quit IRC13:26
*** avass has joined #zuul13:28
*** zbr has joined #zuul13:29
openstackgerritClément Mondion proposed zuul/nodepool master: add tags support for aws provider  https://review.opendev.org/70365113:33
*** jamesmcarthur has quit IRC13:34
openstackgerritClément Mondion proposed zuul/nodepool master: add tags support for aws provider  https://review.opendev.org/70365113:35
*** jmaselbas has joined #zuul13:39
*** jamesmcarthur has joined #zuul13:49
*** sshnaidm is now known as sshnaidm|mtg13:55
tobiashmordred: are you here by chance?14:03
tobiashthe nodepool image build job has a problem because of not having gcc available (in the nodepool-base target, not the builder stage)14:03
tobiashlooks like pip doesn't install the netifaces wheel but rebuild it again14:04
tobiashdespite having the wheel cache here: https://opendev.org/opendev/system-config/src/branch/master/docker/python-builder/scripts/install-from-bindep#L2614:04
openstackgerritClint 'SpamapS' Byrum proposed zuul/zuul master: Add irrelevant-branches negative matcher  https://review.opendev.org/55280914:05
openstackgerritClint 'SpamapS' Byrum proposed zuul/zuul master: Use re2 for change_matcher  https://review.opendev.org/53638914:05
fungitobiash: have a link to an example run where it's rebuilding from sdist?14:13
*** hashar has joined #zuul14:13
*** jamesmcarthur has quit IRC14:14
tobiashfungi: https://storage.gra.cloud.ovh.net/v1/AUTH_dcaab5e32b234d56b626f72581e3644c/zuul_opendev_logs_899/703407/3/check/nodepool-build-image/899314b/job-output.txt14:14
tobiashessentially it just ignores the prebuilt wheels from the step before14:14
openstackgerritClint 'SpamapS' Byrum proposed zuul/zuul-jobs master: Add a markdownlint job and role  https://review.opendev.org/60769114:20
tobiashsounds a bit like https://github.com/pypa/pip/issues/685214:23
tobiashbut this is marked as fixed14:23
tobiashwe might need to update pip in the python-builder and python-base images due to https://github.com/pypa/pip/issues/6852 maybe not in the pip version that is used14:27
tobiashI'll try that locally14:27
*** hashar has quit IRC14:28
*** jmaselbas has left #zuul14:29
fungitobiash: one thing i notice is that the reusable wheel cache in our ci system only carries python 3.6 wheels, not 3.7: http://files.openstack.org/mirror/wheel/ubuntu-18.04-x86_64/n/netifaces/14:30
fungiand that job is using 3.714:31
tobiashfungi: the build works like this: builder image builds wheels, then the nodepool-stage image gets them from the builder image and uses the cache pip built there14:31
tobiashso this shouldn't use the wheel mirror but the local wheel cache14:31
fungii see, and i agree the log does show it building twice14:32
fungiit reuses the cached download of the sdist, not the cached wheel it built14:32
tobiashyes14:34
openstackgerritClint 'SpamapS' Byrum proposed zuul/zuul master: Use re2 for change_matcher  https://review.opendev.org/53638914:35
tobiashfungi: confirmed, upgrading pip in builder and base image prior to building the wheels fixes it locally, I'll upload a fix14:38
fungitobiash: oh, awesome--thanks!14:44
*** jamesmcarthur has joined #zuul14:45
fungii wonder if we shouldn't also try to use opendev's wheel cache, though that wouldn't have helped in this particular case at the moment14:45
*** jamesmcarthur has quit IRC14:46
*** jamesmcarthur has joined #zuul14:46
tobiashremote: https://review.opendev.org/703807 Upgrade pip in python-builder and base14:48
tobiashthis should unbreak nodepool jobs ^14:48
*** sgw1 is now known as sgw14:48
tobiashin case it's hard to land this quickly I could also do the same workaround in nodepool in the meantime14:49
openstackgerritTobias Henkel proposed zuul/nodepool master: Temporarily fix image build in nodepool  https://review.opendev.org/70381114:52
tobiashthis fix works locally in nodepool ^14:52
*** saneax has quit IRC14:57
openstackgerritClément Mondion proposed zuul/nodepool master: add tags support for aws provider  https://review.opendev.org/70365115:06
*** chandankumar is now known as chkumar|ruck15:10
*** swest has quit IRC15:12
*** zxiiro has joined #zuul15:12
Shrewstobiash: thanks for looking into that. is there a particular version of pip we should avoid?15:12
Shrewsor is just the upgrade enough?15:13
tobiashShrews: upgrade is enough afaik15:13
Shrewsk15:13
fungi20.0.0 had a nasty bug but as long as you use 20.0.1 it should be fine15:14
Shrewsi've approved it15:14
tobiashit looks like that caching was broken in all versions until last november15:14
fungiyes, that's how i read it as well15:14
tobiashI'm just not sure why we're hitting this just now15:14
fungidid we recently switch the job to python 3.7?15:14
tobiashmaybe we got upstream built versions of netifaces before15:15
tobiashor that15:15
funginetifaces publishes manylinux1 wheels for 3.4 through 3.6 but not (yet) 3.715:15
fungii expect they'll add 3.7 wheels the next time they make a new release15:15
Shrewswere the zuul upload image jobs not hitting this?15:19
tobiashShrews: zuul didn't hit this because it probably doesn't pull in netifaces15:20
*** chkumar|ruck is now known as chkumar|rover15:23
openstackgerritClément Mondion proposed zuul/nodepool master: add tags support for aws provider  https://review.opendev.org/70365115:31
*** chkumar|rover is now known as raukadah15:35
*** sshnaidm|mtg is now known as sshnaidm15:37
corvuslooks like the python-builder change is going through, so maybe we don't need to merge the nodepool change?15:50
Shrewscorvus: that's correct15:53
openstackgerritMerged zuul/zuul master: test: prevent ResourceWarning in test_bubblewrap  https://review.opendev.org/70376716:01
openstackgerritClément Mondion proposed zuul/nodepool master: add tags support for aws provider  https://review.opendev.org/70365116:07
tristanCwould it possible to make zuul operate on all the project hosted on a platform?16:12
tristanCfor example, the src.fedoraproject.org host 30k projects and it seems like adding them all to the tenant configuration is not going to be sustainable.16:12
tristanCalso i noticed gerrit is sending a 'project-created' event, would it then be possible to tell zuul to add such new project to the untrusted list of a tenant?16:13
corvustristanC: i think the first would be possible (but not trivial).  i think the second idea would depend on the first.16:17
corvustristanC: to do the first, i think the configloader would need to ask the source-connection for the list of projects.  the secound would just have to trigger a full-reconfigure when that event arrives.16:18
clarkbcorvus: in the case of gerrit at least, doesn't the project list essentially act as  filter of gerrit events?16:18
corvustristanC: keep in mind that order matters with projects listed in the tenant config, so you'd want to be able to support listing some projects explicitly, then having the system collect the rest.16:18
clarkbif that is how it works wouldn't the easiest thing be to not filter those events and handle all of them?16:19
clarkbah its the config ordering that matters16:19
corvusclarkb: zuul expects to know all the projects it manages16:19
corvus(i think there are many places that depend on verifying that a project is known; i think changing that would be a big job)16:20
corvustristanC: obviously for the moment, you could write a quick python script to write out the tenant yaml for fedora and see how zuul handles 30k projects16:23
*** mattw4 has joined #zuul16:24
Shrewstobiash: fyi, i rechecked 703407 to see if nodepool is unbroken16:25
pabelangercorvus: tristanC: Couldn't https://zuul-ci.org/docs/zuul/discussion/components.html#attr-scheduler.tenant_config_script be used? Or16:27
pabelangerdid I not understand the comments16:27
corvuspabelanger: sure.  whether a temporary script is run by zuul or manually, it's the same.  but i think tristanC is suggesting that "all the projects in the system" is a reasonably-common enough case that maybe it should just be supported by the drivers.16:28
tristanCthe issue with the current tenant configuration is that on restart or reconfiguration, the scheduler serially list all the branches of all the projects, which i think would just take too long for that many projects16:29
corvusthat sounds like a very different question16:30
*** tosky has quit IRC16:31
tristanCyes, i was wondering that in the event of such 'operate on all the project', zuul could implement a lazy loading of the projects16:31
corvusthat's more like clarkb's suggestion.  i think it would require major changes to zuul.16:31
corvusan alternative would be a new kind of reconfiguration that keeps the branch cache of existing projects and just does lookups on new ones.16:33
tristanCor perhaps with the scheduler ha, then that won't be necessary as i guess the project status (e.g. branch list and conf) would be stored in zookeeper16:33
corvusyes, i anticipate that would be the case16:33
corvusimplementing the "new kind of reconfiguration that keeps the branch cache of existing projects and just does lookups on new ones" now should be compatible with the future ha scheduler work16:34
Shrewsthat would be interesting to see the impact on ZK that would have for many projects   :)16:34
corvusShrews: yeah, it's unclear how much data we'll be able to store there.  maybe we can put all of the cached config data in zk, or maybe it's too much and we'll have to put checksums in there and have the schedulers each get a copy of the data and store it locally16:38
tristanCcorvus: with that caching feature, how would zuul knows if the cache is consistent?16:38
corvustristanC: which cache?16:38
tristanC"the branch cache of existing projects"16:39
corvustristanC: that exists now -- the start of the configuration process is to create an empty cache for every project-branch, then load the raw text of the config into that cache.16:39
tristanCoh, i thought it would be persisted on disk16:40
corvusah, no that's a ram cache16:40
corvuswhen we move to ha scheduler, we will need to persist it and deal with coherency16:40
corvusmy suggestion of how to deal with the fact that creating and repopulating the current cache on full-reconfigure is too slow with 30k projects is to add a new kind of reconfigure (delta-reconfigure?) that just initializes the branch cache for each new project (and removes it for each old project)16:41
tristanCiiuc, delta-reconfigure could be implemented without changing the scheduler internals16:42
corvustristanC: correct, only scheduler change is the event handling around it.  it would mostly be a change to configloader to do less than it does on full-reconfigure.16:43
corvustristanC, clarkb: the main reason that zuul needs to know about all the project branches in the system is that's how it knows what configuration to read.  imagine a system where that wasn't the case, and a change to dib arrived and tried to run one of the functest jobs and failed because zuul had not loaded the nodepool project config yet.16:43
tristanCand then, with further work on the ha scheduler, we would be able to cold restart the scheduler without looking up every project16:44
corvustristanC: yes, so that most reconfigurations are just deltas16:44
tristanCalright, thank you for the prompt feedback and suggestions16:44
fungione thing i worry about with relying on project-created events from gerrit is what happens when you miss one of those16:45
corvus(i'm sure we could engineer some compromises to support lazy-loading, but it would be a significant design/engineering effort)16:45
corvusfungi: yep; one of the ideas of full-reconfigure is it is always an option to fix things if they somehow get out of sync16:45
tristanCoh, and the other thing we would need is a 'get-all-project' source driver function , and a way to indicate a tenant to add all the missing project from a source to the untrusted list16:45
fungiif zuul misses a patchset-created or comment-added event or whatever then it's more easily addressed16:45
corvusi have some errands to run this morning, my availability may be limited.16:46
corvustristanC: correct16:46
fungii'm finishing up a zuul section for an upcoming osf newsletter... aside from the zuul and nodepool releases in december/january (and the features and changes they brought), is there anything else worth mentioning since november?16:46
fungioh, i guess the renewal of the pl position16:46
fungidocumentation overhaul16:46
clarkbdocumentation overhaul is probably worthy of the focus there given the audience?16:47
fungiyep16:47
pabelangerspeaking of specs for zuul. What are folks thoughts on maybe starting up again the discussion on circular dependencies: https://review.opendev.org/643309/ ?16:47
pabelangerThe topic recently came up on ansible side, with new collection split that is happening16:48
openstackgerritClément Mondion proposed zuul/nodepool master: add tags support for aws provider  https://review.opendev.org/70365116:48
pabelangertobiash:^ I am not sure simon IRC handle16:48
tobiashpabelanger: his irc handle is swest16:52
pabelangerthanks!16:54
Shrewstobiash: nodepool-build-image passed. \o/17:07
Shrewsthx again17:07
fungianyone recall where we discussed formalizing our ansible support lifecycle? i found pabelanger's e-mail from october: http://lists.zuul-ci.org/pipermail/zuul-discuss/2019-October/001043.html17:09
tobiash\o/17:10
fungii'm not seeing it in any of the review comments for removing 2.5, adding 2.9 or switching the default to 2.817:10
Shrewsfungi: https://zuul-ci.org/docs/zuul/reference/developer/specs/multiple-ansible-versions.html?highlight=ansible#deprecation-policy17:10
fungihaha, thanks Shrews!!!17:10
fungilooks like we should add it to https://zuul-ci.org/docs/zuul-jobs/policy.html#deprecation-policy17:12
*** mattw4 has quit IRC17:12
fungior...somewhere17:14
fungithough i recall discussion getting more detailed about how to decide which versions to deprecate, which to select as default17:14
Shrewshrm, don't recall17:16
*** mattw4 has joined #zuul17:19
pabelangerfungi: http://eavesdrop.openstack.org/irclogs/%23zuul/%23zuul.2019-12-09.log.html#t2019-12-09T16:22:34 is last time I remember it coming up. I did sign up for doc on ansible removal, but haven't started it TBH17:21
*** sshnaidm is now known as sshnaidm|afk17:27
openstackgerritClément Mondion proposed zuul/nodepool master: add tags support for aws provider  https://review.opendev.org/70365117:27
fungipabelanger: no worries, i was going to try to link to some record of the plan, but maybe i'll just say it's in the process of being formalized instead17:27
*** evrardjp has quit IRC17:34
*** evrardjp has joined #zuul17:34
*** jpena is now known as jpena|off17:48
openstackgerritMerged zuul/zuul master: tests: remove test_repo_repr  https://review.opendev.org/70369817:49
openstackgerritClint 'SpamapS' Byrum proposed zuul/zuul-jobs master: Add a markdownlint job and role  https://review.opendev.org/60769117:50
*** jamesmcarthur has quit IRC18:05
*** jamesmcarthur has joined #zuul18:06
*** jamesmcarthur has quit IRC18:07
*** bhavikdbavishi has quit IRC18:09
*** jamesmcarthur has joined #zuul18:38
*** hashar has joined #zuul18:56
*** jamesmcarthur has quit IRC19:00
*** paladox is now known as paladox_UK_IN_EU19:09
*** paladox_UK_IN_EU is now known as paladox19:09
*** jamesmcarthur has joined #zuul19:13
openstackgerritMerged zuul/nodepool master: Make flake8 config compatible with latest version  https://review.opendev.org/70341019:14
openstackgerritMerged zuul/nodepool master: Handle event id in node requests  https://review.opendev.org/70340619:14
*** paladox is now known as paladox_UK_IN_EU19:15
*** hashar has quit IRC19:30
*** hashar has joined #zuul19:30
openstackgerritMerged zuul/nodepool master: Centralize logging adapters  https://review.opendev.org/70340719:34
*** gmann is now known as gmann_afk19:38
*** paladox_UK_IN_EU is now known as paladox19:51
*** patrick34 has joined #zuul20:02
patrick34Hi20:04
patrick34I am trying to use kubernetes as build nodes for zuul. I was able to successfully configure my cluster in nodepool and I ged pods ready in my node list.20:05
patrick34However I can't seem to build anything. I wonder if I am not missing something in the required configs for kubernetes20:05
patrick34My job starts but returns Gathering Facts: MODULE FAILURE: error: You must be logged in to the server (Unauthorize20:06
patrick34I feel like I might need to export KUBECONFIG somewhere in the zuul configurations.. ?20:12
*** gmann_afk is now known as gmann20:18
pabelangerwhat does your nodepool.yaml file look like?20:19
pabelangerI don't think kubectl can do facts20:21
tristanCpabelanger: nodepool creates a service account for zuul to use, perhaps your kubernetes provider doesn't let service account run exec on pod?20:21
tristanCoops, that was meant for patrick34 ^20:21
patrick34hum I use a vanilla rancher 'k3s' depoyment, pretty sure the default provider gives me all permissions20:22
patrick34I use the same kube config file for myself as a test and I can run exec20:22
patrick34here'S my nodepool file pabelanger https://gist.github.com/plaurin84/93f01dad7c5f91548b1b9e1279aba04e20:25
tristanCpatrick34: if you run 'zuul-executor keep', then you'll find the kubeconfig file used by zuul in /var/lib/zuul/builds/{uid}/.kube/config20:27
pabelangerthanks, are you able to share job log too?20:28
clarkbjust remember to turn that off once you've figured it out or your disks can fill up, but that is a good debugging tip /me needs to remember it exist more often20:28
pabelangerGathering Facts, to me is ansible 2.920:28
pabelangerif that comes from a task20:28
pabelangerbefore 2.9, that wasn't logged20:28
tristanCpabelanger: fwiw, Software Factory CI posted a build running with kubectl on https://review.opendev.org/#/c/682049/20:29
patrick34zuul-executor keep doesn't seem to work Exception: Unable to locate config file in ['/etc/zuul/zuul.conf', '~/zuul.conf']20:30
patrick34however that file exists20:30
patrick34oh nvm20:30
pabelangerack20:30
clarkbpermissions issue probably20:30
patrick34was using my reg user, used sudo it works20:30
patrick34sooo whawt does it do now20:31
patrick34zuul-executor keep20:31
pabelangeras tristanC said, you'll start to see build artifacts on your executor now20:31
pabelangerso you can inspect content and validate kube.conf is correct20:32
patrick34oh I see20:32
patrick34in the logs if I run a job?20:32
tristanCpatrick34: you need to recheck a failed job, then look for a .kube/config file in the zuul home dir20:33
patrick34ok20:33
tristanCpatrick34: arg, you would also need to use autohold to keep the namespace20:33
patrick34okay will do20:34
patrick34pods are quick gotta be fast20:34
corvusthe .kube/config should show up in the build dir, right?20:35
tristanCcorvus: yes, it's setup here: https://opendev.org/zuul/zuul/src/branch/master/zuul/executor/server.py#L172220:36
corvusso once you recheck a job, it should be in a directory like /var/lib/zuul/builds/$UUID/work/.kube/config  where $UUID is the unique id of the build (you can see it in the logs)20:36
pabelangerwhat does work/.kube/config contain?20:37
tristanCpabelanger: the service account token to access the namespace created by nodepool20:38
pabelangertristanC: is that onetime use?20:38
tristanCpabelanger: yes, it's auto created by the k8s service for service account20:39
pabelangerack, mostly wondering, if that is something we could collection to aid debugging for jobs20:40
corvusso if the namespace is held too, you can run "kubectl --kubeconfig /var/lib/zuul/builds/$UUID/work/.kube/config version" and verify things are working.20:40
corvusand kubectl exec, etc20:41
*** wxy-xiyuan has quit IRC20:41
patrick34checking20:41
tristanCpatrick34: are you running nodepool-3.11.0 ?20:43
patrick343.9.1.dev620:44
patrick34nodepool seems to be working fine with kubernetes20:44
patrick34okay I got my debug node20:44
tristanCpatrick34: 3.11.0 includes a fix regarding how the token it creates for zuul is encoded, you might need to upgrade to get zuul able to use the pod20:45
tristanCpatrick34: ftr it's https://review.opendev.org/68743520:45
patrick34I can't find any file or zuul config file in the pod20:46
patrick34btw here's the log https://gist.github.com/plaurin84/c49d973e4bdfa7903d545facb2f8c4c420:46
patrick34also I don't get the 'namespace' part of the nodepool config. It creates the namespace for the pod to run, but what's the other namespace for?20:47
pabelangerand if you look in executor logs, you see the traceback from ansible right?20:47
patrick34yes20:48
openstackgerritJames E. Blair proposed zuul/zuul-jobs master: Add upload-logs-google role  https://review.opendev.org/70371120:48
corvuspatrick34: the config file would be on the executor in a path like /var/lib/zuul/builds/$UUID/work/.kube/config20:48
*** panda has quit IRC20:49
patrick34okay yes I see this20:51
*** panda has joined #zuul20:51
patrick34oh it's a bit different than my config file20:51
patrick34the context uses a user that is not 'default'20:52
patrick34shouldn't nodepool or the executor 'create' this user in the cluster?20:52
tristanCpatrick34: nodepool creates a namespace and service account for each build20:53
patrick34I see20:54
patrick34I only see the default service account in my cluster20:54
tristanCpatrick34: i suspect nodepool-3.9.1.dev6 has an issue where it store the token base64-encoded twice, it's fixed by https://review.opendev.org/687435 and you need to upgrade to nodepool-3.11.020:54
patrick34okay I don't feel safe upgrading this critical cluster ..20:55
patrick34I just tested something, I don't see any serviceaccount being created when the job is running20:56
patrick34using watch kubectl get serviceaccounts20:57
pabelangeris self-provisioner setup on default?20:58
pabelangerI am juat reading https://zuul-ci.org/docs/nodepool/configuration.html#attr-providers.[openshift].context20:58
pabelangerjust*20:58
pabelangeractually20:58
pabelangerhttps://zuul-ci.org/docs/nodepool/configuration.html#attr-providers.[kubernetes].context20:58
pabelangeris k8s20:58
patrick34yes providers.[kubernetes].context is set to default20:59
pabelangerwhich doesn't reference self-provisioner20:59
patrick34but this thing I'm not sure it works20:59
patrick34          - name: kubernetes-namespace            type: namespace20:59
tristanCpabelanger: self-provisioner is specific to openshift, and it's not setup by default, you have to ask an admin to set it for you21:00
patrick34yeah I don't use openshift21:00
patrick34I'm pretty much the sole admin of all this :)21:00
tristanCpatrick34: you might need to use `kubectl get --all-namespaces=true serviceaccounts` to see what nodepool creates21:02
patrick34oh yeah I forgot that service accounts are namespaced21:02
patrick34okay for each node I see a default and a zuul-worker21:03
patrick34'' for each namespace associated with a node21:03
patrick34sooo, if everything seems in order, I guess it might be the issue you posted earlier maybe21:05
patrick34not sure how I can see if the bug is relevant21:05
tristanCpatrick34: you can try to b64decode twice the token in $UUID/work/.kube/config21:06
patrick34the user token okay trying21:06
*** pcaruana has quit IRC21:07
tristanCthat's the bug, the user token should only be encoded once21:08
pabelangertristanC: maybe we should add update note for nodepool release notes too, if this turns out to be the issue21:08
tristanCpabelanger: yes21:09
patrick34I was able to decode it once, not twice21:10
patrick34I decoded once and put it back as user token, now I have different error I guess that's a good sign21:10
patrick34Error from server (Forbidden): pods is forbidden: User "system:serviceaccount:sqa-tests-ipmi-community-k3s-0000350177:zuul-worker" cannot list resource "pods" in API group "" at the cluster scope21:10
patrick34(manually doing the kube commands by hand with KUBECONFIG var21:11
patrick34oh wait21:11
patrick34no it seems to work now I can get pods and see the pod running21:11
pabelanger\o/21:11
patrick34=D21:12
patrick34sooooooo I need that patch :P21:12
tristanCpatrick34: oh right, the bug is that it was encoded once while it should not21:12
pabelangeryah, so we should update our docs to include that note, as k8s driver seems to not work.21:13
pabelangerthen, patrick34 will have to schedule upgrade21:13
patrick34ya21:13
pabelangerFWIW: we've upgrade each release nodepool release in ansible, and things work21:13
pabelangerpip install, stop / start service21:13
patrick34I have zuul 3.11.2.dev26 will upgrading nodepool to the version you mentionned earlier cause any problem?21:13
patrick34or 'potential' problems :P21:14
pabelangerI don't think so, we usually do a good job saying when both have to be in lockstep21:14
corvustristanC: was there an associated zuul change?  or was the fix entirely in nodepool?21:16
patrick34I'm pretty grateful guys for your help this is amazing. I'll be updating nodepool and giving you some updates21:16
tristanCcorvus: iirc only nodepool needed a fix21:16
corvuspatrick34: thanks!  let us know how it goes :)21:17
openstackgerritTristan Cacqueray proposed zuul/nodepool master: kubernetes: add release note about service account token issue  https://review.opendev.org/70386921:21
*** patrick34 has quit IRC21:28
openstackgerritMerged zuul/zuul master: Fix Test Case "TestScheduler.test_timer_with_jitter"  https://review.opendev.org/70374921:40
hasharoh21:46
hasharthat timer_with_jitter has hit me several time. Nice to see it fixed ;21:46
hashar)21:46
*** hashar has quit IRC21:51
*** hashar has joined #zuul21:52
*** coldtom has quit IRC22:22
pabelangertristanC: can you help me add a tooltip to web UI, that shows estimated time remaining?  I've struggled for a while to get this working, but can't seem to figure it out22:26
pabelangertime remaining for a job run22:26
tristanCpabelanger: iirc tooltip are managed through the `title` attribute of a dom element, where do you want it to appear?22:29
tristanCpabelanger: e.g. here: https://opendev.org/zuul/zuul/src/branch/master/web/src/containers/status/ChangePanel.jsx#L201   see the line below for how to inject code in dom22:30
pabelangertristanC: basically, when I hover over the blue progress bar, the old UI would show estimated time remaining22:30
tristanCdo we have estimated time per job run?22:31
clarkbyes I think zuul still tracks that22:31
clarkbtristanC: that is how it knows the estimate for the buildset22:31
clarkbit takes the max of builds estimated time list iirc22:32
pabelangerI think it is last 10 runs22:32
pabelangerlooking22:32
tristanCclarkb: oh right22:33
pabelangerhttps://opendev.org/zuul/zuul/src/branch/master/zuul/model.py#L461122:34
tristanCpabelanger: then adding `<div className='progress zuul-job-result' title={ "estimated time remaining" + remainingTime }>`  to https://opendev.org/zuul/zuul/src/branch/master/web/src/containers/status/ChangePanel.jsx#L201 should do the trick22:34
pabelangerk, let me try that22:35
*** hashar has quit IRC22:37
openstackgerritPaul Belanger proposed zuul/zuul master: WIP: Add estimated time remaining tooltip to UI  https://review.opendev.org/70389222:39
*** jamesmcarthur has quit IRC22:44
pabelangertristanC: OMG, it works. I just need to confirm to 00:00:00 format22:50
*** armstrongs has joined #zuul22:54
tristanCpabelanger: hehe nice :)22:57
tristanCpabelanger: you could moment.js like so https://opendev.org/zuul/zuul/src/branch/master/web/src/containers/build/Buildset.jsx#L6422:58
pabelangerkk23:00
*** armstrongs has quit IRC23:03
openstackgerritPaul Belanger proposed zuul/zuul master: WIP: Add estimated time remaining tooltip to UI  https://review.opendev.org/70389223:07
*** rlandy is now known as rlandy|bbl23:22
*** avass has quit IRC23:23
openstackgerritPaul Belanger proposed zuul/zuul master: WIP: Add estimated time remaining tooltip to UI  https://review.opendev.org/70389223:26
*** mattw4 has quit IRC23:51
openstackgerritPaul Belanger proposed zuul/zuul master: Add estimated time remaining tooltip to UI  https://review.opendev.org/70389223:55
openstackgerritPaul Belanger proposed zuul/zuul master: Add estimated time remaining tooltip to UI  https://review.opendev.org/70389223:56
pabelangertristanC: okay, ^ worked23:56
pabelangerhowever, not sure humanize() is the right way. that will only say 2hours, and not include minutes23:57
pabelangeror 13 minutes (without seconds)23:57
pabelangerhowever, need to #dadops now23:57
pabelangerwill look more tomorrow23:57

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