15:00:44 <fabiand> #startmeeting oVirt Node Weekly Meeting
15:00:44 <ovirtbot> Meeting started Mon Mar 23 15:00:44 2015 UTC.  The chair is fabiand. Information about MeetBot at http://wiki.debian.org/MeetBot.
15:00:44 <ovirtbot> Useful Commands: #action #agreed #help #info #idea #link #topic.
15:00:52 <fabiand> #chairs rbarry tlitovsk dougsland
15:00:59 <fabiand> #topic Agenda
15:01:00 <tlitovsk> present
15:01:03 <tlitovsk> 667526
15:01:07 <fabiand> tlitovsk, hey! nice to see you!
15:01:12 <fabiand> tlitovsk, no, that is my old number ..
15:01:24 <fabiand> #info oVirt 3.5
15:01:25 <dougsland> here
15:01:32 <fabiand> #info oVirt 3.6 planning
15:01:38 <fabiand> #info Jenkins and CI progress
15:01:40 <fabiand> #info Other Items
15:03:05 <fabiand> #topic oVirt 3.5
15:03:18 <fabiand> So, oVirt 3.5.2 is actually the curretn RC IIRC
15:04:01 <fabiand> #info Node team provided some stabilizatin patches for 3.5.2, all merged in 3.5 branch
15:04:05 * rbarry here
15:04:10 <fabiand> One major work item for 3.5 is that we get the rpm and iso builds stable ..
15:04:17 <fabiand> But I think we made som egood progress here.
15:04:20 <fabiand> hey rbarry , nice to see you
15:04:40 <fabiand> rbarry, dougsland tlitovsk -- that was a joint effort to cleanup jenkins and get the rpm building into place, can someone summarize where we stand?
15:04:49 <tlitovsk> let me try
15:05:23 <tlitovsk> we had the iso build started some time ago.
15:05:32 <tlitovsk> and we found the following issues .
15:05:43 <tlitovsk> There was no ovirt node rpm published in the repos.
15:06:00 <tlitovsk> And the livecd dependency was not provided by any of the external repos.
15:06:26 <fabiand> #info Issue wih the current 3.5 release: No ovirt-node rpms were published, is bad and makes building isos a little bit harder (at least when they should be specific to some release)
15:06:38 <fabiand> #info livecd-tools dependency was missing
15:06:44 <tlitovsk> The last weeks we made the publishers for ovirt rpms .
15:06:57 <tlitovsk> we added live cd rpm for the el7 distro.
15:07:17 <tlitovsk> and we published all plugins rpms in the repositories
15:07:22 <fabiand> Nice!
15:07:30 <fabiand> #info Builders for the ovirt-node related rpms were added
15:07:36 <fabiand> tlitovsk, what branches do the builders cover?
15:07:40 <fabiand> and what distros?
15:07:53 <tlitovsk> one thing before this.
15:08:07 <tlitovsk> we still dont have all publishers for all plugins ready.
15:08:38 <tlitovsk> dougsland, can elaborate on the missing plugins publishers
15:09:06 <tlitovsk> for the node we have 3.5 and master branches for el6 el7 and fc20
15:09:20 <dougsland> tlitovsk, what do you meant the jobs?
15:09:24 <fabiand> #info 3.5 builders cover el6 el7 and f20
15:09:26 <dougsland> The rpms I have shared at least.
15:09:36 <fabiand> #info Not all publishers for buidlers are ready yet
15:09:56 <tlitovsk> dougsland, yes those are updated and used for our daily builds.
15:10:40 <tlitovsk> dougsland, but i think we miss builder for 3.5 branch of the plugins. unless they are rare to build and then we can do it mannualy.
15:10:43 <dougsland> last week I couldn't look into the jobs. My idea initially is clone the HE plugin 3.5 job into VDSM job.
15:11:04 <dougsland> then just change the little stuff to make it work
15:11:21 <tlitovsk> dougsland, i think this will be great .
15:11:47 <dougsland> tlitovsk, I will need your help, I will drop an email to you asking what time is good for you.
15:11:48 <tlitovsk> its just we need to make it in yaml formats to make dcaro happy.
15:11:58 <dougsland> tlitovsk, sure, that's okay too.
15:12:10 <tlitovsk> dougsland, sure allwas there when you need .
15:12:20 <dougsland> tlitovsk, okay, thanks
15:12:30 <dougsland> tlitovsk, expect me ;-)
15:12:49 * fabiand tries to summarize
15:13:13 <fabiand> #action tlitovsk and dougsland to collaborate to add the remaining publishers for the remiaining unpublished rpms
15:13:19 <dougsland> o>
15:13:33 <tlitovsk> fabiand, which is vdsm plugin 3.5 branch
15:13:44 <fabiand> tlitovsk, that should be ovirt-3.5 or node-3.0
15:13:51 <fabiand> But I think we've moved, to ovirt-3.5, have we dougsland ?
15:14:12 <dougsland> ovirt-3.5 as the others component.
15:14:12 <tlitovsk> ovirt-3.5 is the official repo name .
15:14:16 <dougsland> everything in sync
15:15:14 <fabiand> tlitovsk, ovirt-3.5 is the official branch name
15:15:16 <fabiand> dougsland, ack
15:15:22 <fabiand> Okay
15:15:38 <fabiand> That means that ovirt-node, and all the plugins are build, and soon also published completely
15:15:41 <fabiand> Nice.
15:16:04 <tlitovsk> fabiand, they are published already just the 3.5 branch is not published daily.
15:16:09 <fabiand> okay
15:16:09 <tlitovsk> for the vdsm plugin.
15:16:14 <fabiand> right
15:16:26 <fabiand> #info the remaining plugin which is not published on a daily basis is the ovirt-node-plugin-vdsm
15:16:54 <fabiand> So once all of this is into place
15:17:02 <fabiand> I also expect to have decent iso builds for specific branches
15:17:10 <fabiand> So after 1.5 years we are slowly converging again ..
15:17:38 <fabiand> tlitovsk, thanks for the update
15:17:42 <tlitovsk> fabiand, curretnly we build master node and node-iso with 3.5 repos.
15:17:56 <tlitovsk> fabiand, which we will break to pure 3.5 builds and pure master builds.
15:18:05 <fabiand> right, and we need the regular publishers to update the repos when we've got updates in the 3.5 branches IIUIC
15:18:09 <fabiand> yep
15:18:32 <tlitovsk> but for the bright side we have isos that we can share to people again.
15:18:37 <fabiand> yep!
15:19:23 <fabiand> okay
15:19:33 <fabiand> If there is nothing else on 3.5 I'd move on
15:19:46 <fabiand> #info Pure 3.5 and master isos will be the result of the builder and publisher cleanup
15:20:15 <fabiand> #topic oVirt 3.6
15:20:18 <fabiand> moving on
15:20:46 <fabiand> #info The hackathon covered importnat items for 3.6
15:20:54 <fabiand> #info Cockpit migration
15:21:12 <fabiand> dougsland, rbarry -- Do you want to give an update on the spec reorganization and the cockpit/dbus stuff?
15:21:34 <rbarry> I'll start, I guess, so we're not talking over each other
15:22:10 <rbarry> Part of what we want to accomplish for 3.6 is a move to web management instead of the TUI, done via Cockpit
15:22:57 <rbarry> Cockpit has the ability to run command-line utilities, which we could use to provide a small wrapper around the existing configuration classes if necessary, but doing so would be very "hacky" and wouldn't get us away from some of the problems we have now
15:23:14 <fabiand> #info Part of 3.6 is to move to web management instead of the TUI, done via Cockpit
15:23:45 <rbarry> Additionally, calling out to the shell through a websocket connection doesn't provide any reasonable way to pass data the other way (back to the webpage) to let users know what the current state of configuration is, unless we wanted to build an entirely different framework around querying those files, and...
15:24:33 <rbarry> We decided that we'd publish everything over dbus instead. This way we can use dbus methods to trigger the configuration classes, automatically infer their signatures and provide appropriate input in cockpit, and return information asynchronously with dbus signals
15:24:50 <rbarry> The first step of this was to actually present out configuration bits over dbus, which is what I worked on for the hackathon
15:25:19 <rbarry> We got an upstream repo last week, so it's all pushed up to gerrit as ovirt-node-dbus-backend
15:25:28 <fabiand> #info Creating wrappers around the existing configuration classes seemed to be very "hacky" and wouldn't get us away from some of the problems we have now
15:25:28 <rbarry> But it's a few relatively small parts:
15:25:52 <rbarry> A dbus policy which allows us to run a daemon on the system bus, so no user session is necessary to bring it up.
15:26:08 <fabiand> #info Additionally, calling out to the shell doesn't provide any reasonable feedback to the web UI
15:26:20 <rbarry> A systemd unit file which runs a daemon (which handled the dbus interaction)
15:27:06 <rbarry> And some python classes which run the daemon itself. You can pass a class or module into a factory, and it will introspect it, create an appropriate dbus path (on the org.ovirt.node namespace), and publish the methods
15:27:38 <rbarry> Additionally, in some cases (like the current ovirt.node bits) which need an additional wrapper around it, it has the ability to trigger something after the method through closures. In this case, a transaction wrapper
15:28:15 <rbarry> So we can pull ovirt-node-dbus-backend, build the RPM, install it, and immediately be able to trigger all of our existing configuration classes with no changes
15:28:37 <fabiand> #info Config classes are offered over native dbus now
15:28:48 <fabiand> #info Upstream repository got created for the ovirt-node-dbus-backend
15:28:52 <rbarry> In order to do this really well, we needed to break up the specfile. ovirt-node has not co-existed well with existign systems. It sort of assumes it can take over the entire thing, which makes it unsuitable for installing on "plain-jane" distros, or non-Node images
15:29:24 <rbarry> For testing, next-gen (which will be a different sort of image), and to decouple the real "logic" of what we do from the interface, dougsland broke ovirt-node into a number of parts.
15:29:36 <fabiand> #info ovirt-node-dbus-backend is some unit file, with some python code consuming the existing ovirt-node config classes
15:29:45 <rbarry> The dbus-backend requires one part (the one which provides the ovirt node configuration classes), but I'll let dougsland cover the rest
15:30:37 <dougsland> To accomplish the cockpit goal which has been covered by rbarry
15:30:56 <dougsland> we have split the big one single ovirt-node.rpm into subpackages
15:31:07 <fabiand> #info rbarry took care of ovirt-node-dbus-acbkend
15:31:22 <dougsland> so we can install only the packages needed or even replace components now easily
15:31:40 <dougsland> like the replace of ovirt-node TUI to Cockpit, we wil just drop the TUI rpm and add the new bits for cockpit.
15:31:40 <fabiand> #info dougsland factored out the python files related to performing host configuration into a subpackage, which is required by ovirt-node-dbus-backend
15:32:03 <fabiand> That sounds pretty nice!
15:32:07 <fabiand> And I can tell that it works! :)
15:32:12 * fabiand tried it ~2weeks ago
15:32:16 <fabiand> So big kudos, dougsland and rbarry !
15:32:43 <dougsland> for all of us..
15:32:46 <dougsland> :)
15:32:50 <fabiand> :)
15:33:40 <fabiand> Indeed
15:33:49 <fabiand> Nice wortk, especially nice progress towards 3.6
15:34:28 <fabiand> Some important things that come into play here before we can really test this is probably
15:34:41 <fabiand> 1. Publish the ovirt-node-lib-config on a nightly basis from master
15:34:49 <fabiand> I think this will be covered by the nightly builders/publishers
15:35:08 <fabiand> 2. Add builders/publishers to ovirt-node-dbus-backend
15:35:14 <fabiand> And
15:35:26 <fabiand> 3. Add a web UI for the offered classes
15:35:46 <fabiand> rbarry, any progress on the jenkins builders and publishers?
15:37:01 <rbarry> The automation scripts are in the repo for the dbus-backend. Just need to do the yaml bits
15:37:14 <rbarry> I also need to look up the CI docs for the publishers and what's required
15:37:46 <fabiand> #info dbus backend has the automation files, but is missing the yaml job specififcation
15:38:13 <fabiand> rbarry, okay, let us plan this for the next few days, consumption is necessary so more people can start testing it
15:38:39 <fabiand> #action rbarry to finish builders/publishers for the ovirt-node-dbus-backend package
15:38:53 <fabiand> That is actually even more important than the web ui, imo
15:39:08 <fabiand> rbarry, maybe tlitovsk or dcaro can help you if needed
15:39:15 <fabiand> I think both of them are used to the yaml stuff
15:39:29 <fabiand> Nice nice
15:39:35 <rbarry> That is the plan, just got sidetracked with bugs last week
15:39:47 <tlitovsk> rbarry, sure , just send me the repo path and the build commands.
15:39:49 <fabiand> Yeah, bugs ..
15:40:19 <fabiand> Okay
15:40:21 <fabiand> moving on
15:40:24 <fabiand> From my side:
15:40:37 <fabiand> I tried to improve the appliances we have to make testing and consumption of our 3.6 stuff easier.
15:40:59 <fabiand> #info fabiand created a Node appliance basedon CentOS 7, and changed the Engine ppliance to also be based on CentOS 7
15:41:22 <fabiand> info Node appliance is planned to provide all the node bits for 3.6 - cockpit, ovirt-node-lib-config …
15:41:28 <fabiand> #info Node appliance is planned to provide all the node bits for 3.6 - cockpit, ovirt-node-lib-config …
15:41:50 <fabiand> But I also got side tracked ..
15:41:59 <fabiand> So, That is it from me for now for 3.6
15:42:04 <fabiand> Anything else, rbarry tlitovsk dougsland ?
15:42:12 <rbarry> Nothing from me
15:42:17 <tlitovsk> me neither
15:42:20 <dougsland> nothing from my side.
15:42:24 <fabiand> Ah fine.
15:42:34 <fabiand> Moving on the - but I think we covered the next topic already partially:
15:42:46 <fabiand> #topic Jenkins and CI progress
15:42:58 <fabiand> We've alread covered the builders and publishers
15:43:17 <fabiand> Just a quick question: tlitovsk have you had time to speak with dcaro about the smoktesting in upstream jenkins?
15:43:28 <tlitovsk> 701345
15:43:41 <tlitovsk> fabiand, no but i am working on this
15:43:51 <fabiand> Okay
15:44:10 <fabiand> #info no visual progress on CI, but it' s not forgotten.
15:44:11 <tlitovsk> We had some talks with bkorren and eedri and it actually not as difficult as it sounds
15:44:12 <fabiand> Thanks, tlitovsk
15:44:16 <fabiand> Ah okay.
15:44:17 <fabiand> Perfect
15:44:24 <fabiand> I'd really love to see a working libvirt on jebnkins ..
15:44:44 <fabiand> Okay
15:44:46 <tlitovsk> hopefully eedri wil get us some more ram and cpu power and then all will be good
15:44:56 <fabiand> Moving on to find - at last - an end to this sheer endless meeting :)
15:45:01 <fabiand> eedri|wfh, ^^
15:45:05 <fabiand> #topic Other Items
15:45:15 <fabiand> dougsland, tlitovsk rbarry anything else you want to bring up?
15:45:20 <tlitovsk> no
15:45:23 <dougsland> nop
15:45:32 <rbarry> Nope
15:45:45 <fabiand> Okay
15:46:04 <fabiand> Then - I think you very much for the vivid discussion and wish you a good day or night ahead.
15:46:07 <fabiand> :)
15:46:09 <fabiand> #endmeeting