17:07:08 <chouseknecht> #startmeeting ansible-container
17:07:08 <zodbot> Meeting started Mon Jan 15 17:07:08 2018 UTC.  The chair is chouseknecht. Information about MeetBot at http://wiki.debian.org/MeetBot.
17:07:08 <zodbot> Useful Commands: #action #agreed #halp #info #idea #link #topic.
17:07:08 <zodbot> The meeting name has been set to 'ansible-container'
17:07:21 <j00bar> DAMMIT, ZODBOT RESPECT MAH AUTHORITAY
17:07:52 <chouseknecht> I had to scroll back forever to see the last meeting, and how to activate the thing
17:08:00 <chouseknecht> It's been awhile
17:08:10 <j00bar> happy new year
17:09:12 <j00bar> chouseknecht: Agenda?
17:09:23 <chouseknecht> I don't have anything specific
17:09:31 <chouseknecht> We have a presentation in Brno
17:09:47 <chouseknecht> Possibly dinner Wed evening in Brno as well
17:10:07 <gundalow> j00bar: remember to: #chair chouseknecht
17:10:11 <gundalow> (and anyone else)
17:10:15 <chouseknecht> And... I put a proposal out there for re-writing the deployment bits
17:10:17 <gundalow> then you can all do #info, #topic, etc
17:10:25 <chouseknecht> #chair chouseknecht
17:10:25 <zodbot> Current chairs: chouseknecht
17:10:31 <j00bar> So formal! 🙄
17:10:32 <chouseknecht> #chair j00bar
17:10:32 <zodbot> Current chairs: chouseknecht j00bar
17:10:48 <chouseknecht> #topic Brno AC presentation
17:11:00 <chouseknecht> there. we have a topic
17:11:06 <chouseknecht> and chairs
17:11:30 * j00bar sits in his chair
17:11:34 <funzo> haha
17:11:46 <j00bar> do i get a #gavel too?
17:12:06 * chouseknecht passes j00bar a gavel
17:12:31 <chouseknecht> j00bar: are you still on board with doing the intro and a build demo?
17:13:04 <j00bar> I am.
17:13:11 <chouseknecht> cool
17:13:17 <j00bar> We might even be able to do some really cool shit.
17:13:21 <chouseknecht> whoa
17:13:24 <chouseknecht> like wha?
17:14:07 <j00bar> I've been playing with the CDK. There's a couple of really neat items I found.
17:14:26 <chouseknecht> go on...
17:15:09 <j00bar> The neatest one I found is oc rsync
17:15:32 <j00bar> I've been struggling to figure out how a dev workflow might operate with minishift/cdk on the desktop without having to rebuild images every time with a code change
17:15:36 <j00bar> oc rsync is it
17:16:29 <j00bar> oc rsync $PWD/ $(oc get pods -l app=$APP_NAME -o name | cut -f2 -d/): -w --progress
17:18:17 <chouseknecht> o
17:18:31 <chouseknecht> you know that just uses local rsync, right?
17:18:35 <j00bar> Yes, I know.
17:18:57 <chouseknecht> we need fix the synchronize plugin to work with the new connection plugins.
17:19:28 <j00bar> But set the app server to reload on code changes, set your IDE to run that in a terminal or to do continuous deployment (without the -w flag) - and your local openshift updates without rebuilds
17:19:28 <chouseknecht> don't know if it makes it easier, or not, but there is an `oc` connection plugin that wraps the `oc` binary.
17:19:49 <chouseknecht> yeah, that makes sense.
17:20:05 <j00bar> Like we talked about last week, we should genericize the container connection plugin and then implement concrete subclasses for docker, oc, kubectl, runc, etc.
17:20:53 <chouseknecht> oc subclasses kubectl, but i didn't get into modifying docker.
17:21:56 <j00bar> If you take the docker connection plugin and abstract out the list of commands needed for exec like ['docker', 'exec', '-i', '-t'] and let subclasses overwrite that, you're 90% of the way there, I'd imagine.
17:21:56 <chouseknecht> they already subclass the base connection class, but what you're saying probably makes sense.
17:22:42 <j00bar> Anyway, tomorrow I'm going to do work on a-c - there are a couple of bugfixes with my incursion before xmas that still need to get done.
17:22:46 <chouseknecht> just not really wanting to break everything, and code freeze for 2.5 is on Monday, I believe.
17:22:55 <j00bar> Yeah, this is 2.6 timeline.
17:23:48 <j00bar> And I probably won't be on this mtg next week, as I'll be getting ready to put the ❄️ brrrr! ❄️ in Brno.
17:24:25 <chouseknecht> wha? are you spending the day packing your suitcase?
17:24:30 <j00bar> No. Flying.
17:24:36 <chouseknecht> o.
17:24:39 <j00bar> It may or may not be during a layover. Depends how the dice roll.
17:24:51 <j00bar> Oh, forgot the timezone change. Looks like I'll be around.
17:25:31 <chouseknecht> #topic Proposal for deploy
17:26:32 <chouseknecht> j00bar: any thoughts, concerns, comments on https://github.com/ansible/ansible-container/pull/850
17:27:37 <j00bar> What's the benefit, in your mind?
17:28:09 <chouseknecht> First benefit, is using new modules
17:28:24 <chouseknecht> Second benefit, non-monolithic playbook
17:28:59 <chouseknecht> Third benefit, k8s configs separate from playbook, in case you just want those
17:30:02 <j00bar> Sounds good - my request might be to consider the architecture of the deploy backend implementation to make it easier to implement an APB backend.
17:32:15 <chouseknecht> ummm....
17:32:38 <chouseknecht> I don't know what that means
17:33:08 <j00bar> Well, I imagine to output this, you're going to need code to generate different roles for each operation, right?
17:33:24 <chouseknecht> yes
17:33:57 <chouseknecht> i was thinking at some future point that a deploy artifact could be an APB
17:34:22 <chouseknecht> so maybe what you're saying is it might be time to examine that
17:34:24 <j00bar> So if we generalize the codepath to implement each operation, each outputting "something", then that codepath could be re-leveraged somewhat easily to deploy an APB, which would need a separate playbook for each operation.
17:34:40 <chouseknecht> yes
17:34:44 <j00bar> I'm just saying keep an eye on where we want to be in the future to set ourselves up to do it more easily.
17:34:56 <chouseknecht> that makes sense
17:36:30 <chouseknecht> does APB handle a multi container app?  it must. i feel like all the examples i've seen are single container apps.
17:37:09 <chouseknecht> that may be only because it's easier to show a simple, one container thing in a basic demo. i dunno.
17:38:10 <chouseknecht> i'll poke at that later today, and get understanding of what goes into an APB. I know the methods it has playbooks for are bind, unbind, provision, deprovision and list.
17:38:27 <chouseknecht> so i can certainly start from that
17:39:57 <chouseknecht> ttomecek: you around?
17:41:17 <chouseknecht> I don't have anything else.
17:41:29 <chouseknecht> j00bar: you got anything else?
17:42:33 <j00bar> Sorry - switched tabs
17:42:48 <j00bar> Please do poke, yes.
17:43:04 <j00bar> I'd love to have a hackathon in Brno if everybody can clear their schedules.
17:43:42 <j00bar> Maybe Thursday at RH offices?
17:43:49 <j00bar> We'll have all that energy and optimism from the night before.
17:52:06 <j00bar> chouseknecht: ?
17:52:37 <chouseknecht> j00bar: are you organizing a hackathon?
17:53:15 <chouseknecht> maybe gage the level of optimism.
17:55:04 <fabianvf> chouseknecht: ah sorry, I'm here too
17:55:08 <chouseknecht> alright. i gotta run to another meeting.
17:55:15 <chouseknecht> fabianvf: hey!
17:55:42 <chouseknecht> fabianvf: just noticed they moved the client-python repo to kubernetes-client org
17:55:51 <j00bar> I'll put it on a calendar.
17:56:05 <fabianvf> chouseknecht: ah, interesting
17:56:48 <chouseknecht> https://github.com/kubernetes-client/python
18:03:25 <fabianvf> chouseknecht: I have it on my list to talk with the kube client people about the dynamic approach
18:03:43 <fabianvf> though I'm pretty bogged down with 3.9 bugs atm
18:32:07 <chouseknecht> sorry. had to hop to another meeting.
18:32:11 <chouseknecht> back/
18:32:13 <chouseknecht> back
18:32:29 <chouseknecht> i guess we can end the container meeting...
18:32:33 <chouseknecht> #endmeeting