13:00:52 #startmeeting meeting 13:00:52 Meeting started Mon May 29 13:00:52 2017 UTC. The chair is mvollmer. Information about MeetBot at http://wiki.debian.org/MeetBot. 13:00:52 Useful Commands: #action #agreed #halp #info #idea #link #topic. 13:00:52 The meeting name has been set to 'meeting' 13:00:57 .hello mvo 13:00:58 mvollmer: mvo 'Marius Vollmer' 13:01:00 .hello garrett 13:01:01 garrett: garrett 'Garrett LeSage' 13:01:12 .hello martinpitt 13:01:13 pitti: martinpitt 'Martin Pitt' 13:01:49 .hello dperpeet 13:01:50 dperpeet: dperpeet 'None' 13:03:09 #topic Agenda 13:04:08 * Server Applications update 13:04:39 anything else? 13:04:50 ΓΈ 13:04:54 * libvirt integration 13:05:18 .hello larsu 13:05:19 larsu: larsu 'Lars Karlitski' 13:05:43 let's start! 13:05:51 #topic Server Applications update 13:06:01 so I am still working on that. :-) 13:06:18 i think the plumbing work is coming to an end 13:06:36 well, it's open for review 13:06:53 which isn't really the end, of course 13:07:22 so we have a way to adapt to changing manifests without logging out 13:07:47 and there is a way to generate menu entries from AppStream metadata dynamically 13:08:08 I am putting that all together for a new screen cast, any minute now 13:08:37 andreasn has worked on the design, and I think I am ready to implement it 13:09:09 concrete next step is to make a PR for the AppStream spec for the new "service" component type 13:10:10 and we can probably start thinking about how to integrate this with the new navigation stuff that garret and petervo are working on 13:10:32 that's it 13:10:51 so are we writing new manifests to the filesystem 13:11:00 sorry i haven't looked at the code yet 13:11:16 no, we read stdout of a process 13:12:04 if .../override.exec exists, it is spawned and stdout is used in the same way as override.json 13:12:43 the generator can do some caching if that is called for 13:14:03 next? 13:14:48 sure, i guess i'm interested in the seeing the example of how this all fits together 13:15:09 yeah 13:15:32 briefly: we install a rpm package that contains a systemd service, but no cockpit code 13:15:42 and what the advantage is of doing it this way as opposed to doing more of this on the JS side 13:16:10 after installation, the manifests are loaded again, and a override.exec generates a menu entry for the rpm package 13:16:45 when navigating to that entry, cockpit shows a semi-generic UI that let's the user control that service 13:17:24 the rpm package has to opt into this via its AppStream metainfo file 13:18:07 petervo, yes, this can be done via plugins in the shell 13:18:31 i think override generators are simpler and more efficient 13:19:39 but they are also limited 13:20:07 we also are going to need to add menu entries for containers 13:20:17 yes 13:20:38 and in those cases that will probably happen via js code only 13:20:43 the override generators need a concrete package to work within 13:22:14 petervo, are you thinking of some plugin api for the shell, or some concrete changes to the shell that teach it about containers? 13:22:43 more of a plugin api for the shell i think 13:22:54 yes, makes sense 13:23:20 i just don't want to have too many different ways to do similar things 13:23:28 but maybe they are different enough 13:23:30 the application stuff can be done that way, too, but it requires a lot of roundtrips, I am afraid 13:23:42 so probably not ideal 13:23:54 maybe caching can help 13:24:09 anyways i'll think about that a little more when i review 13:24:14 great 13:24:22 and i guess if you think of anything in the mean time 13:24:28 in any case, we can keep override.exec "internal-only" 13:24:47 alright next topic was mine, libvirt 13:24:57 #topic libvirt 13:25:30 for anyone who didn't see my email, we are looking at integrating with libvirt 13:26:11 initially I was sort of hoping to integrate with their XDR RPC daemon 13:26:31 but they are pretty strongly against anyone doing that 13:27:13 to it's looking like we'll need to decide between trying to do something more generic like generalized dbus or REST service for it 13:27:30 or writing a one off cockpit-bridge for it 13:27:41 that integrates with their C api 13:28:08 I guess the biggest question is whether there are more potential consumers for such an API 13:28:14 I'm still in the gathering ideas phase 13:28:20 that's always the question yes 13:28:24 if there are, a dbus or REST service would be promising 13:28:47 so far I've heard that everyone things there would be interest 13:28:57 but nothing concrete i can point to 13:29:02 thinks* 13:29:25 you mean adding a dbus service to libvirt proper? 13:29:29 from what we've done before, the generalized dbus/REST interface sounds more interesting 13:29:37 and less cockpit specific 13:30:02 they don't want us to interface directly with their RPC because they consider it an internal implementation detail? or is that a stable API? 13:30:10 well it would have to be a separate project 13:30:33 it is an internal only API, and they do not want to make it stable 13:31:11 ack; so a generic RPC bridge/REST <-> RPC gateway wouldn't help with that 13:31:21 right 13:31:34 .hello mlibra 13:31:34 I think we need commitment from libvirt guys to maintain it otherwise it will be to much unreliable in the long term 13:31:35 mlibra: mlibra 'Marek Libra' 13:31:51 mlibra, yes that's the big question 13:32:08 who gets to maintain it and get in all the distros 13:32:22 I don't like recent virsh either, but it would be a dead end to build and maintain somthing like that on my/our own 13:32:23 we had similar issues with storaged before 13:33:39 anyways we don't have to make a decision right now 13:34:02 storaged was a 'hostile' fork, this would be something new and uncontroversial, right? 13:34:32 something new for sure, not sure about uncontroversial 13:34:37 hopefully 13:36:05 so interfacing through virsh and/or XML is too clumsy? 13:36:26 the biggest problem with virsh is we don't get events 13:36:34 so we have to poll 13:37:09 ah -- maybe there's a compromise where the libvirt guys can commit to keeping the notification part of the API stable? 13:37:18 i asked that 13:37:23 but the answer was no 13:37:27 although that would then speak both rpc and virsh or XML, not exactly elegant either 13:38:15 we don't have to make a call now, but would be good to think about, i guess let me know if anyone has any further thoughts or reply to list 13:39:53 so virt-manager (the GUI) uses the internal api? 13:40:05 well it uses the C API 13:40:12 which is stable 13:40:17 ahh 13:40:28 but it's not remotable 13:40:39 right, got it 13:42:31 next topic? 13:42:43 #topic Any other business 13:43:54 we are done I guess 13:44:00 thanks! 13:44:02 #endmeeting