Thursday, 2020-03-19

*** tetsuro has joined #openstack-tc00:10
*** tetsuro has quit IRC00:12
*** tetsuro has joined #openstack-tc00:13
*** tetsuro has quit IRC00:19
*** tetsuro has joined #openstack-tc00:20
*** tetsuro_ has joined #openstack-tc00:30
*** tetsuro has quit IRC00:33
*** jamesmcarthur has quit IRC00:46
*** tosky has quit IRC00:50
*** jamesmcarthur has joined #openstack-tc00:58
*** jamesmcarthur has quit IRC00:59
*** jamesmcarthur_ has joined #openstack-tc00:59
*** jamesmcarthur_ has quit IRC01:10
*** jamesmcarthur has joined #openstack-tc01:13
*** ijolliffe has quit IRC01:17
*** ianychoi_ has joined #openstack-tc01:38
*** ianychoi has quit IRC01:40
*** jamesmcarthur has quit IRC03:03
*** jamesmcarthur has joined #openstack-tc03:06
*** jamesmcarthur has quit IRC03:06
*** jamesmcarthur has joined #openstack-tc03:06
*** tetsuro_ has quit IRC03:51
*** tetsuro has joined #openstack-tc04:16
*** jamesmcarthur has quit IRC04:18
*** jamesmcarthur has joined #openstack-tc04:19
*** jamesmcarthur has quit IRC04:24
*** jamesmcarthur has joined #openstack-tc04:26
*** tetsuro_ has joined #openstack-tc04:49
*** tetsuro has quit IRC04:52
*** tetsuro has joined #openstack-tc05:03
*** tetsuro_ has quit IRC05:06
*** tetsuro_ has joined #openstack-tc05:15
*** tetsuro has quit IRC05:18
*** evrardjp has quit IRC05:36
*** evrardjp has joined #openstack-tc05:36
*** jamesmcarthur has quit IRC06:31
*** tetsuro_ has quit IRC07:49
*** slaweq has joined #openstack-tc08:06
*** lxkong has quit IRC08:08
*** gagehugo has quit IRC08:08
*** mwhahaha has quit IRC08:09
*** gagehugo has joined #openstack-tc08:10
*** lxkong has joined #openstack-tc08:10
*** mnaser has quit IRC08:10
*** mwhahaha has joined #openstack-tc08:10
*** mnaser has joined #openstack-tc08:11
*** rpittau|afk is now known as rpittau08:11
*** e0ne has joined #openstack-tc08:16
*** lpetrut has joined #openstack-tc08:18
*** tosky has joined #openstack-tc08:21
*** tetsuro has joined #openstack-tc08:34
*** tetsuro_ has joined #openstack-tc08:40
*** tetsuro has quit IRC08:43
ttxRe: elections, I saw threads from asettle jroll and me announcing they would not run for reelection. That means we'll have at least one open seat, despite the reduction in size09:11
*** e0ne has quit IRC09:36
*** e0ne has joined #openstack-tc09:36
*** tetsuro has joined #openstack-tc09:40
*** tetsuro_ has quit IRC09:43
*** tetsuro has quit IRC09:56
*** rpittau is now known as rpittau|bbl11:30
*** ijolliffe has joined #openstack-tc12:19
*** e0ne_ has joined #openstack-tc12:20
*** e0ne has quit IRC12:21
*** AJaeger has joined #openstack-tc12:52
AJaegermnaser, ttx, evrardjp, we lost specs.openstack.org/openstack/openstack-specs and I pushed https://review.opendev.org/713869 to populate it again and fix a few small problems. Could you review and merge, please? I know it's deprecated but let's have it published and updated...12:54
evrardjpwell, it seems I don't have access to this.12:56
evrardjpI reviewed12:56
ttxme neither12:56
evrardjplooks good.12:56
ttxheh https://review.opendev.org/#/admin/groups/1372,members12:57
evrardjpwow I did miss discsuss12:57
ttxevrardjp: It's my second superpower. Spotting typos. Not very useful during a Zombie Apocalypse12:57
evrardjpthat's quite a graveyard of many12:57
evrardjpwe should probably have tc as a group for this.12:58
evrardjpin this*12:58
evrardjpWDYT?12:58
AJaegerfixed the typo - thanks.12:58
AJaegerI thought you had access - seems I looked at the wrong place ;(12:59
*** rpittau|bbl is now known as rpittau12:59
smcginnisWow, that is a long interesting list of names. Agree, it would be much better to add some groups int ehre.12:59
ttxLooks like a snapshot of openstack circa 201312:59
evrardjpyes that sounds about right13:00
smcginnisGood to see at least several still-active names in there.13:00
evrardjpautomagically was OSA spec liaison at about that time13:01
evrardjpsmcginnis: yes indeed!13:01
evrardjpthough it's probably worth cleaning, and assigning this to <surviving members> + tc + docs ?13:01
evrardjpor we just leave it as is, and add AJaeger as maintainer for life13:02
evrardjp:D13:02
AJaegerOk, so I see mugsie and diablo_rojo in the list, let's ping them and ask to review 713869 and update the list.13:02
evrardjpit's very high volume13:02
AJaegerevrardjp: I would just abandon everything open ;)13:02
evrardjpyeah ricolin is also active in this chan :)13:02
evrardjpand jroll too13:03
AJaegerGreat13:03
evrardjpmany folks can still merge and change this, just not the initial ping list :)13:03
evrardjpanyway, thanks for the update AJ!13:03
AJaegerthanks, evrardjp.13:05
AJaegerYeah, initial ping list can tag the repo and abandon changes - but not approve ;/13:06
jrolloh nice, thanks13:07
jrollidk the approval rules there, but I'm happy to do so, if that's needed13:07
mugsiejroll: I think it was supposed to be consnsus13:11
mugsiebut who knows now. that list is a blast from the past :D13:12
jrollright?13:12
jrollthat's a lot of people to dig up for 50% consensus13:13
mugsieI +W'd it. if there is issues, please revert, and shout at me :D13:16
jrollcan we also shout at you if there are not issues?13:17
mugsiei would expect so, yes13:17
jrollperfect13:17
mugsieI just may not listen :)13:17
AJaegerthanks, mugsie !13:17
* AJaeger won't shout13:17
fungialso that cross-project-spec-liaisons group is owned by the cross-project-spec-liaisons-chair group which has tech-committee-chair included so anyone in https://review.opendev.org/#/admin/groups/206,members can update the cross-project-spec-liaisons membership if desired13:26
AJaegerfungi: oh, so let's say evrardjp could make the ACL changes? Cool :)13:27
fungiwell, the group membership13:37
AJaegerok13:39
evrardjpok will do13:48
evrardjpwow I should probably clean up that group too13:48
funginorthern hemisphere spring equinox is at 19:50 utc today, so id you wait 6 hours you could rightfully call it spring cleaning?13:55
evrardjphaha14:08
*** dklyle has joined #openstack-tc14:15
*** jamesmcarthur has joined #openstack-tc14:20
*** jamesmcarthur has quit IRC14:29
*** jamesmcarthur has joined #openstack-tc14:31
*** jamesmcarthur has quit IRC14:58
ricolino/15:00
*** jamesmcarthur has joined #openstack-tc15:01
evrardjpo/15:02
jungleboyjo/15:03
gmanno/15:03
evrardjpanything for office hours? I suppose folks want to talk at least about covid19 and ptl-less openstack !15:04
jungleboyjI am going to lock myself away at some point today and update the Survey Response.15:04
evrardjpdoesn't the government handle that for you? : p15:05
evrardjp(did you see what I did? ;) )15:05
jungleboyjThey don't keep my co-workers from interrupting remotely.15:05
gmannthere is power button things on laptop :)15:06
jungleboyj:-p15:07
*** ricolin has quit IRC15:08
njohnstono/15:08
*** ricolin has joined #openstack-tc15:13
mnaserhow do we feel about openstack projects publishing official docker images15:16
mnaseri think its about time we start having something consistent, i know infra/opendev has a really neat set of build images and runtime images15:17
mnaserthe build images build wheels and the runtime images install from those built wheels and run bindep to get the dependencies installed15:17
mnaserit would also help make openstack more approachable for deployments and create some unity, so someone can do a git clone openstack/nova; docker build .15:17
jungleboyjmnaser:  I have played with docker a bit more lately and I can see the appeal of that.15:18
mnaserand with the recent work being done on speculative container jobs, we totally can have devstack deploy from containers (and *only* build the containers needed in CI)15:18
mnaserit'll also make devstack nicely platform independent too!15:19
fungiit'll probably need a revisit of https://governance.openstack.org/tc/resolutions/20170530-binary-artifacts.html15:20
clarkbmnaser: 3xcept for where docker is podman and podman doesnt act like docker :)15:21
clarkb*except15:21
ricolinI'm also working on building docker image for heat-agents as well, will be nice if we can have more consistency here:)15:21
mnaserclarkb: aha. yeah.  they'll always be those subtle small things too15:21
mnaserfungi: yeah, i mean, the container ecosystem has seen a lot of change from the past 3 years15:22
ricolinalias docker=podman :)15:22
mnaserthings like multi-stage builds were not a thing before15:22
mnasernow we have a whole ecosystem and infrastructure to build containers with _minimum_ amount of dependencies/layers15:22
*** lpetrut has quit IRC15:23
mordredyeah - python-builder/python-base images provide a real easy way to make simple containers from bindep/requirements that should work with any openstack project15:27
*** jamesmcarthur has quit IRC15:28
evrardjpmnaser: that was the intent of the containers SIG -- first agree on bindep usage across projects to be consistent, then start to build containers in a consistent manner15:29
*** jamesmcarthur has joined #openstack-tc15:29
ricolinis there any previous decision regarding having our own container repo, or have official Open infra docker repo?15:29
mnaserlets push things into dockerhub to make lives easier for people15:29
evrardjpyeah I would push into dockerhub too15:30
jungleboyjI thought there was already someone doing this with OpenStack.15:30
mnaserevrardjp: i mean, what's there to agree on that, we already have bindep files, we already have some 'predefined' profiles, so we just.. add dockerfiles15:30
evrardjpjungleboyj: there are multiple projects15:30
evrardjpfor example LOCI and openstack-helm do that15:30
ricolinalso for what I know, magnum doing their own repo, and heat plan so as well15:30
evrardjpthe bindep is not enough15:30
evrardjpexisting one15:30
mnaserthat is the problem15:30
mnasereveryone is doing their own thing15:31
evrardjpyou need to have extra things15:31
evrardjpand so you have many stacks as webserver of choices15:31
evrardjpor whatever15:31
mnaseryeah, we should add these extras when we add the dockerfile15:31
mnaserplop uwsgi in there and call it a day15:31
mnaserthats what we use in ci15:31
mnaserthats what people should be using15:31
evrardjpyeah, that's what I would tend to agree to15:31
*** njohnston_ has joined #openstack-tc15:31
mnaseri can drive this but i want us to all be on the same page15:32
evrardjpI had an example Dockerfile which was having staged build for very simple images for all the projects15:32
mnaserand i would like to follow the pattern established by opendev because that gives us _a lot_ of advantages with speculative image builds15:32
jungleboyjAh, but we don't have a common OpenStack repo for the images.  Gtocha.15:32
evrardjpjungleboyj: that's not really a problem15:32
mnaserim thinking we dont have an openstack/docker-images repo, i'm thinking we have a Dockerfile inside openstack/cinder repo15:33
evrardjpthat's what I think would be good15:33
evrardjpthe problem with this mnaser, is that we will allow drift15:33
mnaserwhat is going to drift exactly?15:33
evrardjpwell all the projects can do whatever they want in their docker file15:34
evrardjpand let it rot too15:34
evrardjpwhat I think would be better if we had some proposal bot to update the main Dockerfile15:34
mnaserit won't rot if we test it across those jobs :)15:34
mnasers/jobs/projects/15:34
evrardjpand leverage the bindep appropriately15:34
evrardjpyou don't need to go that far as changing everything15:34
mnaserit won't rot if i convince people running devstack with docker is the way to go, hah15:34
mnaserit's about user experience, people want to build an image when checking out a repo, 99.9999% of projects that have dockerimages do that15:35
mnaserwhy do we try and become unicorns again15:35
evrardjpyou know that projects have been doing full containers for a while? OSA had done that in the past, and kolla is doing it15:35
mnaseryes15:35
mnaseri know that.15:35
evrardjpOSA has decided to not pursue that road because some things are just easier to deal with outside a container15:36
evrardjpmy point was it would be good to agree on the first steps15:36
njohnstonthis sounds like a great discussion on the ML.  I am sure the tripleo guys can comment on the edge cases they have seen - I know EmilienM has been suggesting devs use tripleo-standalone instead of devstack for personal dev as it gives you a containerized deployment.  It'd be nice to get that as a standard15:36
mordredwell - we have a builder image that makes the dockerfile tiny15:36
mnaser^^^ yeah15:36
mnaseri think people should look at the builder image stuff...15:36
EmilienMhi15:36
mordredhttps://opendev.org/openstack/python-openstackclient/src/branch/master/Dockerfile15:37
mnaseryou seriously don't need much more than a bindep file and the dockerfile does everything for you.15:37
njohnstonEmilienM: we're talking about openstack projects publishing official docker images15:37
mordredincidentally - with speculative images now - you can do things like : docker run -it -v$HOME/.config/openstack:/etc/openstack --rm osclient/python-openstackclient:change_711246_latest openstack --os-cloud=vexxhost server list15:37
EmilienMnjohnston: ok15:37
mnaser^ yes, this whole effort is not much more than adding that to all repos _and_ maybe setting up test jobs which use them15:38
mnaserIMHO you shouldn't need more than that in your repo.15:38
mordredbuilds tiny images that do not do anything other than install the python15:38
mnaserand it also installs bindep in the build image (with profile 'build' afaik)15:39
EmilienMI like how things happen "incidentally" :D15:39
EmilienMmordred: really cool command ^^^15:39
mordredEmilienM: \o/15:39
mnaserthe big thing that made me think about this is mordred published this to osclient/openstackclient15:39
ricolinmordred, question, who owns https://hub.docker.com/u/opendevorg ?15:39
mordredthe image jobs use the promote pipeline to retag whatever the gate image was after it lands - so we don't have to rebuild in post15:39
mordredricolin: the opendev team15:40
mnaserto me that's just sad and bad ux15:40
mnaserwe wouldn't publish to opendevorg... we'd publish to openstack/15:40
mnaser(side note: there seems to be a lot of confusion that openstack-infra => opendev)15:40
mordredmnaser: I believe ricolin is curious about python-builder and python-base15:40
mnaseroh15:40
mnaseryes, that15:40
clarkbmordred: I think that is an important distinction. Building images on all the different platforms misses the point and is a crazy use of resources. Focusing on building an image that is known to work is much better15:40
mordredsince those are opendevorg projets15:40
ricolinyep15:40
evrardjpyeah I would prefer if we had an official openstack namespace on dockerhub, and image name = project15:40
EmilienMhub.docker.com is meh, constrained by random HTTP errors (in tripleo we suffered a lot about it, we implemented our own python registry which handle these errors)15:41
mordredyes. this is _explicitly_ avoiding building images for different guest os's15:41
evrardjpEmilienM: true that15:41
mnaserEmilienM: yeah i mean we can totally get registry.opendev.org if someone wants to work on that and publish to both15:41
ricolinmnaser, and yes, have one namespace for openstack is definitely the way to approach15:41
clarkbEmilienM: were there more errors than 1) not using our caches and 2) not using a proper client?15:41
mnaseri mean, these days, docker is pretty good at using registires that are not dockerhub15:41
mordredwe could just as easily publish to quay.io15:41
EmilienMi tested quay.io; a bit better but not super stable yet IMO, having a bunch of downtimes & also random errors15:41
mnaserpublish to ALL THE REGISTRIES15:41
clarkb(because those are the two errors I know about and I think we largely know how to address those)15:41
mordredI think the main point would be more whether we coudl start publishing some simple images15:41
evrardjpyeah I think it's not a problem of where to publish too15:41
evrardjpto*15:41
mordredevrardjp: yah15:41
EmilienMevrardjp: ack15:42
mordredthe point is more to come to an agreement to maybe publish some super simple single-app images15:42
mnaseri guess this might add a small tiny review load on teams having to review changes to bindep/requirements15:42
evrardjpif we manage to make the project accept those new way of building different images, in a simple way, we are winning15:42
evrardjpfor me to build the different kind of image in a same project, we could use bindep's features15:42
mnaserif we want to stay relevant and make openstack approachable and future proof, we need to get containers15:43
mordredyeah - I mean - this wouldnt' mean that people doing container things HAVE to use these ... just that it's SO EASY to make them that it could add a nice option to people who want them15:43
mnaserbecause people _will_ build their own15:43
evrardjpfor me it's all about experience too -- you don't want glance to have apache + mod_wsgi and cinder to have uwsgi15:43
mnaseri'm hoping all projects work with uwsgi now, actually neutron finally seems to have uwsgi jobs too so thats nice15:43
evrardjpmordred: agreed!15:43
mnaseri think that was the last project that didn't have them15:44
njohnstonmnaser: yes in neutron land we were lagging, but we have noting jobs now15:44
evrardjpalso the side effect on working on the bindep all together was that for projects that didn't want to use containers, they could still guess the package list to install by using bindep15:44
mnaseruh15:44
mnaserthis might be a little too much but15:44
mnaseri dont think you get to choose if you dont want containers15:45
evrardjpfor me bindep is a very good thing we have, we just need to make sure it's standardized15:45
mordredevrardjp: yah. and then being able to use bindep instead of duplicating it in a dockerfile is also really nice :)15:45
evrardjpcorrect!15:45
slaweqnjohnston: mnaser we have non-voting jobs with uwsgi for long time, I will promote those jobs to be voting this week15:45
njohnstonSo for neutron where the same codebase results in neutron-server as well as neutron-openvswitch-agent, neutron-linuxbridge-agent, etc. would those all be the same container image invoked differently?  Or different images?15:45
mnaserslaweq: nice! i saw these jobs :)15:45
mordredevrardjp: the python-builder image looks at a "build" tag to know what it needs to build wheels, and then installs the untagged stuff into the final image15:45
slaweqnjohnston: mnaser also, some time ago I was trying to switch to use uwsgi as default in devstack15:45
ricolinslaweq, cool!15:45
mnaseropenstack ships containers.  i can have someone push up changes to all the projects because it's important for me (and this is a good time to help improve many more things)15:45
mordredevrardjp: so we can have people optimize their bindep files15:45
slaweqbut there were some problems with grenade jobs IIRC15:45
evrardjpmordred: I guess we could extend a little bit with a few profiles ?15:46
slaweqso this patch is lost somewhere in my list for now :/15:46
slaweqbut I will get back to it :)15:46
mordredwe could - but so far for all the things we use python-builder with we haven't found a need for additional ones15:46
mnaseri don't think we should extend it with a few profiles, i think the image should contain all the dependencies and just different targets.  but, we ca ndiscuss15:46
mnaseri don't want us to get into the rabbit hole of optimizing before even making any progress tbh15:46
mordredyeah - I think step one is start with just the super-simple "just do the one thing"15:46
evrardjpit's not about that15:46
mnaserslaweq: awesome, this makes me really happy15:46
evrardjpis there such a project in openstack mordred?15:47
evrardjpAFAIK, no15:47
slaweqmnaser: njohnston: that's the patch https://review.opendev.org/#/c/694042/15:47
mordredevrardjp: opendevorg/python-builder15:47
slaweqI need to rebase it and get back to it15:47
evrardjpthat's not what I meant15:47
mnaserslaweq: thanks for purusing it, i know there was some really hairy bugs at the time when i tried it so im sure it wasnt easy15:47
slaweqthat's all from me about uwsgi in neutron15:47
evrardjpa service project that's easy to ship as a single container15:47
mordredall of them15:47
mordredit's just python15:47
evrardjpI would say the easiest is probably keystone15:47
evrardjpit's not15:48
mordredoh - let me be a little clearer with the intent here ...15:48
evrardjpwell I guess it depends on what you put inside the container15:48
mordredthese are not "this containers runs 5 different service and a rabbitmq to run service X"15:48
mordredthat's not what this is or wants to be15:48
evrardjplet's just take nova's example15:49
evrardjpwhat will the images be?15:49
mordredthis is "this container contains the keystone app installed so you can run the keystone-api server in one container and the keystone-db service in another container" - and you'll be expected to run db and rabbit and whatnot in other containers15:49
mordredevrardjp: nova-api, nova-conductor, nova-scheduler, etc15:49
evrardjpok so we agree on the multiple images, one per usage15:50
evrardjpthat's a first start :)15:50
mnaseri mean fwiw15:50
mnaserit's all the same image15:50
mnaserwe just have multiple targets15:50
evrardjpso question, where does libvirt?15:50
evrardjpgo to?15:50
mnaserwith different entrypoints15:50
mnasernot in nova15:50
evrardjpthe c bindings?15:50
mnaserc bindings would naturally come in as runtime dependencies15:50
mnaseralongside the libvirt python bindings15:51
mnaserlibvirt (the binary) is not included.15:51
mnaseryou can run that however way your heart desires and use the connection_uri to point to it15:51
evrardjpI see what you mean15:51
clarkbI think evrardjp's concern is that the bindings in container A may not work with application binary in container B15:51
mordredexactly. the idea is that these are all intended to be single-process containers15:51
evrardjpclarkb: correct15:51
clarkbthat is a valid concern but libvirt is a bad example as they work hard to have compatibility15:51
ricolinIt's important we start with the most base contain, which we can build some others on top if team decide to do it15:51
ricolin*container15:52
mnaserclarkb: but also, we have things like "supported libvirt versions" inside nova for example15:52
evrardjpclarkb: I just took an example, but there are many of those15:52
mordredyah - that's right. if we start with simple "this si what pip instal gets you"15:52
mordredit's _something_15:52
mordredwill it solve everyone's use cases for all deplyments? Nope15:52
evrardjpmy point was agreeing on a first base, not to throw a solution for everyone15:52
mordredevrardjp: ++15:52
clarkbevrardjp: well you have to distinguish between C bindings that talk to things in the container and things that don't15:52
clarkband I think with openstack you largely avoid these problems because the deps are sane15:52
mordredI guess - the main thing here is - could we let mnaser go off and work on a couple of services to show people?15:53
evrardjpclarkb: I think that's exactly what I said , but with words that are less good than yours15:53
evrardjp:D15:53
evrardjpfine for me15:53
evrardjpthat was the intent of the container sig15:53
mordredmight also be easier for people to talk about if we can point at a few specific examples15:53
evrardjpso if you're happy to share results, use containers-sig topic :)15:53
evrardjpon the ML*15:54
evrardjpmordred: agreed15:54
mnaserim gonna speculate that i could probably even do some neat docker-compose job too15:54
mnaserjust to do a basic func test15:54
evrardjpthis is why I also said that I wanted to start with a simple example, for example keystone, and continue forward.15:54
evrardjpmnaser: after all of that you can use nomad to start those containers15:54
evrardjpwhen you want to go webscale15:55
evrardjplol15:55
mnasershhh i'm already writing an openstack operator right now15:55
evrardjpwhat with?15:55
mnaserjust wait till running openstack is cool again because its so easy15:55
mnaserkubebuilder.15:55
evrardjpI didn't touch kubebuilder yet15:55
evrardjpthe de-facto standard nowadays15:56
evrardjpanyway15:56
mnaserif anyone is curious about following that progress: https://opendev.org/vexxhost/openstack-operator15:56
ricolinI'm almost about to reach tomorrow! Will keep tracking this when I awake:)15:56
clarkbfrom an infrastructure side of things I would strongly encourage avoiding trying to build these containers on all the base images. Pick one that works for hte use case and stick to it. This allows you to keep the problem space smaller, but also reduces the number of jobs necesary as well as required bandwidth and storage. On top of that use the caches we have in place (or add new ones if necessary), and15:57
evrardjpthere are people which tried this docker-compose stack before, might be worth talking over the ML to share experiences15:57
clarkbavoid writing custom clients as much as possible.15:57
ricolinmnaser, Are you plan to send ML later?15:57
mnaserthat even has CI jobs which deploy memcache/mcrouter and use that deployed inside k8s alongside devstack and run tempest on it, so sslowly but surely15:57
clarkbif you follow the example that corvus and mordred have set up in zuul and opendev that should all largely be handled for you15:57
evrardjpclarkb: agreed15:57
mnaserclarkb: i absolutely would support no other way than doing it the way opendev/zuul has done it.  let's align more stuff so we deduplicate work.15:58
clarkb++15:58
mnaserclarkb: it also gives us huge beenfits like you can probably run some of openstack's build jobs and make sure you dont break us15:58
mnaseri dont think other people probably want to do that ;P15:58
clarkbalso we've sorted out ipv6 and you don't want to sort that out again15:59
mnaserricolin: i think i would like to get a few patches in and kinda show-off something that's functional15:59
mnaserso uh, cinder/glance/keystone/nova sorry for the spam in advance :)16:00
njohnston_i bet placement would also be a good candidate16:01
mnaseroh yeah, pretty much everything in the base devstack job16:01
*** njohnston_ has quit IRC16:22
*** AJaeger has left #openstack-tc16:41
*** jamesmcarthur has quit IRC17:10
*** jamesmcarthur has joined #openstack-tc17:18
fungitons of scrollback, trying to catch up after meetings but one of the major drivers for the 20170530-binary-artifacts resolution was that we don't want openstack to be liable if they distribute a vulnerable version of, say, glibc in a container. we don't have reporting channels nor contributor bandwidth to deal with security-related issues in non-openstack software, so any "security support" would be17:25
fungibest effort and on whoever's maintaining the images to sort out (or declare they don't care)17:25
njohnstonhey, looks like maybe17:26
njohnstonsorry, wrong channel17:27
fungialso any image building automation (jobs) will need people caring after them. if they break, and we stop publishing images for a while as a result, people are left with possibly lengthy gaps where they're running vulnerable versions17:29
fungii am kinda curious though how "official" openstack images would be different from "kolla" or "loci" images (and what makes those not official by comparison). how will those projects feel about someone reinventing what they're doing and saying it's the one true way and their solutions are second-rate?17:30
mnaserfungi: unless someone says they'd like to step up and make sure those images keep being published17:30
mnaserfungi: it's just about simplifying and unifying the experience.  kolla builds "system" containers, not really the expected way of getting containers these days17:31
fungialso for bindep, it's designed specifically for the case of "known distro includes these packages we require" and so doesn't handle 1. packages outside the distro's blessed set, nor 2. anything beyond saying "these are the names of packages you don't seem to have installed" really17:31
mnaserfungi: loci is a lot like what opendev does, but it has a lot of complexities (and i think has struggled with maintainership), the idea of some other remote external repo just seems confusing17:32
mnaseri expect issues to come up as we go through them, but i think for most of the _python_ bits, we're probably ok17:33
clarkbfungi: to me the big difference is kolla in particular is a distribution with a fairly opinionated deployment tool17:34
clarkbfungi: the idea proposed with these images is they'd just be the minimalist thing that can run $project's command17:34
fungiyeah, i get that kolla and loci approaches are different17:34
fungiis there a reason not to evolve loci toward that?17:35
mnaserloci is largely a derivative of what opendev does17:35
fungii'm just getting a strong https://xkcd.com/927/ vibe, that's all17:35
mnaserit's somewhat of a marketing things too, "docker pull loci/who?"17:35
clarkbto me loci still has the mutli platform problem17:35
clarkband overcomplicated setup17:35
*** evrardjp has quit IRC17:36
clarkbyou don't need all that if you pick a single platform and stick to bindep and pip install17:36
fungithe loci and kolla namespaces are because we don't want to imply that those containers come with support from the entire openstack community, but only from the loci or kolla teams17:36
mnaser^ and a "requirements" layer which is confusing and non trivial too17:36
clarkbif loci wants to evolve into ^ then great17:36
*** evrardjp has joined #openstack-tc17:36
mnaseri think there's big value in docker build . inside a folder and getting an openstack container17:36
fungiin fact, the tc told kolla and loci (with that resolution) that they needed to use separate namespaces17:36
mnaserat the time, building containers was a whole different story17:37
mnaserit was still early, no clear patterns were emerging17:37
mnasermulti-stage builds didnt exist17:37
fungii get that. but why does the fact that people have been building containers in different ways mean that now you have to start over from scratch? or that every time there's some innovation in how containers are used that you have to start over for that matter, instead of fixing the thing you've got to incorporate modern concepts?17:38
fungithat's 100% nih17:38
fungithat ting which exists is wrong, rather than try to make it right i'll just ignore it and redo everything myself, possibly discovering a lot of the same problems along the way17:39
clarkbfungi: I thnik the assertion is that the ways people have been building those containes is not good17:40
clarkbexcept no one wants to say that (so I did sorry)17:40
clarkband there has been little indication of them changing17:40
fungibecause people have tried to get involved to change them and been told to go away?17:41
clarkbfungi: specifically I brought this up with kolla at the first denver ptg17:41
clarkbthey all agreed this would be a better approach but no one had the interest in implementing it17:41
clarkbbecause its significant effort particularly when you've got the preexisting deployment tooling coupled in already17:41
clarkb(you don't want to break those use(rs| cases)17:41
clarkbthis may allow them to break that chicken and egg relationship by having a new thing on the side they can incorporate over time17:42
mugsiethe overhead of a dockerfile per project is way less than a central thing like loci, and doesn't require yet another team to maintain it day to day, and if we have people who are motivated at the moment to set up a sane openstack/base image, that we can built on top of for each service, I see value in that17:43
mugsiee.g. if loci's ability to make designate images broke, I would have 2 places to debug, where if it is in my repo, I can manage it better17:44
mugsieif I don't care, we are in the same place as we were with loci17:44
fungii'm just curious what the migration path is, if we agree this is superior... can loci basically become you have a dockerfile in every service repo?17:44
mugsiebasically17:44
fungiour project silos make this very hard. loci centralized the container configuration because individual projects didn't want to have to review it. that makes it harder for some projects which do care to keep that updated. on the other hand distributing it into all the different teams makes it hard for someone who has an interest in keeping the set working when some teams ignore patches for it17:46
mugsieyeap, that is the trade off17:46
mugsieadding CI jobs can help to make sure they looked at, but YMMV per team17:46
fungiat its most basic level, the proposal is to expect/force every team to care about "their" dockerfiles, vs the loci and kolla approaches of having a team who cares about the dockerfiles for all projects17:48
mugsieyep. I understand the ask, but it is not something I would recommend we force in the near future, but we should flag it for projects17:49
clarkbfungi: for me its more about building minimal images in a consistent manner using modern container build tooling17:49
clarkbfungi: you can do that with or without the specificiations in repo17:49
fungiif you do it without the specifications in repo, then why couldn't that just be the next evolution of loci?17:50
fungiit's not like source code is carved into stone17:50
clarkbfungi: it could be if we are ok with breaking loci's existing users17:50
clarkb(I doubt anyone wants to figure out a migration)17:50
mugsietrue, I think mnaser's proposal was in repo, but it could be elsewhere. there would have to be other tooling for the base images etc, but I like the dockerfile in the repo17:50
fungithat's what major release numbers are for ;)17:50
fungior if the dockerfiles are in each repo, then maybe the next evolution of loci is the jobs which are being run to build images from those?17:51
mnasermugsie: i just feel that we should simplify the world for users so "if you want docker images go clone this other repo and then do some magic"17:51
clarkbfungi: those jobs are basically arleady defiend in opendev/base-jobs :)17:51
clarkbfungi: but you do need to inherit from them and sprinkle in specifics17:51
fungiand need no care and feeding, or changes to accommodate openstack's weird software choices?17:52
mugsiemnaser: ++17:52
clarkbfungi: not as long as bindep is populated properly and pip install . works17:52
clarkbfungi: we've intentionally built them to work well for python (because we too do a lot of python)17:52
mnasermugsie: also, yeah, the jobs already exists.  the opendev builder image and stuff is _seriously_ well thought out17:52
clarkband maybe thats the right way to frame it17:53
fungii am kinda curious how the "average docker user" will be satisfied by cloning nova and building and running that image, without also having to do the same for additional repos, but since i'm not really a docker user at all i probably under estimate the degree to which they're used to deploying complicated software consisting of dozens of separate microservices17:53
clarkbby tackling this from the perspective of "how do we properly build docker images for python applications" we've built somethign that works well pretty globally17:54
mnaseri already have keystone images with minimal changes (and by that i mean, tagging bindep with the correct compile/test profiles and ensuring uwsgi gets installed -- which im using extras to add it, therefore not touching the existing "infrastructure"17:54
clarkbrather than siloed towers that only work well for a specific use case17:54
fungijust sort of find it odd that a user accustomed to deploying a suite of services as large as openstack would be surprised by needing to "clone one more repo" for the container config17:55
mnaseri think its also a lot of the ci/cd tooling expects a dockerfile in the same repo too17:56
fungior that many wouldn't be equally surprised that there's not one repo that contains the configuration they need to build openstack containers, but that they have to look at dozens of dockerfiles in different repositories17:56
clarkb(ours does not fwiw)17:56
mnaseri mean, no one should need to touch those dockerfiles.. and if they need to, they can build them knowing where they are going to use them as a "source" from17:57
fungii wonder if a viable middle ground might be to have a central container configuration for openstack services, but then allow projects to relocate those into their repositories if they want to care for them (and relocate them back into the central repo if they no longer care about them)17:59
fungiassuming there's also a team of folks who want to collaborate on maintaining those images, making sure they're updating consistently and so on18:00
mnaseri just dont know why we want to deviate from how every project on earth does docker containers18:00
mnaserand again, i dont think those will be actaully needing that much changes, also, i intend to help drive this (and) ensure that we can get devstack somewhat the ability to consume those18:01
fungii don't know how projects on earth do docker containers, but i do know that we have teams who will not want to have one more thing they're responsible for in their git repositories18:01
mnasermaybe this is a good time to evaluate the idea of CODEOWNERS alongside this18:02
mnaseri mean, if the job is green and the change seems sane..18:02
fungithat'll be a fun conversation18:02
mnaserwell, i'm not trying to grow the scope of things, but i can imagine if we put CI in place, then hopefully we won't break it, and dockerfiles are pretty static18:03
mnaserthey won't change often18:03
clarkband most of the fixing will be to bindep and requirements18:03
clarkb(things that you want to update anyway)18:03
mugsieyeah - I suggest that teams may initially push back, but if there is a good base, and minimal work, it should be easy enough to get a critical mass on side18:05
fungito circle back to my first comment, the reason i strongly recommend revisiting (and if necessary revising) https://governance.openstack.org/tc/resolutions/20170530-binary-artifacts.html is that, while some things about the situation which prompted us to write that have changed in the nearly three years since, other things have not18:05
*** rpittau is now known as rpittau|afk18:06
mugsieI never understood the issue for e.g. SSL - the binaries can be apache, which is an AS IS licence, so I am not sure where liability would come from18:07
fungiwhat was the ssl liability issue?18:07
fungiwhere?18:07
mugsiewas the issue not with a potential liablity if we ship a binary with a broken / vunrable SSL (as an example)18:08
fungii can think of a few potential issues around openssl, if that's what you're talking about, but anyone who works knee-deep in distro packaging has plenty of license incompatibility horror stories18:08
mnasergiven the velocity of how much we merge changes18:09
mnaseri doubt the images would be stale for long18:09
mnaserand im not even proposing tagged images with releases or stable branches18:09
mnaserjust :latest pointing towards master, for now18:09
fungioh, i think i said glibc, but yes. one of the problems that the resolution was intended to solve was making sure consumers of those images know that we aren't explicitly tracking vulnerabilities in other people's software we're redistributing in them, and that if they want to be sure they're updated with non-vulnerable versions they should build the images themselves18:10
mnaseri think we can start by at least having docker files and then when we publish them to dockerhub, we can put (in the readme) a warning saying those are not supported and you should build your own18:11
mnaseranyways, im pretty sure all those individuals who are after that high level of security18:11
mnaserare certainly _not_ docker pull-ings things from the internet18:11
fungito approach it as "the apache (or whatever) license says we're not to be held liable" is not great for users. we need them to know we're not keeping track of vulnerabilities in other people's software out of COURTESY and so they don't hate us later when it becomes a problem for them18:11
clarkbrelated to that I think one of the ways you minimize that risk in addition to communication is careful choice of base image18:12
mugsieclarkb: ++18:12
clarkbcomparing to kolla again they build (or tried to build) on like 5 different platforms18:12
fungialso the apache license is a red herring here. the images wouldn't (couldn't) be "apache licensed" because they will almost certainly aggregate software under lots of licenses, some of which aren't necessarily even apache-compatible18:12
clarkball with different update scheduels and versions and it gets complicated very quickly18:13
clarkbif you stuck to a single minimal base image the problem space gets much smaller18:13
mugsiecan we try and avoid dockerhub? I have ... issues ... with that being a thing18:13
mnaserclarkb: yep, i agree.18:13
mnaserwe can publish to registery.opendev.org18:13
mugsiesomething like distroless/python3 is interesting18:13
mnaseror where-ever our heart desires18:13
clarkbI have 0 desire to run a production docker registry fwiw18:14
mnasermugsie: this is actually something that's already done by the infra team18:14
clarkbthe tooling in the sapce is terrible18:14
clarkband you need lots of disk18:14
mugsieyeap18:14
clarkb(its so bad zuul wrote its own to deal with speculative images)18:14
mnaseropendev/python-builder + opendevorg/python-base is already built on "distroless" (somewhat).  the latter is FROM python:foo18:14
mnaseri mean, we can use quay, we can use dockerhub, that's just an implementation detail where it ends up18:14
mnaserwe can run gitlab and use it's container registry18:15
* mnaser giggles18:15
*** jamesmcarthur has quit IRC18:15
mugsieclarkb: thats fair. it is just a personal peeve :)18:15
clarkband ya all our tooling should support arbitrary registries18:16
clarkbyou have to use a qualified name if not talking to dockerhub and we only cache dockerhub and quay currently iirc18:16
mnaseryeah.  and folks can publish it where they want if they want to18:20
*** jamesmcarthur has joined #openstack-tc19:19
*** jamesmcarthur has quit IRC19:28
*** jamesmcarthur has joined #openstack-tc19:29
mordredmugsie: distroless/python3 doesn't actually help a ton - it's interesting, but for the common openstack usecase it's a little bit too distroless19:32
mordredmugsie: and yeah - I agree - dockerhub-by-default is annoying :)19:32
mordredwe fully qualify our dockerhub references these days so taht we can use the richer multi-registry versions of the container tools19:32
mordredbut - you know - if it's a road we want to go down and it winds up being *the* thing - having a registry.opendev.org isn't untennable ... ACTUALLY - that might solve several problems at once19:36
mordredlemme write down a thought real quick19:36
openstackgerritJay Bryant proposed openstack/governance master: Analysis of 2019 User Survey Feedback  https://review.opendev.org/69858219:43
jungleboyjtc-members ^^^ Took another stab at the User Survey.  Take a quick look if you can.  Would like to wrap it up so aprice can including it with up-coming communications!19:44
*** jamesmcarthur has quit IRC20:03
*** jamesmcarthur has joined #openstack-tc20:05
*** jamesmcarthur has quit IRC20:14
*** jamesmcarthur has joined #openstack-tc20:16
*** jamesmcarthur has quit IRC20:22
*** jamesmcarthur has joined #openstack-tc20:46
*** e0ne_ has quit IRC21:04
*** e0ne has joined #openstack-tc21:08
*** jamesmcarthur has quit IRC21:15
*** jamesmcarthur has joined #openstack-tc21:16
*** e0ne has quit IRC21:22
*** jamesmcarthur has quit IRC21:23
*** jamesmcarthur has joined #openstack-tc21:23
*** jamesmcarthur has quit IRC21:40
*** jamesmcarthur has joined #openstack-tc21:41
*** jamesmcarthur has quit IRC21:47
*** jamesmcarthur has joined #openstack-tc21:47
*** jamesmcarthur has quit IRC21:54
*** jamesmcarthur has joined #openstack-tc21:57
*** jamesmcarthur has quit IRC21:59
*** jamesmcarthur has joined #openstack-tc22:02
*** jamesmcarthur has quit IRC22:05
*** jamesmcarthur has joined #openstack-tc22:05
*** jamesmcarthur has quit IRC22:13
*** jamesmcarthur has joined #openstack-tc22:17
*** jamesmcarthur has quit IRC22:36
*** jamesmcarthur has joined #openstack-tc22:37
*** slaweq has quit IRC22:45

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