Thursday, 2019-10-03

*** jamesmcarthur has joined #zuul00:09
*** michael-beaver has quit IRC00:10
*** ianychoi has quit IRC00:12
*** rlandy has quit IRC00:13
*** ianychoi has joined #zuul00:15
*** jamesmcarthur has quit IRC00:24
*** ianychoi has quit IRC00:32
*** jamesmcarthur has joined #zuul00:35
*** ianychoi has joined #zuul00:48
*** jamesmcarthur has quit IRC00:49
*** jamesmcarthur has joined #zuul00:51
*** jamesmcarthur has quit IRC00:54
*** jamesmcarthur has joined #zuul00:55
*** jamesmcarthur has quit IRC01:07
*** igordc has quit IRC02:01
*** jamesmcarthur has joined #zuul02:18
*** jamesmcarthur has quit IRC02:56
*** jamesmcarthur has joined #zuul02:58
*** bhavikdbavishi has joined #zuul03:10
*** bhavikdbavishi1 has joined #zuul03:15
*** bhavikdbavishi has quit IRC03:17
*** bhavikdbavishi1 is now known as bhavikdbavishi03:17
daniel2fungi: I added privileged, but the container itself is built without any sudo ability.03:44
*** jamesmcarthur has quit IRC03:45
*** jamesmcarthur has joined #zuul03:47
*** jamesmcarthur has quit IRC03:57
*** jamesmcarthur has joined #zuul03:57
daniel2Beat the system.  Injected a new sudoers file.03:58
*** jamesmcarthur has quit IRC04:02
*** jamesmcarthur has joined #zuul04:33
*** jamesmcarthur has quit IRC04:40
*** saneax has joined #zuul04:46
*** spsurya has joined #zuul05:05
*** jamesmcarthur has joined #zuul05:17
*** jamesmcarthur has quit IRC05:23
*** jamesmcarthur has joined #zuul06:19
*** ianychoi has quit IRC06:20
*** ianychoi has joined #zuul06:23
*** ianychoi has quit IRC06:29
*** jamesmcarthur has quit IRC06:30
*** ianychoi has joined #zuul06:31
*** saneax has quit IRC06:34
*** jamesmcarthur has joined #zuul06:49
*** jamesmcarthur has quit IRC06:58
*** jamesmcarthur has joined #zuul07:01
*** tosky has joined #zuul07:16
*** hashar has joined #zuul07:24
*** pcaruana has joined #zuul07:28
*** ianychoi has quit IRC07:45
*** jangutter has joined #zuul07:46
*** jpena|off is now known as jpena07:49
*** avass has joined #zuul08:07
*** gtema has joined #zuul08:11
*** jamesmcarthur has quit IRC08:17
*** panda|off is now known as panda08:20
*** recheck_ has quit IRC08:22
*** recheck has joined #zuul08:22
*** recheck has quit IRC08:25
*** recheck has joined #zuul08:25
*** recheck has quit IRC08:27
*** recheck has joined #zuul08:27
openstackgerritGabor Lekeny proposed zuul/zuul master: Fix github webhook authentication  https://review.opendev.org/68635508:34
openstackgerritGabor Lekeny proposed zuul/zuul master: Fix github webhook authentication  https://review.opendev.org/68635508:38
mordredtristanC: comment left on https://review.opendev.org/#/c/68624908:58
mordredtristanC: oh - I see you discussed that in scrollback. might be worth a comment in the tox.ini about it anyway08:59
mordredalso - I'd LOVE to add type annotations to openstacksdk - have been waiting until the "drop 2.7" moment08:59
mordredwhich, AIUI - is actually now, since train is released09:00
mordredtristanC: so if you get bored and want to make an initial patch to openstacksdk adding enough annotations for zuul-registry to be happy - it will provide happiness09:02
mordredtobiash: I'd love to figure out how to make a test that would remind us if we change statsd settings to also update the exporter mapping in https://review.opendev.org/#/c/660473/ - but I have no good ideas for that ATM09:05
openstackgerritMerged zuul/zuul-registry master: Add tox configuration and fixe flake8 errors  https://review.opendev.org/68623009:08
tobiashmordred: I've no idea either09:11
tobiashzuul-maint: I'll be ooo for several weeks09:13
*** jamesmcarthur has joined #zuul09:14
mordredtobiash: vacation?09:15
tobiashBike accident :(09:15
mordredugh. :(09:15
mordredI had a minor one of those 1.5 years ago and only hurt my wrist but it still sucked - hope all gets better!09:16
tobiashFinger broken, at least four weeks single handed...09:17
*** jamesmcarthur has quit IRC09:18
mordred*ugh* that sounds horrible09:21
openstackgerritMerged zuul/nodepool master: Add statsd_exporter mapping  https://review.opendev.org/66047310:14
*** jamesmcarthur has joined #zuul10:15
*** jamesmcarthur has quit IRC10:19
*** mgoddard has quit IRC10:23
*** mgoddard has joined #zuul10:26
*** saneax has joined #zuul10:45
*** jpena is now known as jpena|lunch11:00
openstackgerritGabor Lekeny proposed zuul/zuul master: Fix github webhook authentication  https://review.opendev.org/68635511:10
*** bhavikdbavishi has quit IRC11:11
*** jamesmcarthur has joined #zuul11:16
*** jamesmcarthur has quit IRC11:20
*** jamesmcarthur has joined #zuul11:26
*** jamesmcarthur has quit IRC11:35
*** jamesmcarthur has joined #zuul11:37
fungitobiash: sorry to hear that, wishing your finger a speedy recovery11:39
*** tosky_ has joined #zuul11:44
*** tosky has quit IRC11:46
*** jamesmcarthur has quit IRC11:51
*** jamesmcarthur has joined #zuul11:52
*** saneax has quit IRC11:54
*** jamesmcarthur has quit IRC11:59
*** tosky_ is now known as tosky12:01
*** jamesmcarthur has joined #zuul12:07
*** jpena|lunch is now known as jpena12:12
*** jamesmcarthur has quit IRC12:19
*** jamesmcarthur has joined #zuul12:20
*** nhicher has quit IRC12:20
fungianybody happen to know of any zuul users who might be attending the open infra summit and/or project teams gathering in shanghai next month?12:26
*** nhicher has joined #zuul12:27
mhuHello, there are a few patches still open before the backend side of authz/n in zuul is completed, could they get some reviews please?12:30
mhuhttps://review.opendev.org/#/c/641099/ and https://review.opendev.org/642408 and https://review.opendev.org/68479012:30
*** jamesmcarthur has quit IRC12:33
*** rlandy has joined #zuul12:34
mordredfungi: I take it I don't count?12:34
mordredmhu: looking12:34
fungimordred: sure you count! the questing is, are you going? ;)12:35
mhufungi: I'll represent software factory users (RDO, OSP downstream CI among others) FWIW12:36
openstackgerritMonty Taylor proposed zuul/zuul master: Authorization rules: support YAML nested dictionaries  https://review.opendev.org/68479012:38
fungimhu: awesome! thanks12:39
mordredfungi: yes!12:40
mordredmhu: all lgtm - I rebased the third, it was on top of a previous patchset12:40
mhuthanks!12:40
* Shrews would love to get https://review.opendev.org/681857 merged today for an eventual builder restart12:47
*** jamesmcarthur has joined #zuul12:52
mordredyou're a builder restart12:52
mordredSpamapS: done. (I was actually in the middle of looking at that already)12:53
mordredgah. I meant Shrews12:55
Shrewsmordred: SpamapS and I are actually the same person12:56
tristanCmordred: nice, i can have a look for openstacksdk then. I think it's a worthy effort, types are super powerful imo. At least for documentation purpose :)12:58
mordredtristanC: I agree. I have, unfortunately, found that we do something in openstacksdk that's going to make it almost impossible to add type hints12:59
mordredtristanC: I'm pondering ways to change it - because I also think it's ultimately a runtime cost that could be a CI or build-time cost instead ... but I've only had one coffee today, so I'm not sure I'm fully smart enough13:00
mordredShrews: I've thought that for many years13:00
Shrewsone of us is the evil, alternate persona. i won't say which13:01
mordredShrews: only one? or maybe both are?13:02
SpamapSShrews: your side of the shared consciousness gets much better bbq than my side tho.13:05
tristanCmordred: yeah, some python constructs are difficult to type without inducing some runtime cost13:06
mordredtristanC: the biggest issue we have is with openstack._meta.connection.ConnectionMeta - which is a metaclass that adds a descriptor for each service and alias in os-service-types13:07
mordredmapping it to the proxy object if one exists, or to the generic if it doesn't13:08
* SpamapS quite enjoys mypy-ing code... if that's something that needs doing13:08
mordredtristanC: when you add a py.typed file to openstacksdk - running mypy in zuul-registry gets you:13:08
tristanCSpamapS: we are discussing https://review.opendev.org/#/c/686249/313:08
mordredzuul_registry/swift.py:62: error: "Connection" has no attribute "object_store"13:09
mordredtristanC: because there is no object_store attribute on Connection until the metaclass runs13:09
mordred now - I'm not really sure why mypy doesn't run metaclasses - since those are ultimately part of the compile step - but such is life13:10
tristanCmordred: how did you typed the connection object?13:11
mordredtristanC: remote:   https://review.opendev.org/686397 WIP Start supporting type info13:11
mordredtristanC: so what I'm thinking is ditching the metaclass (since it also makes the code harder to understand) - just actually putting entries for each service in the file - and making a utility script that uses os-service-types we could use to generate the list / update it when things change13:14
SpamapSIIRC you need to use a protocol for that13:16
mordredSpamapS: you said words that I don't understand13:16
SpamapShttps://mypy.readthedocs.io/en/latest/protocols.html13:16
SpamapShttps://mypy.readthedocs.io/en/latest/protocols.html#simple-user-defined-protocols specifically13:17
tristanCCould it be that the ConnectionMeta object is considered "arbitrary metaclass code" which is not supported by mypy according to https://mypy.readthedocs.io/en/latest/metaclasses.html#gotchas-and-limitations-of-metaclass-support ?13:17
SpamapSSo you will want something like SupportsObjectStore(Protocol)13:18
mordredSpamapS: no - that's a different issue - the problem here is that there is no attribute that exists to attach a type to in the first pace13:18
mordredtristanC: yes, I thnk that's more likely the case13:18
SpamapSmordred: IIRC that's why you use protocols, because the protocol will say what type the attribute will have if/when it exists.13:18
mordredyeah. there's just no attribute13:19
mordredwe could actually assign a real type to it - there's just no handle to whcih to attach either a real type or a protocol13:19
mordredthis is why I think the metaclass in this case is not enough of a win to justify keeping13:20
SpamapSThe things that are expected to have the attribute, will be the ones you attach the protocol to.13:20
SpamapSBut yeah, if it's just as easy as inheriting some base class that defines the attribute instead of metaclass-fancy-making ... inheritance seems the simpler way forward.13:21
mordredSpamapS: yah - but ... I don't know what the attribute is without running the metaclass code to generate the list of attributes13:21
mordredexactly13:21
SpamapSYeah the point of typing is to make the code easier to read and understand.. and from my experience, metaclasses do the opposite. ;)13:21
mordredSpamapS: these are currently a dynamic list of attribute names based on the list of known service types13:21
tristanCmordred: how is the attribute object_store set in the end?13:22
mordredthe metaclass attaches it to the dct namespace dictionary of the Connection class13:23
SpamapSYeah seems like just having a non-functional attribute there and then making sure to replace any hasattr's with .foo is not None would result in better readability.13:24
mordredit's adding a ServiceDescriptor object, which will ultimately return an openstack.object_store.v1._proxy.Proxy - so if we staticly define the attributes, we should be able to mark them with the correct final proxy classes13:24
mordredSpamapS: yah13:24
mordredwell - to be fair - the attributes are always there13:24
SpamapSThen your type is Optional[Proxy]13:24
mordredit will *always* be a Proxy13:25
SpamapSoh so yeah.. ditch that meta business13:25
mordredit's a very non-dynamic dynamic metaclass13:25
tristanCit seems like that meta business could be taken care of by a one time script13:26
mordredyup13:26
mordredI honesty think it will be an improvement all the way around13:26
fungiis there a short writeup somewhere on the benefits of typed objects with python? improved readability? helps to catch latent bugs? performance improvements?13:32
tristanCmordred: in the meantime we can fake an object_store attribute for the Connection type, then we need to annotate the get_endpoint and upload_object. The rest of zuul_registry.swift use the more low level session.get|delete which will also needs to be annotated13:33
pabelangerjob names are unique across tenants too, right? eg: I cannot have 2 jobs named foo IIRC.  Basically, I'd like tenantB:foo to parent to tenantA:foo13:35
tristanCfungi: https://realpython.com/python-type-checking/ has a nice Pros/Cons and some useful examples too13:35
openstackgerritMonty Taylor proposed zuul/zuul-registry master: WIP Consume typing from openstacksdk and keystoneauth  https://review.opendev.org/68640313:35
mordredtristanC: yeah. I've got some stub patches up now ^^13:36
fungitristanC: thanks, the description at https://pypi.org/project/mypy/ was a little light on detail13:36
tristanCfungi: and well, https://en.wikipedia.org/wiki/Type_theory#Practical_impact has some useful content too :-)13:38
funginice, thanks again13:38
fungiafter so much time working in strictly-typed languages i found the flexible/dynamic typing in python refreshing, but i understand it's not without its down-sides13:40
*** jamesmcarthur has quit IRC13:40
mordredpabelanger: tenants are completely isolated - so you should be able to have a foo jobs in both tenants. however, tenants are completely isolated, so tenantB:foo would not be able to see tenantA:foo to be able to use it as a parent13:42
mordredpabelanger: you can, of course, have the repo that defines foo loaded in both tenantA and tenantB13:42
tristanCfungi: most of the time mypy figure out dynamic type, and adding type annotation to function definition is really handy to understand the code. It's kind of the :arg: and :return: doc string content, but checked13:55
*** gtema has quit IRC13:55
*** jamesmcarthur has joined #zuul14:14
*** leifmadsen has left #zuul14:22
fungiyeah, pretty cool14:23
*** hashar has quit IRC14:24
fungii just especially enjoy the luxury of not having to do things like recast an int as a float before performing mathematical operations, or recast a byte array as a boolean for conditional checks14:24
fungithe automatic type coercion in python is really pleasant14:25
Shrewsuntil it's not14:31
fungiit's a balancing act14:34
*** rfolco is now known as rfolco|bbl14:35
*** jamesmcarthur has quit IRC14:35
fungii do appreciate the idea of being able to declare strict typing in places where it might be important and allow loose typing in places where that's more convenient14:36
Shrewsfor me, it's a directly proportional relationship between how complex a program is and how much I prefer static typing.14:38
fungii can definitely see that14:39
*** jamesmcarthur has joined #zuul14:40
*** jamesmcarthur has quit IRC14:41
*** jamesmcarthur has joined #zuul14:44
*** bhavikdbavishi has joined #zuul14:50
*** jamesmcarthur has quit IRC14:57
*** jpena is now known as jpena|off14:59
*** jamesmcarthur has joined #zuul15:00
*** bhavikdbavishi1 has joined #zuul15:18
*** bhavikdbavishi has quit IRC15:20
*** bhavikdbavishi1 is now known as bhavikdbavishi15:20
*** jamesmcarthur has quit IRC15:21
openstackgerritNicolas Hicher proposed zuul/zuul-jobs master: DNM: debug console issue when iptables-save is called  https://review.opendev.org/68642415:29
*** jamesmcarthur has joined #zuul15:30
*** mattw4 has joined #zuul15:31
*** michael-beaver has joined #zuul15:33
tristanCmordred: i'll push a couple of changes shortly on your py.typed ones to remove the type ignore from zuul_registry.swift module15:42
openstackgerritTristan Cacqueray proposed zuul/zuul-registry master: Add type annotations  https://review.opendev.org/68624915:59
openstackgerritTristan Cacqueray proposed zuul/zuul-registry master: WIP: use openstacksdk wip annotation  https://review.opendev.org/68643415:59
*** rfolco|bbl is now known as rfolco16:00
openstackgerritFabien Boucher proposed zuul/zuul master: WIP - Gitlab - Basic handling of merge_requests event  https://review.opendev.org/68599016:07
SpamapSfungi: for those wild and crazy kids who use editors with type-ahead assist, static typing actually is a bigger win, because they type   variable1. and their editor often knows the methods/attributes and can help them out.16:21
SpamapSSo type-annotating just with the basic python types is actually a good way to facilitate teaching.16:22
fungioh, neat, i hadn't considered that16:22
SpamapSAlso I imagine a well-annotated python code-base eases the pressure toward 100% unit test coverage.16:24
toskyI'd say that could be a slippery slope :)16:25
SpamapSPeople just like measuring stuff.16:26
SpamapSIf you have mypy fully stubbed out including your deps, you can probably rest on 85% unit test coverage and focus on higher value functional tests.16:27
toskyfunctional tests do not replace the need for complete unit tests; it's a pyramid16:28
SpamapSThe problem is, there's a dogma of unit test coverage that, IMO, wastes a lot of time on busy work making sure things are covered instead of focusing on your external interfaces which are where most things break.16:29
SpamapSA unit test covering some code is fine and all, but it starts to be a vanity metric when you're mocking/faking the world.16:29
toskyit all depends on how your code is structured and where the external interfaces are (there may be internal subcomponents with almost-stable interfaces)16:30
SpamapSAnd the big thing unit test suites are good for, refactoring code, is faster and better served by static typing.16:30
toskyfor sure I wasn't suggesting to mock the world, which is as bad16:30
SpamapS"Are you, mocking me?" -- 3rd-party API16:31
toskyuhm, I think I'm not going to totally buy your definition of what unit tests suites are good too16:32
*** chandankumar is now known as raukadah16:34
*** jpena|off is now known as jpena16:41
*** igordc has joined #zuul16:46
*** tosky has quit IRC17:14
*** jamesmcarthur has quit IRC17:18
*** jamesmcarthur has joined #zuul17:19
tristanCSpamapS: I find unittest less and less useful once you have type checks, and unittest may become a real pita when refactoring17:20
*** openstackgerrit has quit IRC17:21
corvusi do a happy dance whenever i have a refactoring commit that's fully tested with no changes to tests :)17:30
fungithat was the impetus for finally adding tests of my mud engine... i wanted to rip out and replace the entire data management layer and needed some way to catch regressions. it's a relief to be able to get confirmation that behaviors you care about in a system of reasonable complexity remain unchanged through major backend uplifts17:32
*** openstackgerrit has joined #zuul17:34
openstackgerritJames E. Blair proposed zuul/zuul-registry master: Add streaming download support  https://review.opendev.org/68644917:34
openstackgerritJames E. Blair proposed zuul/zuul-registry master: Update test script to match playbook  https://review.opendev.org/68645017:34
Shrewscorvus: let me know if my comment on 686449 is too verbose   :)17:36
corvusShrews: derp, thanks.  i think your comment is spot on.17:37
openstackgerritJames E. Blair proposed zuul/zuul-registry master: Add streaming download support  https://review.opendev.org/68644917:38
openstackgerritJames E. Blair proposed zuul/zuul-registry master: Update test script to match playbook  https://review.opendev.org/68645017:38
corvusi was going to have a stream= argument to get_blob, but then i got to fighting python on generators and decided i had better things to do and just made another method17:40
Shrewsi like the separate method better anyway. do one thing and do it well17:42
corvusyeah, it was an easy sell for me17:43
Shrews"Streaming output and also using sessions requires a good understanding of how session locks work."   corvus, i'm going to assume you have that understanding and will tell me to not worry about it17:49
corvusShrews: would you like me to say that?  i will say anything for cookies17:50
* Shrews hands a whole box of cookies to corvus17:50
corvusShrews: it's fine!17:50
Shrewslgtm then  :)17:51
corvusShrews: i don't believe we're using the sessions it's talking about -- i think we would need to set "tools.sessions.on = True" for that17:51
*** jamesmcarthur has quit IRC17:51
*** jamesmcarthur has joined #zuul17:51
corvus(so we're doing auth without sessions, which is totally a thing and easy to do with http basic auth which is what we're doing)17:51
*** rfolco has quit IRC17:52
*** jamesmcarthur has quit IRC17:52
ShrewsIf my nodepool change gets one more random failure, I'm literally going to flip my  desk over in frustration17:57
Shrewsthat's 3 today, for those counting along with me17:58
fungifailures on image upload jobs?17:59
Shrewsfungi: no. totally unrelated stuff17:59
Shrews1 waiting for zuul, 1 waiting for ssh, and 1 waiting for k8s18:00
corvusShrews: should we start looking into those?18:01
Shrewscorvus: possibly? i've seen them all before, i just seem to be catching them all in my one change18:02
Shrewsi commented each failure in https://review.opendev.org/68185718:03
*** jpena is now known as jpena|off18:05
paladoxcookies = biscuit?18:07
*** spsurya has quit IRC18:07
corvusyes i will also accept biscuits and digestives :)18:08
paladoxlol18:09
* paladox aware that cookies in american english = biscuts in the British lang :)18:09
paladoxcookies in britain are a actually a type of biscuit!18:10
openstackgerritTristan Cacqueray proposed zuul/nodepool master: wip: add a standalone launcher object  https://review.opendev.org/63963218:10
paladoxwait... they have digestives in the US?18:11
* paladox thought that was a british thing :P18:11
corvusShrews: that zuul error is weird -- it was waiting for mysql to come up, but according to the logs, mysql was up about 20 seconds after we started waiting for it...18:11
fungipaladox: they have digestives in the usa, you just need to find a grocer who stocks a few shelves of brit comestibles18:12
corvuspaladox: my local store carries mcvitie's18:12
paladoxheh18:12
fungii think i can even find them at the local chemist18:12
Shrewscorvus: is there something about that wait that might not recognize the service starting AFTER the wait? i didn't look that closely, tbh18:12
paladoxmcvitie's are nice!18:13
corvusShrews: it's the bash loop that checks to see if it can open /dev/tcp/mysql/330618:13
corvusi'm worried that it might be some obscure docker thing, but i really have no idea18:14
corvusthis is on limestone; let's file that away18:15
paladoxfungi do pharmacies sell food in the US?18:16
corvusthey sell stuff you can eat but probably nothing you should18:16
paladoxheh18:18
* paladox knows of one pharmacie that is in sainsburys :P18:18
paladox*pharmacies18:18
fungiyeah, they tend to be general convenience shops here18:18
Shrewscorvus: that wait loop looks like it gave up at 2019-10-03T13:13:19 and mysql said it was ready at 2019-10-03 13:11:37. maybe it just needs more time?18:19
Shrewscorvus: oh, nm. that's 2 minutes, not seconds. derp18:19
Shrewsi thought we just might be cutting it close, but that's certainly enough time18:20
fungiso a pharmacy counter and first aid type supplies and more recently small clinics, but also often a miniature grocery (mostly shelf-stable/canned goods but sometimes also refrigerated/frozen, usually nothing fresh), greeting cards and gifts, photo studio, whatever18:20
Shrewsfungi: we had an old timey pharmacy in Boone that used to grill burgers. it was the best18:21
fungipaladox: i do have vague memories of finding at least snacks and beverages in a boots in the uk though18:22
paladoxoh, yes!18:22
paladoxthey do snacks18:22
paladoxthey once did a drive through boots here :P18:22
paladoxthat closed down last year and mcdonalds opened up18:22
fungiShrews: yup, there's one in "downtown" pittsboro too if you're nostalgic for the experience18:23
fungiand feel like dealing with chapel hill traffic that is18:23
Shrewsmeh, it's hard to recapture the poor-college-student-desperate-for-a-between-class-cheap-burger experience18:24
funginot sure i want to relive that, i can still remember it well enough on my own ;)18:25
*** bhavikdbavishi has quit IRC18:25
corvusShrews: https://www.nytimes.com/2019/10/03/travel/what-to-do-36-hours-in-boone-north-carolina.html18:26
paladoxLondon is scattered with mini shops (at least tesco's/sainsburys)18:26
Shrewsah, nostalgia18:30
corvusi remember it fondly18:30
Shrewscorvus: i keep looking for a home just off that very street in the top pic.18:31
Shrewspricey and rare18:31
corvusmaybe more so now that the nyt just told everyone about it18:31
Shrewsthey probably only published it b/c ASU beat UNC a couple of weeks ago. the hype will die down18:32
*** recheck has quit IRC18:34
*** recheck has joined #zuul18:34
*** recheck has quit IRC18:37
*** recheck has joined #zuul18:37
openstackgerritMatthieu Huin proposed zuul/zuul master: Add OpenAPI description for enqueue, dequeue, autohold  https://review.opendev.org/67425718:39
*** jamesmcarthur has joined #zuul18:47
Shrewsmhu: left a question for you on 64109918:49
*** rfolco has joined #zuul18:57
* Shrews flips table19:05
ShrewsOk, I'm declaring nodepool jobs unstable. I've hit the 4th "random" error on https://review.opendev.org/681857 this time on the openshift job19:07
ShrewstristanC: any chance you can check out the k8s and openshift failures there?  ^^  maybe there is something weird with our nodesets19:08
Shrewsor a provider19:09
* Shrews checks provider on the failures19:09
tristanCShrews: hum let me check, it seems like it always happen on fortnebula19:09
fungierror: dial tcp 192.168.48.144:8443: connect: this number is no longer in service - please check the number and try again19:09
* fungi wonders where the "dial" command comes in there19:10
*** hashar has joined #zuul19:10
Shrewsfungi: of the last 4 failures, 2 were fortnebula, 1 rax, 1 limestone19:12
tristanCShrews: the two in rax and limestone seems unrelated (it failed at openshift deploy stage) probably before we landed the firewall relax fix19:13
*** rlandy is now known as rlandy|brb19:13
ShrewstristanC: where is that fw fix?19:13
tristanCShrews: i'm actually unable to find a success for that job in fortnebula19:13
tristanCShrews: https://review.opendev.org/67278519:14
*** zbr|ruck is now known as zbr19:14
ShrewstristanC: that landed back in august. these failures are today. i don't see  the relation19:15
ShrewstristanC: but if we can show it never succeeds in fortnebula, that's a great clue19:16
tristanCShrews: I was looking at https://zuul.opendev.org/t/zuul/builds?job_name=nodepool-functional-openshift&result=FAILURE , where the only one that are not fortnebula date from august19:16
tristanCis there something special with fortnebula instance network?19:17
ShrewstristanC: i'm not sure. might want to ask donnyd in #openstack-infra19:17
Shrewsdoes openshift require something special?19:18
tristanCit seems like the failure is caused by being unable to access the instance ip...19:19
tristanCthe private_ipv419:20
fungithat provider has global ipv6 addressing and rfc 1918 "private" ipv4 addresses connected to the internet through layer 4 pat/overload nat19:21
tristanCmore specifically, it's failing with "network is unreachable"19:21
fungiwe collect debug info about the network configuration of each node and publish it alongside the jobs other logs, if that helps19:22
tristanCfungi: thanks19:23
Shrewsi've yet to find a successful run of the openshift job in FN19:23
tristanCthus it seems like the nodepool host doesn't have ipv4 while the cluster does have one:19:23
fungishould have addresses of all initial interfaces as well as the initial routing table19:24
tristanChttps://zuul.opendev.org/t/zuul/build/dc0765e1b481464e8d9823f3d5f7e4f0/log/zuul-info/zuul-info.launcher.txt#2619:24
tristanChttps://zuul.opendev.org/t/zuul/build/dc0765e1b481464e8d9823f3d5f7e4f0/log/zuul-info/zuul-info.cluster.txt#2819:24
logan-i think the FN nodes run a lower mtu19:24
fungiyeah, but what's weird is that the "launcher" node has no ipv4 address at all on its interface19:25
fungioh! the "launcher" node is fedora-29 while the "cluster" node is centos-719:27
fungii wonder if fedora-29 is having trouble setting the ipv4 address on ens319:28
funginot sure if those addresses are coming via dhcp or through configdrive/glean in fn19:29
Shrewsit's the centos-7 node that gets the "network is unreachable" error though19:30
tristanCShrews: i see the task is failing from the launcher node19:31
ShrewstristanC: so launcher cannot contact the cluster, right?19:31
Shrewsvia the v4 addr19:32
tristanCthat's what i understand, seems like because the launcher (running fedora) doesn't get an ipv4 address19:32
Shrewswell, it gets a private ipv4 address19:33
Shrewsbut not a public one19:33
funginot that i can see19:34
fungihttps://zuul.opendev.org/t/zuul/build/dc0765e1b481464e8d9823f3d5f7e4f0/log/zuul-info/zuul-info.launcher.txt#26-3619:34
tristanCShrews: i probably get one, but it's not showing up on the guest interface: https://zuul.opendev.org/t/zuul/build/dc0765e1b481464e8d9823f3d5f7e4f0/log/zuul-info/zuul-info.launcher.txt#2619:34
tristanCit*19:34
fungino ipv4 address at all, not even private, and no v4 routing table, not even a default route entry19:34
Shrewsansible inventory sees a private one19:35
Shrewshttps://openstack.fortnebula.com:13808/v1/AUTH_e8fd161dc34c421a979a9e6421f823e9/zuul_opendev_logs_dc0/681857/10/check/nodepool-functional-openshift/dc0765e/zuul-info/inventory.yaml19:35
fungiright, that's what openstack assigned19:35
fungibut for some reason it seems the node's operating system didn't configure it at boot19:35
ShrewsSo, is this something donnyd has to look into for us? Or are we configuring nodes poorly?19:36
Shrewss/configuring/building/19:36
* tristanC looking at glean cmd.py module19:36
fungiShrews: i'm guessing it's a problem with glean or our current f29 images in opendev19:37
Shrews*nod*19:37
fungisince the centos-7 node was able to configure its v4 address just fine19:37
fungimaybe if we collected /var/log/syslog or /var/log/messages (wherever those platforms log system messages by default) we could compare their interface configuration logging19:40
Shrewsmmm, i think we do19:41
fungifor whatever reason we don't seem to have collected them on that run19:41
Shrewsyeah, guess we don't then19:44
clarkbfungi: its probably the network manager race again19:45
clarkbif thr kernel gets an RA before NM starts NM ignores the interfave19:45
fungiis there really no way to tell nm to manage ipv4 addresses but not ipv6 addresses on an interface? ifupdown lets me set them independently, for example19:47
tristanCnot sure if that matters, but those statements seem incorrect: https://opendev.org/opendev/glean/src/branch/master/glean/cmd.py#L132 and L12519:50
tristanCat least on my local fedoras, there is Type=Ethernet for both static and dhcp interfaces19:51
clarkbfungi: as far as I can tell from thr many year old debian bug nope19:58
clarkbthe issue aiui is NM doesnt want to touch an interface it thinks something else is managing19:58
pabelangertristanC: I don't think TYPE is needed for Fedora, but if set will be used. Looks like will fallback to using DEVICE to setup DEVICETYPE in network-scripts20:00
pabelangerwould need to check centos-7 / centos-820:00
pabelangerbut yah, looks to simplify some code20:00
openstackgerritPaul Belanger proposed zuul/zuul master: WIP: Support Ansible 2.9  https://review.opendev.org/67485420:03
pabelangerzuul-maint: with ansible 2.9 around the corner, another few weeks I'd like to point humans to topic:multi-ansible-wip. That drops ansible 2.5 support, marks ansible 2.6 as deprecated and defaults zuul to use ansible 2.8! Also, adds ansible 2.9 support! Which would be awesome if we could also tag a release of zuul the day that comes out!!20:05
pabelangerthat is all :)20:05
corvusmhu: have you spent much time with keycloak?20:11
*** pcaruana has quit IRC20:18
*** jamesmcarthur has quit IRC20:21
*** rlandy|brb is now known as rlandy20:38
*** hashar has quit IRC20:42
*** tosky has joined #zuul20:50
corvustristanC: if you have a minute to review https://review.opendev.org/686449 -- we haven't merged the change to put it into production yet for opendev, so it might be nice to get that in first21:24
tristanCcorvus: i +3 it21:27
openstackgerritMerged zuul/zuul-registry master: Add streaming download support  https://review.opendev.org/68644921:41
ianwShrews: I agree, seeing similar in dib gate21:44
openstackgerritJames E. Blair proposed zuul/zuul-registry master: Fix merge error in streaming support  https://review.opendev.org/68650521:47
corvusfungi, tristanC: ^ whoops.21:47
corvuswe should add some assertions in the tests about the contents of the local image cache21:48
fungiyeah, that would have caught it21:49
corvushere's the output from the image list that shows the problem: https://zuul.opendev.org/t/zuul/build/a0c946ca9bb94fc0a85bb43c0a5606a2/console#2/1/17/ubuntu-bionic21:49
corvusyou can see registry:2 in there21:50
ianwdo we know why when i do say "wget https://openstack.fortnebula.com:13808/v1/AUTH_e8fd161dc34c421a979a9e6421f823e9/zuul_opendev_logs_0cf/684460/10/check/dib-nodepool-functional-openstack-fedora-29-src/0cf5dfc/nodepool/nodepool-launcher.log" i receive a compressed file?21:50
ianwcurl --compressed i guess is the trick21:52
pabelangeryah21:52
pabelangerI believe that is because in swift, it is actually compressed21:53
openstackgerritMerged zuul/zuul-registry master: Update test script to match playbook  https://review.opendev.org/68645021:58
ianw2019-10-03 02:40:36,203 DEBUG nodepool.NodeLauncher: [node: 0000000000] [  591.719783] systemd[1]: Starting Network Manager...21:58
ianwi feel like the inner vm's are booting too slowly?  that's almost 10 minutes to get to that point21:58
ianw2019-10-03 02:28:27,937 DEBUG nodepool.NodeLauncher: [node: 0000000000] [  539.215851] systemd[1]: Started Grow root partition.22:00
ianwother job seemed to stop there22:00
ianwand yeah ... suspiciously close to -> playbooks/nodepool-functional-openstack/templates/nodepool.yaml.j2:    boot-timeout: 60022:01
*** mattw4 has quit IRC22:05
*** mattw4 has joined #zuul22:05
tristanCcorvus: i'm rebasing the mypy patch on top of zuul-registry master (without the last fix) and it detected: zuul_registry/storage.py:126: error: "Storage" has no attribute "_path_from_digest"22:18
openstackgerritTristan Cacqueray proposed zuul/zuul-registry master: Add type annotations  https://review.opendev.org/68624922:23
*** rlandy is now known as rlandy|bbl22:31
corvustristanC: are we running flake8?  that sounds like something it would have caught too22:31
tristanCcorvus: iiuc flake8 doesn't check if attribute exists22:33
tristanCe.g. this pass flake8 checks: http://paste.openstack.org/show/781062/22:33
tristanCand yes zuul-registry is running flake8 with the same config as the one from zuul22:34
*** panda is now known as panda|off22:35
corvustristanC: cool, so the compiling/ast steps that mypy does are more substantial than flake822:36
*** mattw4 has quit IRC23:01
*** mattw4 has joined #zuul23:02
*** armstrongs has joined #zuul23:05
*** jlk has quit IRC23:07
*** armstrongs has quit IRC23:15
*** mhu has quit IRC23:20
*** jamesmcarthur has joined #zuul23:23
*** tosky has quit IRC23:23
*** jamesmcarthur has quit IRC23:24
*** avass has quit IRC23:30
*** igordc has quit IRC23:36
*** michael-beaver has quit IRC23:47
*** mattw4 has quit IRC23:49
pabelangerlooks like zuul_stream and python3 might not be happy, I'm seeing various [Zuul] Log Stream did not terminate in logs23:49
pabelangerhttps://object-storage-ca-ymq-1.vexxhost.net/v1/a0b4156a37f9453eb4ec7db5422272df/ansible_14/63114/8b0ba58a10cdf98b765fba04a4fd1fcd4b8e0512/third-party-check/ansible-test-network-integration-vyos-python38/acf5e7f/job-output.html#l48823:49
pabelangerlooks like maybe threads not shutting down cleanly23:49
pabelangertoo late today to dig more into it23:54

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