Tuesday, 2020-03-17

*** rlandy has quit IRC00:00
*** jamesmcarthur has quit IRC00:02
*** adamw has quit IRC00:02
*** adamw has joined #zuul00:03
*** armstrongs has joined #zuul00:05
*** erbarr has quit IRC00:08
*** armstrongs has quit IRC00:14
*** jamesmcarthur has joined #zuul00:28
*** jamesmcarthur has quit IRC00:32
tristanCmnaser: +3, thanks, those looks great!00:42
*** tosky has quit IRC00:46
openstackgerritMerged zuul/zuul-jobs master: wait-for-pods: Wait for all pods to become Ready  https://review.opendev.org/71310700:50
*** rlandy has joined #zuul00:52
openstackgerritMerged zuul/zuul-jobs master: Keep doc/source/roles.rst sorted  https://review.opendev.org/71312800:59
openstackgerritMerged zuul/zuul-jobs master: install-docker: add option to use buildset registry  https://review.opendev.org/71311501:00
mnaserthanks tristanC01:00
*** jamesmcarthur has joined #zuul01:07
mnaserzuul just reported this on my change01:10
mnaserUnable to freeze job graph: 'NoneType' object has no attribute 'decrypt'01:10
mnaseri used a secret that isn't defined01:11
fungithat error seems more straightforward than some, at least01:12
mnaserso it should at least be something more straight forward aha01:12
*** Goneri has quit IRC01:12
*** jamesmcarthur has quit IRC01:15
*** jamesmcarthur has joined #zuul01:16
*** kmalloc has joined #zuul01:50
*** jamesmcarthur has quit IRC01:53
*** jamesmcarthur has joined #zuul02:05
*** swest has quit IRC02:08
*** rlandy has quit IRC02:09
openstackgerritTristan Cacqueray proposed zuul/zuul-operator master: Add TLS configuration to ZooKeeper service  https://review.opendev.org/71275902:10
openstackgerritMerged zuul/zuul-operator master: Use explicit provides/requires for container jobs  https://review.opendev.org/71281602:24
*** jamesmcarthur has quit IRC02:24
*** swest has joined #zuul02:24
*** jamesmcarthur has joined #zuul02:32
*** bhavikdbavishi has joined #zuul03:01
mnaserso I have https://review.opendev.org/#/c/713339/ up to move tempest to load it’s jobs and there’s a devstack change that is complaining about a missing job? That sounds like a zuul bug?  https://review.opendev.org/#/c/708317/ is the devstack change03:33
tristanCcorvus: nice, so https://review.opendev.org/#/c/712759/ worked with zk-ca unencrypted pkcs8 files. so it seems like we just need to concat the key and cert? not sure if the cert-manager can provide this natively, but that shouldn't be a problem.03:50
*** jamesmcarthur has quit IRC03:59
*** kmalloc has quit IRC04:00
*** jamesmcarthur has joined #zuul04:03
*** jamesmcarthur has quit IRC04:08
*** jamesmcarthur has joined #zuul04:10
*** jamesmcarthur has quit IRC04:35
*** bolg has joined #zuul04:47
*** jamesmcarthur has joined #zuul04:48
*** bolg has quit IRC04:51
*** bolg has joined #zuul04:52
*** jamesmcarthur has quit IRC04:53
*** saneax has joined #zuul04:53
*** zxiiro has quit IRC05:18
*** evrardjp has quit IRC05:35
*** evrardjp has joined #zuul05:36
*** dpawlik has joined #zuul06:57
*** dpawlik has quit IRC07:41
*** dpawlik has joined #zuul07:42
*** dpawlik has quit IRC07:48
*** raukadah is now known as chandankumar07:58
*** avass has joined #zuul08:28
*** jcapitao has joined #zuul08:30
openstackgerritIan Wienand proposed zuul/nodepool master: Add parent and abstract flags for diskimages  https://review.opendev.org/71315708:30
openstackgerritIan Wienand proposed zuul/nodepool master: Correct dib_path typo  https://review.opendev.org/71338008:30
openstackgerritIan Wienand proposed zuul/nodepool master: Convert to slots  https://review.opendev.org/71338108:30
openstackgerritIan Wienand proposed zuul/nodepool master: diskimage: make name primary key  https://review.opendev.org/71338208:30
openstackgerritIan Wienand proposed zuul/nodepool master: Correct dib_path typo  https://review.opendev.org/71338008:34
openstackgerritIan Wienand proposed zuul/nodepool master: Convert diskimages to slots  https://review.opendev.org/71338108:34
openstackgerritIan Wienand proposed zuul/nodepool master: diskimage: make name primary key  https://review.opendev.org/71338208:34
openstackgerritIan Wienand proposed zuul/nodepool master: Add parent and abstract flags for diskimages  https://review.opendev.org/71315708:34
*** jpena|off is now known as jpena08:56
*** hashar has joined #zuul08:58
*** harrymichal has joined #zuul09:05
*** harrymichal has quit IRC09:12
*** tosky has joined #zuul09:17
*** threestrands has quit IRC09:56
*** harrymichal has joined #zuul10:28
*** harrymichal has quit IRC11:34
*** harrymichal has joined #zuul11:59
*** jcapitao is now known as jcapitao_lunch12:04
*** hashar_ has joined #zuul12:16
*** hashar has quit IRC12:16
*** hashar_ has quit IRC12:20
*** hashar_ has joined #zuul12:20
*** hashar_ is now known as hashar12:23
*** rlandy has joined #zuul12:29
*** jpena is now known as jpena|lunch12:31
*** harrymichal has quit IRC12:32
*** harrymichal has joined #zuul12:34
openstackgerritDenys proposed zuul/nodepool master: Add floating-pool option  https://review.opendev.org/71342812:53
zbrAJaeger: can you explain the removal of bindep from zuul-roles mentioned in https://review.opendev.org/#/c/708642/18/zuul-tests.d/python-jobs.yaml@14 ?12:54
zbrdo we now assume that all roles defined in zuul-roles are supposed to work w/o a bindep file? if true, I bet lots of them will be effectively broken.12:56
zbri do not have a particular love for bindep, but i know for sure that these roles do not correctly use dependency chain in order to install the stuff they need12:57
openstackgerritJens Harbott (frickler) proposed zuul/nodepool master: Correct dib_path typo  https://review.opendev.org/71338012:57
zbrthere are lots of assumptions made which consider only the openstack nodepool images, while these roles are supposed to be used by any zuul deployment.12:58
zbrand due to this, i faced lots of bugs with them on both rdo-zuul and ansible-zuul, instances, sometimes it was something wrong in an image, but in many cases it was the role itself which did not count for a specific case.12:59
*** arxcruz|rover has quit IRC13:00
*** sshnaidm is now known as sshnaidm|afk13:02
*** arxcruz has joined #zuul13:02
*** arxcruz is now known as arxcruz|rover13:03
Shrewsfbo: can we abandon https://review.opendev.org/619525 ? that's fairly old and can be handled via a clouds.yaml change anyway13:12
fboShrews: sure done13:14
AJaegerzbr: we added bindep for Zuul install, and remove the Zuul install from zuul-jobs - thus mordred removed it in https://review.opendev.org/71254713:19
AJaegerzbr: we can add content back if needed - for now, we added it because of Zuul install and rmeove that, so remove bindep as well...13:20
*** jcapitao_lunch is now known as jcapitao13:24
*** michael-beaver has joined #zuul13:25
zbrAJaeger: ok, to avoid surprises, i would prefer to trigger all testing jobs when bindep.txt is touched (removal counts as touched)13:25
zbrit could help use discover what could get broken by its removal13:25
zbri am inclined to believe that we still want a bindep file, as even linting could need some extra deps.13:27
*** Goneri has joined #zuul13:27
zbri often use bindep file to manually install deps on my dev machine, it also acts as a way to document deps, not only useful for zuul.13:27
*** jpena|lunch is now known as jpena13:33
AJaegerzbr, we needed it for Install of Zuul - and we don't install Zuul anymore.13:34
zbrsure, let me try to make a test change, to validate if removal breaks something else.13:34
openstackgerritSorin Sbarnea proposed zuul/zuul-jobs master: DNM: test bindep.txt touching effects  https://review.opendev.org/71344513:42
*** bhavikdbavishi has quit IRC13:45
corvusbindep in zuul-jobs is only used for roles that need extra dependencies for testing (ie, roles with unit tests); it's not used for expressing dependencies needed for roles themselves; that should either be handled by the role itself (eg ensure-tox) or by documentation in the role which explains pre-requisites for images.13:45
mnaseryeah as i understand it, it's like what corvus was saying.  if anything actually, removing bindep should help us potentially catch more cases of roles not working properly because they are not installing a dependency13:48
AJaegermnaser: agreed.13:48
AJaegerSo, change under discussion is https://review.opendev.org/712547 - anybody wants to +2?13:49
mnasercorvus: btw, i faced an interesting (what i think) is a zuul bug if you have not had a chance to catch up with scrollback from yesterday13:56
corvusi agree with that change, but we can also wait for zbr's jobs to return just to confirm that there wasn't any scope-creep for the bindep file.  but if there are any errors, we should still probably merge mordred's change and fix the jobs with errors to do something other than rely on bindep.13:56
mnaser^ yep, that was my thoughts as well, id like to see the jobs report first13:57
*** mhu has joined #zuul14:01
corvusmnaser: re zuul bug, do you mean the errors on 708317?  i'm not sure i entirely follow and could use an update on the current state :)14:02
openstackgerritZen Kurosaky proposed zuul/zuul master: This patch extends zuul deployment from scratch documentation.  https://review.opendev.org/71345314:12
mnasercorvus: so i think the interesting thing that happened was that 708317 was getting "Job tempest-full-py3 not defined".  at that time, i had added openstack/devstack to load jobs, then added openstack/tempest to projects _but not_ load jobs.14:13
mnaserthe interesting thing is i'm (kinda) sure that the errors with tempest-full-py3 not defined was caused because of the change i did (even though it was in another tenant)14:14
mnaseronce https://review.opendev.org/#/c/713339/ merged and ianw rechecked a couple hours later, the patch no longer removed "job not found"14:14
mnaserso in some weird or strange way i managed to maybe undefine the job in speculative zuul config changes .. or something along those lines?  i don't understand that system very well but i hope i did an (ok) job trying to explain what i observed, happy to clarify14:15
corvusmnaser: it was only not defined in the vexxhost tenant which is the one that left the message on the change14:16
corvusmnaser: if you notice right after the 'job not defined' message, there's a 'depends on a change that failed to merge' message.  that second one is probably from the openstack tenant.14:16
corvusmnaser: this is the problem mordred and i were alluding to yesterday14:17
corvusmnaser: (it shows up most often in merge conflict messages, but a config error is similar)14:17
corvusmnaser: i'm not sure if we have a good way to turn those off for "secondary" tenants14:18
mnasermordred: oh.  i understand now.  so because the tenant has a pipeline configured that has reporting configured, the openstack and vexxhost tenants were both capturing the change, and openstack wasn't complaining but the vexxhost tenant was (and seeing it comes from the same "zuul" account, we wouldn't notice it14:20
mnaseroops, i mean corvus ^14:20
corvusyep14:20
mnaserso theoretically if there was another connection to opendev for this tenant and it had its own reporter, it would have been zuul (openstack) +1, vexxhost -114:21
mnaserok that explains it14:21
*** jamesmcarthur has joined #zuul14:22
fungior if the report somehow indicated the tenant name (perhaps parenthetically prepended to the job name or something)14:29
mnaserfungi: yeah, that's what i was thinking14:37
fungior mentioned along with the pipeline name14:39
fungithough that might not have a workable analogue in the checks api data structure for gerrit14:40
openstackgerritJan Kubovy proposed zuul/zuul master: WIP: Separate connection registries in tests  https://review.opendev.org/71295814:40
fungiso yeah, maybe the account-per-tenant option we talked about does make more sense14:43
AJaegermnaser, corvus, want to +2A 712547 now that https://review.opendev.org/#/c/713445/ has run? Or is anything odd in it?14:43
*** NBorg has quit IRC14:43
mnaserAJaeger: it's a +2 from me but i rather have someone else have a look and +W just because there was a lot of concerns brought up14:46
*** gmann is now known as gmann_afk14:48
*** zxiiro has joined #zuul14:48
zbrAJaeger: take a look at https://review.opendev.org/#/c/713445/14:55
zbreven some current jobs are broken due to bindep.txt file, i think it was a mistake not to include it in all jobs, similar mistake with test-reqs.txt14:56
corvuszbr: what jobs are broken?14:56
AJaegerzbr: there's one failure that is clearly unrelated, isn't it?14:57
*** sshnaidm|afk is now known as sshnaidm14:57
AJaegerzbr: I'm confused, please give more details14:57
zbrnot^ f30 is clearly related, not sure about opensuse one which was already nv.14:57
mordredf30 is a broken fedora repo14:58
fungilooks to me like it's confirmed we should be safe to remove14:58
mordredyup14:58
zbrlet me trigger it again with file removed, i bet it will be more than one broken job.14:59
corvusnonono14:59
mordredalso - I mean - if any of the tests are broken by bindep removal - the roles are broken14:59
mordredroles do NOT depend on bindep14:59
mordredbindep is not used when roles are used14:59
corvuslet's be a little more cautious with asking the ci system to run 100 jobs14:59
mordredit is ENTIRELY possible that there are roles in zuul-jobs that do not work on all platforms15:00
corvuswe don't need to run that again.  we have good data15:00
mordredbut under no circumstances will anything related to bindep fix that15:00
mordreds/possible/probable/15:00
corvuszbr: wait, i just looked at your change again... you didn't actually remove anything from bindep.txt...15:01
corvuszbr: so what was it you just used all those machines to test?15:01
zbrcorvus: how about running these on periodic-weekly? so we get an idea about which ones are get broken,.15:01
zbrthis is what i am trying to say, i just tocuhed the file, not removing it.15:01
corvuszbr: then you just wasted all of our time, and a bunch of ci resources too, and the time of everyone who is waiting on those15:02
corvusbecause that test told us nothing useful after all15:02
corvusother than, maybe "zuul can run lots of jobs"15:03
zbrinstead of using blame, we could maybe think about how we can improve the current testing logic.15:03
corvuszbr: please do.  when you come up with a full test plan, let us know.15:03
AJaegerzbr, nothing in your tests showed that we cannot merge https://review.opendev.org/712547, I'll +2A now.15:04
fungiby removing the bindep.txt file, we'll be solving whatever logic problem there is around not running the jobs for the zuul-jobs repo when bindep.txt is altered (because there will be no more bindep.txt file to worry about)15:04
zbrmost of the roles can be tested with containers, when I mentioned using molecule to run them I was told "we have zuul jobs for that, we can run as many as we need"15:04
corvuszbr: yes, we can.  but please run *useful* tests.15:04
zbrto be clear: i am not against removal of the bindep.15:05
corvuszbr: that would have been a useful test if you removed the contents of bindep.txt to see what would be affected by its removal.15:05
corvuszbr: but you just run jobs with no changes, and they worked, which is exactly what we would expect.15:05
zbrthat was my mistake, not to remove it.15:05
AJaegerzbr: wnat to update 708642 and remove the bindep lines?15:06
corvusi'd rather we don't15:06
mordredhttps://review.opendev.org/#/c/712547/ already removes bindep though - so we already have that test. I think it would be useful to step back for a sec and try to restate what it is that we're trying to fix before we do next things15:06
AJaegercorvus: I'm talking about https://review.opendev.org/#/c/708642/18/zuul-tests.d/python-jobs.yaml15:07
corvusAJaeger: oh sorry15:07
AJaegernp15:07
openstackgerritSorin Sbarnea proposed zuul/zuul-jobs master: Improve ensure-tox role  https://review.opendev.org/70864215:07
corvusjamesmcarthur: i think i would take the silence on the ml about the user survey to indicate that it's ready to go... that seem right to you?15:09
jamesmcarthurcorvus: thanks, that was my feeling as well :)15:09
jamesmcarthurI'll get with aprice and work on promotion and outreach15:10
jamesmcarthurwe should put a link to it on the Zuul homepage15:10
openstackgerritDaniel Pawlik proposed zuul/zuul-jobs master: Add phoronix-test-suite job  https://review.opendev.org/67908215:10
corvusjamesmcarthur: i don't know about the wiki article...15:11
corvusjamesmcarthur: it seems like there are sufficient secondary sources (several published news articles)....15:12
corvusjamesmcarthur: certainly more than, say, a page like https://en.wikipedia.org/wiki/Gated_commit15:12
jamesmcarthurcorvus: I'm working with Robert Cathey on fixing up the Zuul article.  He found some additional sources and has had experience getting wiki articles published.15:12
corvuswhich doesn't mention zuul, and all of its sources are software documentation and blogs, and were published like 6 years after we started describing zuul as a gating system15:12
corvusjamesmcarthur: awesome!15:13
jamesmcarthurcorvus: I think it's just a bit of a slog. The person who denied our first entry specializes in "TV and entertainment"15:13
jamesmcarthurso... we're going to have to have a sweet spot of undeniable documentation + the right reviewer15:14
corvusjamesmcarthur: ah :)15:14
corvusjamesmcarthur: are conference videos useful?15:14
jamesmcarthurit seems like articles carry the most weight15:14
corvusshame -- mordred and i could come up with like 30 of those over the past 8 years :)15:15
fungifrom "reputable sources" (meaning perodicals someone specializing in tv and entertainment will have heard of before?)15:15
corvusmordred: did you mention zuul in your wired cover story?15:16
jamesmcarthuri think just sites with a high rank15:16
fungiapparently sites like opensource.com don't count as reputable15:16
jamesmcarthurcorvus: re videos - but if you have some that aren't on openstack.org you can send my way, I'll add them to the list Robert put together.15:16
corvusjamesmcarthur, mordred: yes, monty mentioned zuul in wired: https://www.wired.com/2013/04/new-hackers-taylor/15:16
openstackgerritMohammed Naser proposed zuul/zuul master: Display clean error message for missing secret  https://review.opendev.org/71346915:16
jamesmcarthuroh nice!15:16
corvusit doesn't use the word gating, but it does describe the process and conditions, so we might be able to get a cite out of that15:17
jamesmcarthurcorvus: One of the other comments was it seemed like we were just quoting ourselves, and so it felt like an advertisement.15:18
jamesmcarthurI'm hoping Robert can help with the tone there to avoid that perception.15:18
corvusjamesmcarthur: that wired article has responses from other people and companies15:19
corvus"Whatever you call it, it's a sign of things to come. Michael Lehenbauer, a former Microsoft developer, says the software giant has used a similar setup on large projects inside the company."15:20
jamesmcarthurcorvus: awesome - just sent it on to Robert as well15:20
mordredare any of the articles from bmw or volvo about how they're using zuul useful sources?15:26
openstackgerritTobias Urdin proposed zuul/nodepool master: Filter active images for OpenStack provider  https://review.opendev.org/71347115:26
corvusmordred: oh interesting, yeah that volvo article in particular may be a unique source15:30
mordredyeah - since it was them talking about automotive things and then talking about how they used zuul to solve it - it wasn't really a zuul sales pitch15:31
AJaegerso, zbr has a job to improve ensure_tox role, anybody to review that one later, please? https://review.opendev.org/#/c/708642/15:31
mnasermordred: can i pick up your ensure-python change? noonedeadpunk is working on an dib element which would cache python builds (and so in combination with your work it'll likely be noop)15:33
mnasersorry more specifically to work with pyenv15:33
*** erbarr has joined #zuul15:37
openstackgerritDavid Shrewsbury proposed zuul/nodepool master: Add options to CLI info command  https://review.opendev.org/71253915:37
openstackgerritMerged zuul/zuul-jobs master: Use a zuul_* and add an .ansible-lint file  https://review.opendev.org/71254715:40
mordredmnaser: absolutely15:42
mordredmnaser: the biggest issue I ran in to was trying to figure out how to set paths - but maybe just adding a /usr/local/bin symlink would be enough15:43
zenkurofuhhh... looks like Im almost done with adding mysql to docs15:43
zenkuroBut I continue struggle with log managment in zuul, can anybody give a guide on how to grasp log gathering and uploading? Or supervise me in this crusade? I will post a doc on the basis of my finding15:45
mnasermordred: ok, i will look into it a tad more!15:55
corvuszenkuro: there's a very small amount of discussion about logs here: https://zuul-ci.org/docs/zuul/tutorials/quick-start.html#configure-a-base-job15:57
corvuszenkuro: i think at this point we would suggest people run generate-zuul-manifest and one of the upload-logs(.*) roles15:58
corvuszenkuro: also fetch-output and merge-output-to-logs15:58
corvuszenkuro: fetch-output makes it easier to get logs from the remote machine to the executor, merge-output-to-logs makes sure that artifacts and docs get uploaded, generate-zuul-manifest is needed for the web ui to work correctly, and then obviously upload-logs (or upload-logs-swift, or upload-logs-gcs) is needed to put them in storage and which and how to use it depends on the installation.16:00
*** AJaeger has quit IRC16:22
*** AJaeger has joined #zuul16:22
*** hashar is now known as hasharAway16:39
*** chandankumar is now known as raukadah16:48
clarkbhttps://review.opendev.org/#/c/713380/3 is an easy nodepool bugfix16:55
zenkurocorvus: thanks again!16:59
*** jamesmcarthur has quit IRC17:11
*** jamesmcarthur has joined #zuul17:12
*** jamesmcarthur has quit IRC17:13
*** jamesmcarthur has joined #zuul17:13
*** jcapitao has quit IRC17:19
clarkbianw corvus tristanC https://review.opendev.org/#/c/713157/4 looks good to me other than some minor code and test things17:23
clarkbmight be good to rereview that tristanC and see if it does what you had thought about for inheritance (my interpretation is that it does)17:23
*** hasharAway is now known as hashar17:25
*** jamesmcarthur has quit IRC17:28
corvusclarkb, ianw: my first impression is that i like that, and the test fixtures look like a pretty good example usage (so i can imagine how opendev would change pretty easily).  we should make sure Shrews has a chance to look at this; i think he's been heads down in other stuff and i don't want this to pass him by :)17:29
*** jamesmcarthur has joined #zuul17:29
clarkbrgr17:29
*** jamesmcarthur has quit IRC17:31
*** jamesmcarthur has joined #zuul17:31
tristanC+117:34
*** evrardjp has quit IRC17:35
ShrewsWill look in a bit, but here is a question for the team: clarkb found the need to manually delete some zk image upload records the other day because of the recent FN move. I hate having to force anyone to do anything with zk-shell, so I'm working on nodepool CLI changes to help with this. We already have the 'erase' command which deletes ALL zk info for a provider. I want to change this to be more selective in what we delete.17:36
*** evrardjp has joined #zuul17:36
Shrewse.g., image builds, image uploads, or node records17:36
Shrewsturns out, deleting image build records also deletes image upload records because of the nested nature of the records17:36
Shrewsdo we want to keep that behavior?17:37
mordredclarkb: ++ from me on that nodepool change too17:37
Shrewsor force the user do upload records separately?17:37
funginow that nodepool goes ahead and deletes image upload records when it asks the provider to delete the image, rather than when the provider eventually gets around to deleting the image, having the build record deletion also delete upload records seems fine to me17:39
clarkbShrews: in the case I ran into the build records were automatically purged once the uploads were gone17:39
Shrewsclarkb: yeah, i'm not seeing any reason one would want to keep the build records after deleting the upload records17:40
fungior is it just that it cleans up the on-disk copies once asked to delete, but is still currently holding onto the build/upload records until the providers confirm deletion?17:40
Shrewsfungi: if any uploads exist, the  build will not be deleted (either from zk or on disk)17:41
Shrewsso once the upload records were removed, nodepool was free to cleanup after itself17:41
fungihrm, i thought that changed a few weeks ago17:42
fungibecause we were stuck with a bunch of extra local copies of images which providers refused to delete due to stuck nodes booted from those images in a boot-from-volume configuration17:42
* fungi checks the changelog17:43
openstackgerritMerged zuul/nodepool master: Correct dib_path typo  https://review.opendev.org/71338017:43
Shrewsfungi: "now that nodepool goes ahead and deletes image upload records when it asks the provider to delete the image" ... not sure what that change is17:43
fungiyeah, i was asking if it was that or just the local copies of the images17:44
fungilooks like the latter17:44
fungihttps://review.opendev.org/702062 Delete dib images when all uploads set to deleting17:44
fungiso it's still keeping the build and upload records, just removing the on disk copies17:44
Shrewsoh, yeah. forgot about that one17:44
fungiis there much urgency now to clean up the upload and build records since we're freeing up disk immediately?17:46
fungii guess for the "provider is totally gone" case there is17:46
fungibecause nodepool will never find out the images are gone from the (now nonexistent) provider17:46
mordredyeah17:47
* mordred says useful things like "yeah" to provide value17:47
Shrewsgood point. i think we can actually just leave the 'erase' command as-is since we could have used that17:47
Shrewsbut we just forgot it existed17:47
fungiso with that as the main use case at least, i think deleting the upload records is sufficient because the build records will get cleared as soon as those are gone anyway17:47
Shrewsso... yeah. thx mordred!17:47
mordredShrews: I'm glad I solved this problem17:47
Shrewsmordred: you are a true hero17:48
fungiyeah17:48
fungiwhich i think is what clarkb was saying, on reflection17:48
clarkbfungi: ya that17:49
fungiand nodepool is already smart enough to not get rid of the build records if there are lingering upload records in another provider you didn't explicitly clear17:50
corvusyeah17:53
*** avass has quit IRC17:55
*** jpena is now known as jpena|off18:04
Shrewsclarkb: corvus: i'm fine with the builder dib changes, btw. i find myself wishing we could abstract away a lot of the image building stuff, but i also wish i weren't confined to my house and realize i just have to deal with the current situation  :/18:07
*** saneax has quit IRC18:35
mnaserok i'm losing it i think18:40
mnaserwith update-test-platforms, what's *actually* the thing that adds the "autogenerated" bit into it18:40
mnaseri seriosuly don't see anywhere that adds the comment block that says "autogenerated"18:40
mnaserif i manually add it and re-run it, the script wipes it18:41
mnaserand i dont see where the script is actually generating it18:41
clarkbmnaser: I think its based on a tag?18:42
mnaserclarkb: yeah that part works fine, i can get the jobs and project section to generate, what's 'breaking' is the comment saying its autogenerated is disappearing18:42
mnaseraka this https://www.irccloud.com/pastebin/dzvxhAGM/18:43
clarkboh that I don't know18:43
clarkbcorvus: ^ set that up and may know18:43
corvusapparently the autogenerated message is not autogenerated; it was manually added.  [i did not do that]18:44
*** rfolco has joined #zuul18:44
mnaserweirdly enough it's removing it when i manaully add it above the project section (but other files don't have it removed)18:44
corvusmnaser: you'll need a recent version of ruamellib to avoid having it removed18:45
corvusmnaser: i found the version in bionic is insufficient, so i had to make a venv and install ruamel from pip18:45
mnaseri used tox -eupdate-test-platforms which seems to have ruamel.yaml>=0.16.718:45
corvus(sorry, not ruamellib, just ruamel)18:45
mnaseraa18:45
corvusoh neat, that's new to me18:45
corvushrm18:45
corvusthen i would expect that tox to work18:45
mnaserand it actually initially worked, but it put the comment above the jobs that were auto generated18:46
mnaserso i moved it and reran it and it wipes it18:46
mnaseri mean, it's not a big deal, i think.  but it is confusing and curious as to why18:46
mnaserupdate-test-platforms installed: ruamel.yaml==0.16.10,ruamel.yaml.clib==0.2.018:47
corvusthat is curious; i don't immediately know.  it may be that the comment is associated with a line that is getting removed/replaced and so it's going with it18:47
*** rfolco has quit IRC18:48
corvus0.16.7 is the version i last used; not sure if it would behave any differently18:48
corvus(i doubt it, but might be worth a check)18:48
fungiyeah, seems likely the comment was added manually and was getting preserved by ruamel-yaml since it preserves comments and ordering18:49
fungibut it does have funny behaviors around associating comments with lines of yaml data18:50
mnaserif anyone has a few minutes, i'd appreciate some help with the test i wrote.. i _thought_ it was going to work but it clearly didn't -- so maybe there's something else i'm missing naively? https://review.opendev.org/#/c/713469/18:59
mnaserfwiw i think it's the right fix (based on the traceback: http://paste.openstack.org/show/790797/), i dont think im testing it properly19:00
corvusmnaser: i'll look after the infra meeting19:02
mnaserthank you corvus !19:03
openstackgerritSorin Sbarnea proposed zuul/zuul-jobs master: Improve ensure-tox role  https://review.opendev.org/70864219:06
*** SpamapS has quit IRC19:12
*** bhavikdbavishi has joined #zuul19:16
*** jamesmcarthur has quit IRC19:16
*** jamesmcarthur has joined #zuul19:18
*** jamesmcarthur has quit IRC19:22
*** SpamapS has joined #zuul19:24
*** gmann_afk is now known as gmann19:25
*** openstackgerrit has quit IRC19:33
*** michael-beaver has quit IRC19:33
*** jamesmcarthur has joined #zuul19:34
*** openstackgerrit has joined #zuul19:36
openstackgerritMohammed Naser proposed zuul/zuul-jobs master: DNM: Add support for installing python with pyenv  https://review.opendev.org/70426619:36
openstackgerritMohammed Naser proposed zuul/zuul-jobs master: DNM: Add support for installing python with pyenv  https://review.opendev.org/70426619:37
openstackgerritMohammed Naser proposed zuul/zuul-jobs master: DNM: Add support for installing python with pyenv  https://review.opendev.org/70426619:40
openstackgerritMerged zuul/zuul-jobs master: Improve ensure-tox role  https://review.opendev.org/70864219:46
*** jamesmcarthur has quit IRC19:46
*** jamesmcarthur has joined #zuul19:46
mnasermordred: https://review.opendev.org/#/c/704266/ is now testing on all platforms and seems to build successfully on all of them (except for gentoo, ill have to figure out how to use emerge and try out what's missing20:02
mordredmnaser: cool!20:03
mnaseri was wondering -- what do you think about an idea of that role setting zuul_python_path and then other python roles using that if it's defined instead of mucking around with the path20:03
mnasernow that i type this out though i realize that it's possible someone will use 'command' or 'shell' with ensure-python and that would make it useless20:03
mnaserhmm, apparently we can call python-build $version /usr/local and it would install it globally on the system20:05
mnaseri don't know if that's an approach we want to take though ... but realistically also how different is that from doing an apt install pythonX-dev20:05
openstackgerritJames E. Blair proposed zuul/zuul master: Add TLS support for ZooKeeper  https://review.opendev.org/71253120:07
openstackgerritJames E. Blair proposed zuul/zuul master: Use ZK TLS in quickstart  https://review.opendev.org/71281720:07
*** jamesmcarthur has quit IRC20:08
corvusmnaser: left comment on 71346920:09
*** jamesmcarthur has joined #zuul20:10
mnaserthanks20:12
openstackgerritMohammed Naser proposed zuul/zuul master: Display clean error message for missing secret  https://review.opendev.org/71346920:12
*** jamesmcarthur has quit IRC20:15
*** jamesmcarthur has joined #zuul20:16
openstackgerritMohammed Naser proposed zuul/zuul-jobs master: DNM: Add support for installing python with pyenv  https://review.opendev.org/70426620:33
mordredcorvus: any reason we should not land this: https://review.opendev.org/#/c/713060/ ?20:35
openstackgerritMohammed Naser proposed zuul/zuul-jobs master: DNM: Add support for installing python with pyenv  https://review.opendev.org/70426620:46
openstackgerritMohammed Naser proposed zuul/zuul-jobs master: DNM: Add support for installing python with pyenv  https://review.opendev.org/70426620:56
openstackgerritMohammed Naser proposed zuul/zuul-jobs master: Add support for installing python with pyenv  https://review.opendev.org/70426620:56
openstackgerritMohammed Naser proposed zuul/zuul-jobs master: Add support for installing python with pyenv  https://review.opendev.org/70426620:57
corvusmordred: i think we're good, i'll do that now20:58
mordredcool20:59
openstackgerritMohammed Naser proposed zuul/zuul master: Display clean error message for missing secret  https://review.opendev.org/71346920:59
*** rlandy is now known as rlandy|afk21:02
openstackgerritMohammed Naser proposed zuul/zuul-jobs master: Add support for installing python with pyenv  https://review.opendev.org/70426621:04
*** jamesmcarthur has quit IRC21:04
mordredgood job mnaser - that looks great21:06
mnasermordred: thanks, those will unblock us and will allow us to start adding more jobs to cherrypy to be tested using the same base os :)21:07
mordredmnaser: did noonedeadpunk figure out how to pre-cache the pyenv versions? like - if you just build a pile of them but don't install in /usr/local - is that final build step really quick?21:07
mordredor is that still WIP?21:08
mordred(mostly just curious)21:08
mnasermordred: i think last thing we were at was starting to write a dib element, but i think that's a bit newer for them21:08
*** jamesmcarthur has joined #zuul21:08
mnasermordred: ill let noonedeadpunk answer tho but i dont know if he's still around now :)21:08
mnaseri think my idea was that we can do this in parallel and the latter is just a speed up21:08
mordredcool. I mean - that's an optimization ... yeah21:08
mordredexactly21:08
mordredmy _hunch_ is that it'll use what it has built before21:09
mnasermordred: yep, thats what i think too..21:10
openstackgerritIan Wienand proposed zuul/nodepool master: Convert diskimages to slots  https://review.opendev.org/71338121:10
openstackgerritIan Wienand proposed zuul/nodepool master: diskimage: make name primary key  https://review.opendev.org/71338221:10
openstackgerritIan Wienand proposed zuul/nodepool master: Add parent and abstract flags for diskimages  https://review.opendev.org/71315721:10
*** jamesmcarthur has quit IRC21:13
mordredmnaser: nope. at least not in local testing21:14
mnasermordred: urgh21:14
mordredmnaser: I have 3.7.4 installed in ~/.pyenv like "normal"21:14
mordredand I did python-build 3.7.4 /usr/local and it decided it needed to download something21:14
mordredmnaser: oh! there's a "--keep" option for keeping the source tree21:15
mordredlet me try something21:15
mnaseralso i need to fix my assert21:15
mnasercomplains that python_version is not defined if it's not21:15
openstackgerritMohammed Naser proposed zuul/zuul-jobs master: Add support for installing python with pyenv  https://review.opendev.org/70426621:16
* noonedeadpunk reads back21:16
mnaseralso something i found out is that we run ensure-tox _before_ ensure-python ?21:16
mordredmnaser: ensure-tox include_roles: ensure-python21:16
mordredif you have a variable set21:17
mnasermordred: yes but it includes it _after_ installing tox21:17
mordredoh. wait21:17
mordredyeah21:17
mordredwow21:17
mnaserwhich means in the case of zuuls py37 tests21:17
mordredthat seems like an easy enough bug to fix21:17
mnaser /usr/local/lib/python3.6/dist-packages/tox/config/__init__.py:593: UserWarning: conflicting basepython version (set 3.6, should be 3.7) for env 'py37';resolve conflict or set ignore_basepython_conflict21:18
mordredI can't imagine that's in that order on purpose21:18
mnaserso i suspect that tox-py37 in zuul/zuul-jobs right now is actually... tox-py3621:19
noonedeadpunkSo I've just started work on element, but not yet finished.21:19
mordredI tried python-build --keep and it did not make any difference - I installed into one dir, then ran it again installing to a different dir and it started downloading the tarball again21:20
mnaserbleh21:20
mnaserso much for this ambitious plan21:20
mordredmaybe this is a thing where we need to send in a PR upstream to get them to understand that we'd like to do this thing21:20
mnasermordred: for what it's worth tho, python is installing in 1m25s21:21
mordredcool!21:22
mordredso maybe not a huge deal anyway21:22
mnaseri thought it would be a lot worse21:22
noonedeadpunkYeah, when I tried it locally it was even up to 3min21:23
mnasernoonedeadpunk: what was the instance size? i wonder if maybe its beacuse there's 8 cores on the opendev systems21:23
noonedeadpunkit was 4 cores21:23
noonedeadpunkand like 4gb ram iirc21:24
mnasermaybe 8/8 makes a difference21:24
mnaserwe can try that out21:24
*** dtroyer has quit IRC21:26
*** dtroyer has joined #zuul21:27
*** dtroyer has left #zuul21:27
openstackgerritMohammed Naser proposed zuul/zuul-jobs master: Add support for installing python with pyenv  https://review.opendev.org/70426621:28
mnaserlast attempt, hopefully.21:28
fungifwiw, i build a variety of versions of cpython from source just using its native build toolchain, and you could totally save the `make altinstall` step for job runtime, would only require a few minutes. we could even tar up the build tree and just fetch it from our mirror network like we do with wheels, so it's not bloating our node images21:30
fungier, only a few seconds for running `make altinstall` from the build dir21:30
mnaserfungi: i was thinking of that approach too, but thought that it started to be a little too much "walking our own path"21:31
fungii have 9 versions of python right now, total install size is 2gb, so baking a lot of them in does definitely increase the image size a fair amount21:32
openstackgerritMohammed Naser proposed zuul/zuul-jobs master: Add support for installing python with pyenv  https://review.opendev.org/70426621:32
mnaserfungi: if we bake them in, it seems like there's no quick way to reuse them or switch between them, not natively with pyenv anyways21:33
fungiwhat do you mean switch between them?21:33
fungiif you want python 3.6 you call python3.6 and if you want python 3.8 you call python3.821:34
fungi`make altinstall` lets you specify a completely separate libtree21:34
fungiso they can all exist in parallel in harmony, no problem21:34
fungialso i don't know that it's really walking our own path if we're using the exact build steps recommended by the upstream cpython maintainers21:35
fungibut maybe i don't find them as esoteric and mystical as some do21:35
*** jamesmcarthur has joined #zuul21:35
mnaserfungi: oh i see what you mean21:36
mnaseri guess it remains "what is python3" means21:36
fungi(it really is just `configure;make;make altinstall` but with some optimization flags passed)21:36
mnaserin a system like that21:36
fungiright, i don't think we need to define what the default python3 is, we can leave that for distro python21:36
openstackgerritMerged zuul/nodepool master: Revert abitrary uid support  https://review.opendev.org/71306021:36
fungibut that's just my opinion21:37
mnaserfungi: i actually like that idea21:37
mordredcould also just make a symlink21:37
mordredif you _did_ want to set a default21:37
mnaserand that way folks who use tox can just make sure they have the right env name or basepython that poits to specific things21:37
mordredyeah21:37
fungiright, you `make altinstall` to some specific tree on the filesystem and then symlink /usr/local/sbin/python3.6 to that python3.6 you built21:38
mnaseri personally don't care too much in my case of having an image that's 2gb bigger but saving on ~2m of build time *and* a download21:38
fungier, /usr/local/bin not sbin21:38
mordredyeah21:38
fungibut you get the point21:38
mordredalso - for you mnaser, you really probably only care about 3.5, 3.6, 3.7 and 3.8 right?21:38
fungiin opendev we'd probably provide half as many as i'm installing on my workstation, yeah21:39
mordredso you don't quite need the fungi 9 versions21:39
mordredin fact ...21:39
mnasertechnically don't even care about 3.7 too cause that comes with buster natively21:39
fungii have latest point releases of 2.7, 3.3-3.8, latest alpha of 3.9 and also a 3.10 which is really just current master21:39
mordredmnaser: if you go that route - you could really do the make altinstall of all of them (don't save it for runtime) - and just install all 4 versions then clean up the source/build tree21:40
mordredso you'd have a /usr/local/python3.6 and a /usr/local/python3.7 (for instance) - and then symlinks into /usr/local/bin and you're good21:40
fungiyep, worst case save the symlinking for a common role in the jobs21:40
mordredyeah. but if you skipped doing /usr/local/bin/python3 ...21:41
fungiso they don't appear in the default path unless requested21:41
mordredyou could totally pre-symlink totally in dib21:41
*** jamesmcarthur has quit IRC21:41
mordredyou could have ensure-python have the ability to symlink one of them to /usr/local/bin/python3 for setting a default21:41
mordredin case that's important for jobs21:41
mnaserhrm21:42
fungithe risk i see there is if you build, say, python3.7 from source into the ubuntu-bionic image and symlink it at /usr/local/bin/python3.7 such that it winds up shadowing the /usr/bin/python3.7 provided by the distro21:42
*** tjgresha has joined #zuul21:42
fungithen folks wind up testing from-source 3.7 if they meant to test distro 3.721:43
mnaserfungi: right, unless we do python-only images21:43
mordredyeah. but that might also be a thing you decide you _want_ to do21:43
mordredwhat mnaser said21:43
fungiahh, dedicated images, i see21:43
mnaserbut then the complication is its not trivial to use zuul/zuul-jobs unfortunately21:43
mordredwell ... maybe it's still fine21:43
mnaserbecause how do we override tox-py36 to use a specific image..21:43
mnaser(or tox for example)21:44
mordredoh - I see what you mean21:44
fungiif ensure-python just checks that the requested python is available in the default execution path before taking action, it should be fine?21:44
mordredno - for mnaser's use case for vexxhost - if he build a python base image that had all the pythons21:44
mordredbut still wanted tox-py36 to work21:44
mordredhow would he assign it to a node21:44
fungido we specify node labels/names in zuul/zuul-jobs?21:44
mnasernope21:44
fungii thought we wanted to avoid that so people could run them on whatever nodes they wanted21:45
mordredthat's right21:45
corvusmordred: an image with *all* the pythons, or an image for each python?21:45
mordredall21:45
*** jamesmcarthur has joined #zuul21:45
mordredfungi: but our way of doign that is that tox-py36 just runs on "the default"21:45
mnaseryeah, it'd be nice if we could "template" nodesets but that's a pretty big change i think21:46
mnasernodeset: "{{ python_build_image | default(base_image) }}"21:46
mnaseror default(omit)21:46
mordredmnaser: well - let's step back to a previous thought - if you don't do any build-time symlinking21:46
corvusthere's two approaches here: 1) make tox-py36 work in a variety of approaches; 2) inherit from tox-py36.  if vexxhost wants to use a specific image for tox-py36, then that's where a job like "vexxhost-tox-py36" or whatever would come into play21:47
mordredbut just put each python into a dir in /usr/local21:47
mordredthen add support to ensure-python for symlinking from a /usr/local structure instead of using pyenv21:48
mordredyou could just put the pythons into your normal base image - not worry about screwing people otherwise - and set the "please symlink me" flag in a site var or something21:48
mnasercorvus: ideally, i'd like it so that users of zuul dont have to go read some "vexxhost ci" documentations and instead can refer to zuul's docs (that we can help improve if something in zuul-jobs is missing).  that may be me tying too man things together21:48
mnasermordred: i like that approach, that seems like the one that probably has the least affect overall21:49
corvusmnaser: i agree that's ideal21:49
fungifor that i think we need some way of telling ensure-python how/where to get its python in a specific environment and use the default node21:49
*** jamesmcarthur has quit IRC21:49
mordredyeah21:49
*** jamesmcarthur has joined #zuul21:50
mordredor - just define an interface - "look for python{{ python_version }} in {{ python_install_base | default(/usr/local) }}"21:50
mnaserbut yeah, maybe ensure-python can have a "look for pythons" var that it checks if /usr/local/python{{ python_version }} exists and symlinks from there21:50
mordredmnaser: jinx21:50
mnaseraha :)21:50
corvusi have read scrollback, but i'm still not certain i understand the premise of the current convo; is it basically that while the pyenv approach works, it's not efficient, and we'd like to optimize it by having many pythons pre-installed on the image, but if we do that, how do we get tox using the right preinstalled python?21:51
mnasercorvus: i guess if ensure-python does symlinks, it can symlink everything inside python3.X/bin/ which would also symlink pip into /usr/local/bin/pip21:52
mnaserso when we run pip install tox in ensure-tox, it'll already use that specific python21:52
mordredcorvus: yes - I thnik that's the gist21:53
mordredFWIW - this is almost never the answer, but we could use https://www.gnu.org/software/stow/manual/stow.html21:53
fungii still think it ought to be viable to have a periodic job build your desired pythons for your default image, stash tarballs of them somewhere, then splat them onto the node when requested21:53
fungibut that's a tradeoff in network usage vs image size21:54
corvusmordred: nice... i mean, that program was designed *exactly* for this use case :)21:54
mordredfungi: yah - I think the biggest problem would be adding support to that to zuul-jobs21:54
fungiright, i guess it gets back to the same problem, it'd be an inherited job which adds a new role21:55
mordredcorvus: yeah - and then we could just have "get_python_from_stow" - which is already a defined thing so makes _total_ sense for zuul-jobs to support21:55
corvusfungi: that approach is nice, but adds a dependency on an external service21:55
mordredand in fact - isnt' python specific - so could be a pattern people could in general use to support pre-installation of things into nodes21:55
mordred(also, stow is already in debian - so apt-get install stow gets you the tool)21:56
mnaserold but https://bugs.python.org/issue1996821:56
fungicorvus: sure, the alternative adds a lot of in-image data for files which might not be accessed often. it's like when in opendev we decided to stop pre-downloading distro packages into the images and instead rely on nearby mirror servers21:56
mordredmnaser: wow21:57
mordredmnaser: oh - you know - I think that's not so much of an issue21:58
mnaseri dont know anything about stow but i just ran into that searching "python" and "stow"21:58
mordredyeah - so - in this case what the person wants isn't as important to us21:58
fungiright, we wouldn't want to move it to a different path than it was built for21:59
fungior at least that doesn't seem like a necessary part of the solution anyway21:59
mordredit's _fine_ if sys.path is /usr/local/stow/python3.6 as long as /usr/local/bin/python3.6 exists and is a symlink to /usr/local/stow/python3.6/bin/python21:59
mnaseralso wrt fungi comments about light image vs downloading things -- i think whatever approach we should take should be something that can be documented by "This is how you can run it and these are the jobs you need to do it" (similar to how container jobs + intermediate registry + how to write the base jobs is documented)21:59
mordred++21:59
mnaserso i'm not opposed to that approach, i just don't wanna end up doing something alone bc i know opendev will probably have to end up looking at solving the same problem and so will other users22:00
mnaserso aligning would be nice22:00
mordredwell - actually - stow solves the issue _one_ way and will make ensure-python-> make python{{version}} /usr/local/bin/python3 work fine22:00
mordredbut it _won't_ result in /usr/local/bin/python3.{5,6,7,8} - because that's not what it's good at - for supporting doing that I think we'd want to define our own symlinking22:01
mordredbut I don't thnik we actually need that22:01
fungiyeah, i don't think one or the other is necessarily the "right way" just noting that it's a tradeoff and there will always be a lot more things which users need semi-frequently but not often enough to warrant embedding in images22:01
mordredas much as we want to ensure that a particular job has acecss to the particular python it's looking for22:01
mordredso I *thnk* it's fine for zuul-jobs normal assumptions22:01
mordredfor a provider like vexxhost witha multi-tenant zuul - building larger images with all the pythons, rubys, golangs, whatev in them - but that are known to be copy-on-write anyway might be a better tradeoff than build-time downloading or installing22:03
fungiin openstack, users mostly want "any old python interpreter" or "the version of python provided by this system" but less frequently "some specific version of python" so need to work out where to draw the line in providing that in images22:03
mordredand if we get this working with stow - we could extend the pattern to ruby, golang, whatev - and providers that don't want to build such images dont' have to22:03
openstackgerritMohammed Naser proposed zuul/zuul master: Display clean error message for missing secret  https://review.opendev.org/71346922:04
mnasermordred: ok so i guess the pattern might be something an element that builds into stow (hopefully inside dib) and then maybe we can make a load-from-stow role that gets included inside python so we can reuse the bits22:05
mordredyeah22:06
mordred*hand wave*22:06
mnaserok well i think for now the pyenv approach might be good enough and this seems like something we can optimize on eventually too22:07
mordredbut I thnk it's at least worth thinking about for a few minutes - because it might give you a tool to solve this not only for python and in zuul-jobs - but broadly for the same pattern of problem22:07
mordredmordred: ++22:07
mordredgah22:07
mordredmnaser: ++22:07
mnasermordred: i agree, i think it's a good thing to figure out a pattern22:08
corvusnew subject: i'm wondering if we can put the pull-from-buildset-registry role in the base jobs, so that it can run in any job.  that way we can have container-using jobs which don't build images "require" other images and get them pulled.  right now, only jobs that either run a buildset registry or build an image pull images.  but zuul-quick-start, for example, does neither.22:12
corvusthere are two cases to cover: that ^ is one of them; in that case the registry is run by another job (one that this job depends on) and so we know that as soon as this job starts, the buildset registry is running.  the other case is that this is either a buildset registry job or an image build job, in which case, there will not be a registry running at the start of the job; in that case we would just have to22:13
corvusrun the role again later in the job once the registry is running.22:13
mordredhrm22:17
openstackgerritJames E. Blair proposed zuul/zuul master: Use ZK TLS in quickstart  https://review.opendev.org/71281722:17
openstackgerritJames E. Blair proposed zuul/zuul master: Move zuul-quick-start requires to zuul-build-image  https://review.opendev.org/71354522:17
mordredwhat a great late-in-day question22:17
mnasercorvus: i'm trying to follow but i don't see "pull-from-buildset-registry" in zuul/zuul-jobs/roles?22:17
corvuser sorry22:17
corvuspull-from-intermediate-registry22:17
mnasercorvus: so if i understand it would be making a base job which replaces yoursite-buildset-registry (based on https://zuul-ci.org/docs/zuul-jobs/docker-image.html ? )22:21
corvus713545 is the workaround because of that22:21
corvusmnaser: no, i'm thinking just put that role in *the* base job for the site, so that any job automatically gets that.22:21
mordredcorvus: biggest issue I coudl see is that would cause it to run before installing docker, no?22:22
corvuseverything else stays the same22:22
mordredwould that matter?22:22
corvusi think that's okay; it just runs on the executor22:23
mordredcorvus: oh right. nod22:23
mordredyeah22:23
mordredI *think* it would be ok22:23
corvusthe other idea i had was use multiple inheritance for this; so zuul-quick-start could inherit from "almost-base-job-that-runs-pull-from-intermediate-registry"22:24
*** mattw4 has joined #zuul22:24
mnaserit seems to not be an issue but i think the role might need some cleaning up as it makes assumptions from what i see22:25
corvus(strictly speaking, zuul-quick-start doesn't need multiple inheritance for this, but other similar jobs might, so i wanted to think about it generally)22:25
mnaseri.e. it's not very noop-y22:25
*** mattw4 has joined #zuul22:25
*** harrymichal has quit IRC22:25
mnaserseems like something that doesn't hurt and makes life easier22:25
*** mattw4 has quit IRC22:25
mordredyeah22:25
mordredand causes things to dwim22:26
corvusmnaser: yes probably so22:28
corvusright now it either assumes that a previous job started a buildset registry, or this job started a buildset registry.  we would need to also support "there is no buildset registry"22:28
mnaseryeah22:28
corvusbut i think if we moved it to the base job, it would make the process pretty intuitive22:28
mnaseri'm all for making lives easier22:28
*** noonedeadpunk has quit IRC22:29
openstackgerritIan Wienand proposed zuul/nodepool master: Add parent and abstract flags for diskimages  https://review.opendev.org/71315722:29
mnaseralso pyenv stuff should be good to go: https://review.opendev.org/#/c/704266/1322:29
clarkbre stow thats sort of the packaging agnostic version of nix?22:29
mordredyeah. and works via symlinks22:30
mordredso it doesn't have what nix does with expressing depend lists22:30
mordredit's more a tool to manage symlinks for a bunch of parallel software installed in parallel dirs22:30
*** noonedeadpunk has joined #zuul22:31
openstackgerritJames E. Blair proposed zuul/zuul master: Don't use JKS with ZK  https://review.opendev.org/71334022:40
*** rlandy|afk is now known as rlandy22:48
clarkbianw the image inheritance stack lgtm now22:50
*** Goneri has quit IRC22:50
ianwcool, i'll fix up the config changes as that illustrates it's use22:51
ianwproject-config i mean22:51
clarkbI've also abandoned https://review.opendev.org/#/c/712997/ as the base image change to openssl.cnf should address that22:51
clarkband we can unabandon if that isn't the case22:51
openstackgerritIan Wienand proposed zuul/nodepool master: Move config merge into DiskImage object  https://review.opendev.org/71355022:53
*** jamesmcarthur has quit IRC22:56
mordredclarkb: https://review.opendev.org/#/c/712495/22:58
mordredis green22:58
clarkbmordred: approved22:59
clarkbsemi related to that is fungi's python3.8 chagne for nodepool looks like it hit a test failure22:59
clarkbI'll reapprove it22:59
*** jamesmcarthur has joined #zuul22:59
*** hashar has quit IRC23:04
clarkbcorvus: mordred: https://review.opendev.org/#/c/712544/ is a change I wrote in response to mordred getting that confusing error from zuul23:14
clarkbit ended up being a non issue other than the message itself, but I think it may be worth reviewing that to see if we can pull on the thread enough to be less confusing?23:14
corvusclarkb: oh thanks, that slipped my mind23:15
corvusclarkb: okay, so that's the case where there's an item ahead, but the item ahead's layout is none, and you reckon that happens when the item ahead has an error?23:16
clarkbcorvus: ya in this case the item ahead was the base config for the tenant I think and it was in error23:17
corvusclarkb: the item ahead is a change of some kind23:18
clarkbdon't we set parent_layout to the base config if there isn't a chagne ahead?23:18
corvusyes23:18
corvusthat should never be none23:18
clarkboh right23:18
corvusif that's the case, we should not land this change and we should look harder into the error23:18
clarkbat the time I didn't think there was a chagne ahead, but I'm not 100% positive of that23:19
mordredI;m _fairly_ certain there wasn't ...23:19
clarkbya so this could be a deeper bug23:19
mordredoh - actually23:20
mordredit is stacked on https://review.opendev.org/#/c/712495/23:20
mordredbut it doesn't look like that change ever had an error23:20
mordredand certainly not around the time that https://review.opendev.org/#/c/712495 tripped the error23:21
corvus495 is the change that saw the error, what's the change it was stacked on?23:22
mordredoh blah23:23
mordredhttps://review.opendev.org/#/c/712489/23:23
corvusthere was not a reconfiguration in progress at the time23:26
corvusbut that did happen right around when 489 was approved and enqueued into gate, and 495 had a new patchset uploaded23:27
corvuswhat if: because 489 went into gate, it superceded the non-live version of 489 which was enqueued into check ahead of 495?23:29
mordredcorvus: oh - interesting23:30
clarkbcan they cross pipeline boundaries like that?23:30
mordredwell - it's that the gate job cancelled the check job since we don't do clean check in zuul23:30
*** Defolos has quit IRC23:30
corvuswell, i think we have the gate pipeline supercede check, so it's supposed to remove live versions of changes in check23:31
mordredyeah23:31
corvusit's not supposed to do that for non-live versions23:31
corvusbut i'm just brainstorming possible edge cases23:31
mordredyeah23:31
mordredmaybe I should say yeah again23:32
corvusmordred: you uploaded the new patchset of change #2 the same second zuul cleared the verified vote on change #1 because it went into gate23:32
mordredcorvus: I'm very good23:32
corvusmordred: yeah23:32
openstackgerritMerged zuul/nodepool master: Declare support for Python3.8  https://review.opendev.org/71249423:38
*** tosky has quit IRC23:38
clarkbI bet that was intentional timing too23:38
clarkb"hey let me try and confuse zuul"23:38
*** jamesmcarthur has quit IRC23:44
*** jamesmcarthur has joined #zuul23:46
corvusi don't see the superceded log line around that time, so i don't think that theory holds23:51
*** jamesmcarthur has quit IRC23:51
corvusit might be worth it to try to recreate in a unit test;  enqueue A in gate, hold in node requests, upload patchset 2 of B.23:53
corvusclarkb: that's what i'd do next; i'll leave that to you if you want to keep pulling on the thread, or i can look at doing that tomorrow23:54
clarkbI doubt I'll get to it today. I hear cries of "I'm hungry" downstairs23:54
clarkbI should go sort out dinner23:54
corvusi'm eod as well23:55

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