/srv/irclogs.ubuntu.com/2020/04/22/#launchpad-dev.txt

* tomwardill pokes buildbot a bit more07:52
* ilasc is writing a book for the Support Wiki with answers she's getting from wgrant this week :)07:57
tomwardillexcellent :)07:59
ilasctomwardill: just checking I understood correctly from the buildbot emails I saw this morning, your Store Username merged & built successfully, then API for OCI Registry Credentials failed with the usual and you triggered a forced build which again failed with the usual  ?08:07
tomwardillyep08:07
tomwardillI've just triggered another one08:07
tomwardillthey were slightly different usuals each time, but in that group, yeah08:08
ilascok cool, thanks! :)08:08
ilasctomwardill: code-wise this means I can now rebase / merge my UI branch to take in the Username changes from master08:11
tomwardillyep, it should be merged08:11
ilascok, great08:13
cjwatsontomwardill: So if I upgrade dogfood, it should be possible to run an end-to-end test?08:32
tomwardillerrr, I think so? :)08:33
tomwardilldoes dogfood run upload jobs automatically?08:33
cjwatsonWe'd need to run that manually08:33
tomwardillright08:33
tomwardillyeah, I think we should be good to try it08:34
wgrantilasc: Thanks for continuing to write the manual that we should have written years ago :)08:38
cjwatsontomwardill: dogfood is current now08:46
tomwardillwell08:46
tomwardillbetter try a thing then :)08:46
tomwardillhuh, getOCIProject isn't exported on distribution08:49
* tomwardill takes notes08:52
tomwardillhttps://dogfood.paddev.net/~twom/ubuntu/+oci/test-twom-2020-04-22-2/+recipe/test-twom-2020-04-22-2-recipe/+build/708:53
* tomwardill forgot to add any credentials to the recipe08:56
* tomwardill does that08:56
tomwardillin lp-shell, is there a way to load an object from an arbitary API call?08:59
cjwatsonLike lp.load you mean?08:59
tomwardilloh, maybe that :)08:59
cjwatsonHm, no OCIRecipeBuildJob created by your build.09:00
cjwatsonAh, maybe you haven't actually created the push rule yet?09:01
tomwardillno, I failed09:01
tomwardillwell, forgot09:01
tomwardilltrying to do that now09:01
cjwatsonOn loading arbitrary objects, also note that where launchpadlib normally takes an object as a method parameter, you can in general also pass a URL path.09:01
tomwardillnewPushRule appears to be missing from lp.operations on a OCIRecipe09:02
tomwardilloh, is this lp-shell caching WADL?09:02
cjwatsonSo e.g. instead of foo.bar(distro_series=lp.distributions['ubuntu'].getSeries(name_or_version='focal')) you can say foo.bar(distro_series='/ubuntu/focal')09:02
cjwatsonYes09:02
cjwatsonVery annoying and one of these days I'll fix it in launchpadlib09:02
tomwardillhow do I fix that again?09:02
cjwatsonrm -v ~/.launchpadlib/api.launchpad.net/cache/*.wadl*09:03
tomwardillnope, still only have newWebHook09:03
tomwardillhmm09:03
cjwatsonEr sorry, dogfood09:04
cjwatsonrm -v ~/.launchpadlib/api.dogfood.paddev.net/cache/*.wadl*09:04
tomwardillah, of course09:04
tomwardillright, there we go09:04
* tomwardill finds his credentials09:04
cjwatson(The bug is probably in lazr.restfulclient actually)09:05
tomwardillraise RuntimeError("No public key configured")\nRuntimeError: No public key configured\n'09:06
cjwatsonYou know I absolutely could have sworn I'd done that09:09
cjwatsonBut no sign of it09:09
cjwatsonPlease hold09:10
cjwatsontomwardill: Should be fixed09:15
tomwardillwell, I've got a push rule09:15
tomwardillstarting a new build09:16
tomwardillhttps://dogfood.paddev.net/~twom/ubuntu/+oci/test-twom-2020-04-22-2/+recipe/test-twom-2020-04-22-2-recipe/+build/809:16
tomwardillcjwatson: build done09:21
cjwatson$ /srv/launchpad.net/codelines/current/cronscripts/process-job-source.py -v IOCIRegistryUploadJobSource09:23
tomwardill{"repositories":["busybox","dogfood/test-twom-weget","pjdc/registry-2","registry","test-wget-image","twom/base_with_curl","twom-test/test-wget-image"]}09:24
tomwardillwell, there's a thing09:24
cjwatsonSeems happy.  Would be nice to have some UI indication in LP09:24
cjwatsonAlso it's super-annoying that lp-shell no longer has good completion after upgrading to focal09:26
tomwardillStatus: Downloaded newer image for upload.image-registry.staging.canonical.com:5000/dogfood/test-twom-weget:edge09:26
cjwatsonPresumably a Python 3 thing09:26
tomwardillI can docker pull it09:26
tomwardillshould probably try it with a more complicated docker image...09:26
cjwatsontomwardill: You can probably move https://trello.com/c/uUeoPcJx/68-ociregistrycredentials-ocipushrule-api to done?09:27
tomwardilldone09:27
* tomwardill enjoys the confetti09:27
tomwardillso yeah, we're done right?09:29
tomwardill;)09:29
cjwatsonThis does basically look like an MVP: we need https://code.launchpad.net/~cjwatson/lp-production-configs/oci-registry-secrets-public-key/+merge/382733 merged, then a production deployment, then setting up celery and cron for IOCIRegistryUploadJobSource09:33
cjwatsonA whole bunch more UI would sure be nice09:34
tomwardillyeah09:34
cjwatsonLooks like you can currently create push rules but not list them09:35
cjwatson(on the API)09:35
tomwardillyup09:36
tomwardillI've got a couple of notes of missing things I just found09:36
cjwatsonI'm marking your commits green in deployable though since they basically work09:36
cjwatsontomwardill: I'll work on the UI to show the state of registry uploads, if that's OK09:52
tomwardillsure09:52
cjwatsontomwardill: Is the error message handling in OCIRegistryUploadJob.run actually correct for pushing to OCI registries?  It seems to be fairly directly taken from snap store interaction, and the "messages" and "details" stuff there is quite specific to the store's API10:55
cjwatsontomwardill: Do you know if the registry API ever returns multiple error messages for a single request?10:56
cjwatsonJust wondering if we can simplify this or rationalise it in some way10:56
tomwardillcjwatson: hmm, it may not be. It seemed reasonably flexible for handling possible cases, but I'd need to reread the registry docs for it. I was also working on the assumption that a custom frontend might eventually be a thing10:57
tomwardillhttps://docs.docker.com/registry/spec/api/#errors-2 the spec is not hugely enlightening10:57
cjwatsontomwardill: The other thing is that in the store case error_message was mostly there for compatibility but you've replicated it; so trying to work out if we can get away with only one of singular vs. plural before fossilising the API11:02
tomwardillcjwatson: yeah, it looks like it11:02
cjwatsontomwardill: errors does generally seem to be possibly-plural there, so I think I'll just consider the plural case in what I'm doing14:11
tomwardillexport push_rules on the API: https://code.launchpad.net/~twom/launchpad/+git/launchpad/+merge/38277115:46
cjwatsonr=me15:58
tomwardillta, landing15:59
SpecialK|Canoncjwatson: sometime between now and Tuesday it would be fab if you could add some status notes to https://trello.com/c/41wQZbTD/26-built-using-support please16:01
cjwatsonYep, plan to16:01
cjwatsonWas hoping to get closer to "code all done locally" first16:02
cjwatsontomwardill: did you get a chance to start having a look at built-using-model btw?16:02
tomwardillcjwatson: gah, no, I forgot. Give me link again and I'll do it next?16:02
SpecialK|Canoncjwatson: by all means, cheers16:02
cjwatsontomwardill: https://code.launchpad.net/~cjwatson/launchpad/+git/launchpad/+merge/38123416:03
cjwatsontomwardill: https://code.launchpad.net/~cjwatson/launchpad/+activereviews and grep for built-using has other useful context16:03
cjwatson(As in, sometimes looking further up the stack may be helpful for understanding16:04
cjwatson)16:04
cjwatsonAlso https://docs.google.com/document/d/1HNwxF16tBlh2EjSexihmZj9qP9w5oeGDWF0Fygb8ols is the hopefully-not-too-bitrotten design doc16:04
tomwardilli need to find a more effective way to review things, I really struggle with it just scrolling in a browser16:43
cjwatsonI sometimes add a remote and fetch locally16:45
tomwardillcjwatson: it all looks reasonable to me, I'll go over it again in the morning, but I think I can follow it :)17:06
cjwatsonFinally landing removal of --system-site-packages now that it's unblocked21:39
* cjwatson looks forward to fewer incomprehensible pip bugs21:39
* pappacena \o/21:39
cjwatsonI did actually have something else blocked on that for some reason I never quite tracked down - a ZTK upgrade I think21:40
cjwatsonSomething to do with ampoule child processes preferring the system zope.interface to the virtualenv's one because why21:41

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