14:04:58 #startmeeting meeting 14:04:58 Meeting started Mon Mar 6 14:04:58 2017 UTC. The chair is mvollmer. Information about MeetBot at http://wiki.debian.org/MeetBot. 14:04:58 Useful Commands: #action #agreed #halp #info #idea #link #topic. 14:04:58 The meeting name has been set to 'meeting' 14:05:03 .hello garrett 14:05:04 garrett: garrett 'Garrett LeSage' 14:05:06 .hello martinpitt 14:05:06 .hello dperpeet 14:05:07 .hello mvo 14:05:07 pitti: martinpitt 'Martin Pitt' 14:05:10 dperpeet: dperpeet 'None' 14:05:13 mvollmer: mvo 'Marius Vollmer' 14:05:21 .hello andreasn 14:05:22 #topic Agenda 14:05:22 andreasn: andreasn 'Andreas Nilsson' 14:05:38 how do I add topics ? hash-topic or dot-topic? 14:05:40 * Outreachy 14:05:48 * container/ws: backwards compatibility for moving ssh known_hosts 14:05:51 * update container/ws during testsuite-prepare? 14:06:06 error: inconsistent whitespace 14:06:14 * pitti collects $1000 for formatting skills 14:06:16 * mvollmer dumped core 14:06:36 well, pitti obviously wants to propose those as future outreachy projects 14:06:42 sorry, my fingers are not able to type an enumeration without spaces, they only speak markdown 14:07:58 okay, let's start 14:08:04 #topic Outreachy 14:08:44 The Outreachy project phase is ending this week 14:09:11 bhakti wants to tell us a bit about the results and current state of her work on firewall support in cockpit, I believe 14:09:51 Yep. Last week we did usability testing on the prototypes and had a lot of valuable feedback. 14:10:35 I have added all the results from the testing and a few screenshots of the UI on the firewall wiki page here: https://github.com/cockpit-project/cockpit/wiki/Feature:-Firewall 14:11:46 There are a few more changes that needs to be made in the UI implementation 14:12:33 bhakti, thanks for that 14:12:38 But the usability testing has helped a lot to provide an insight into the changes that need to be included in the firewall. 14:13:04 compared to the goals at the beginning, how would you say the project actually was? 14:14:20 the initial user stories that had been decided upon helped to keep a track on the key features in the project. 14:15:47 would you say this is ready for a rough implementation? 14:16:01 or does this need more design before trying it out? 14:16:16 A rough implementation,yes. 14:16:35 that sounds good 14:16:57 thanks! 14:17:14 The current design satisfies the user stories as we saw from the usability testing. 14:17:42 And the feedback has been included in the design too. 14:17:55 for everyone who's interested in more details about the project progress, bhakti kept a blog at https://bhaktibhikne14.wordpress.com/ 14:18:41 * pitti queues for later reading, thanks 14:18:44 Thank You! :) 14:19:20 end of topic from me, unless you have more to add bhakti 14:20:23 Yes! I would like to thank everyone in the community for helping and supporting me throughout the project! 14:20:41 thank you for all the work! 14:21:04 It's been a pleasure to work on Cockpit! :) 14:21:32 thanks for working on this, bhakti, and now you're part of the community with the work you've done :) 14:21:44 hey folks 14:22:03 oops, you're in a meeting 14:22:08 I'll be back later 14:22:08 Son_Goku, yeah 14:22:13 Son_Goku, hi - you're welcome to add a topic 14:22:15 if you have one 14:22:27 dperpeet: I just wanted to find out about new udisks release 14:22:32 bhakti, thanks! 14:22:37 Mageia 6 is getting close to release, and I'd like to pull that in before we release 14:22:48 Thank You! 14:23:00 mvollmer: :) 14:23:16 though, bhakti, congrats on the firewall thing :) 14:23:27 Son_Goku: Thank you! :) 14:23:27 Son_Goku, I add that to the agenda, right? 14:23:35 mvollmer: you can if you want 14:23:42 I think it's important :) 14:23:56 okay, let's see 14:24:09 no bigg difference whether it is on the agenda or off, I guess 14:24:25 #topic container/ws: backwards compatibility for moving ssh known_hosts 14:24:34 some context for that: 14:24:38 we want to move /var/lib/cockpit/known_hosts to the "official" /etc/ssh/ssh_known_hosts 14:24:47 i. e. machines.js will then write /etc/ssh/ssh_known_hosts only 14:24:58 but on atomic, it might be that we have an older cockpit-ws container which still only looks at /var/ 14:25:04 in principle, AFAIUI, there is no dashboard on Atomic, so there is no user-visible "multi-machines" feature there; or am I missing anything? 14:25:25 two of our test cases fail on this issue (https://github.com/cockpit-project/cockpit/pull/6025) as they prod the "machines" URLs directly and thus sneak around the dashboard not being present 14:25:39 so I was wondering: is this an user-visible backwards compat break and we need to somehow detect this in the web UI, or only a CI issue? 14:25:45 pitti, the dashboard was removed on Atomic, yes 14:26:30 (this underlines the importance of settling down the on-disk format before this becomes more widely deployed in long-term releases..) 14:26:39 pitti, so the issue is that container/ws will never ever find the keys, right? 14:26:50 it's not just that the user has to add them a second time 14:27:05 right, as currently it only looks at /var/lib/cockpit/known_hosts 14:27:20 so you'd need to update the container to fix this if you update the host 14:27:34 *if* this is an user-visible feature (which I'm not sure about, see above) 14:27:40 would it work currently? 14:27:57 well no, as you don't have any UI to add remote machines on atomic 14:27:58 or is container/ws looking at the 'wrong' /var, maybe? inside the container? 14:28:16 mvollmer: no, /var is bind-mounted to the host, /etc/ssh is not -- that's the very change I need to land 14:28:17 if we would add the UI, would it work now? 14:28:19 (if I do that, it works) 14:28:25 mvollmer: yes, it would 14:28:30 right, thanks 14:28:52 can we bind mound /etc/ssh to /var/lib/cockpit/? :-D 14:29:03 eww :) 14:29:14 anyway, I think it would be nice not to break this, if reasonably possible 14:29:18 mvollmer: not without updating the container 14:29:39 as these bind mounts happen inside the /container/atomic-run script which is stored in teh container, not the host 14:29:44 or machines.js writing two files? 14:29:46 * pitti took a few hours this morning to dissect that 14:30:15 I think it's important not to break containers 14:30:18 well, before we talk about teh "how": is this an actual problem? 14:30:20 people will continue using the container 14:30:29 and use the newer one for older versions of cockpit also 14:31:01 but is there a reason not to update the container? 14:31:10 only ignorance, right? 14:31:31 we need to update the container to keep our tests passing (as I said, the tests hack around the absence of the dashboard) 14:31:42 the new container should keep working with old versions of cokcpit 14:31:49 but that aside, I was wondering if that is just a CI issue or a real-life backwards compat issue 14:32:00 yes, that's not a problem at all that way around 14:32:01 updating = bind mount /etc/ssh and newer version of cockpit-ws, right? 14:32:12 new ws/ssh work fine with old cockpit setups 14:32:27 just that old ws/ssh doesn't work with new cockpit packages on the host 14:32:59 mvollmer: yes; the "newer version of cockpit-*.rpm" is done by testsuite-prepare, but not the bind mount (but that's my second topic) 14:33:09 ok, can we detect that from the container and give a sane error message? 14:33:10 right 14:33:15 or use the version info we have? 14:33:27 we can't detect anything from the container if it doesn't get updated to a new version 14:33:37 and once it does get updated, there's no breakage to detect any more :) 14:34:10 we coudl hack machines.json to detect if the remote ws is running in a container (somehow) 14:34:20 and fall back to writing /var/lib/cockpit/known_hosts 14:34:26 but that'd be a really ugly hack 14:35:01 the problem is that the bridge (which writes known_hosts to the atomic host) is running on the host, thus writes the host's file system 14:35:10 but -ws and -ssh are in the container, so they rely on the bind mounts 14:35:13 but, the existing container doesn't do dashboards, so it wont run into that problem 14:35:25 mvollmer: right; and that's exactly what I was seeking confirmation of 14:35:27 no wait, this is not up to the container 14:35:34 or is it? 14:35:51 if there is no dashboard, then multi-machines isn't a feature on Atomic and there's no compat break 14:36:14 right, and how would we add the dashboard? 14:36:27 our test images don't have a dashboard, but I'm not sure if that's generally so on atomic or just the way we configured it in our test images 14:36:32 that doesn't need any change to container/ws, right? 14:36:43 I don't know 14:36:45 just adding a package to atomic host 14:37:19 would it suck to let machines.js write both files? 14:37:25 pitti, just fyi: you can use the container even if not on Atomic 14:37:26 IMHO yes 14:37:33 and people do 14:37:33 as there is no defined time/point when to stop doing so 14:37:47 we can do it forever... 14:38:14 I mean, if the docker images don't update automatically, then supposedly they will run old code forever (potentially) and thus we have to support ancient ws/ssh forever 14:38:23 yeah 14:38:28 *shrug* 14:38:30 I think it can be expected to update containers 14:38:33 that's what they're for 14:38:42 but the new container should be able to connect to an older cockpit 14:38:50 new containers are fine 14:39:12 there's code to search /etc/ssh/known_hosts, fall back to /var (and soon also look into $HOME and machines.d/*.json) 14:39:40 the difficulty is updating cockpit on the host, but keeping an old container, as there is no dependency relation between those 14:39:53 so, we need a general mechanism to tell people: there is a new container, go get it 14:40:03 right? 14:40:20 yeah (which is a much wider-scale problem, and a general source of brokenness and insecurity of containers :) ) 14:40:29 mvollmer, if possible, but I don't think it is a must - containers can be expected to be updated 14:40:43 pitti, how about a capability system-sshkeys 14:40:49 or something 14:40:58 that machines js can check for 14:41:05 to decide where to write 14:41:46 petervo: that would go towards the direction of "detect whether the remote ws is running in a container"? what kind of capability to you mean? 14:42:03 well it's not just about the container 14:42:26 there are various ways cockpit-ws could be old 14:42:35 but yes that's the most common case 14:42:48 capabilities are a cockpit feature 14:43:33 https://github.com/cockpit-project/cockpit/blob/master/src/ws/cockpitwebservice.c#L1644 14:43:39 petervo: so machines.js can somehow talk to the runing ws? 14:44:20 there's an init message that gets sent when the socket is setup 14:44:38 petervo: ah nice; if ws exports those and we can query those in js, we could implement that 14:44:53 i think there should be a way we can find out what they are 14:45:12 so that means our CI tests would detect that "backwards compat" fallback path, and not test the code path with writing /etc/ssh on Atomic 14:45:23 but as soon as we release a new container, they would test the new code path 14:45:35 and the new code path is tested on all non-atomic targets, so that shoudl be fine 14:46:14 so I take it from the discussion above that having a dashboard on atomic is a supported use case, we just don't cover it in our CI 14:47:22 pitti, or use a container with non-atomic 14:47:52 well, that seems a bit far-fetched, but sure 14:48:03 pitti, at the moment the dashboard isn't support on atomic 14:48:16 but it used to be 14:48:36 and will be again at some point 14:49:18 petervo: so should I look into the capability checking and fall back to writing the old file? 14:49:34 that would be my suggestion 14:49:38 ack, thanks 14:49:50 so my second topic is kind of moot now 14:50:06 and we're running out of time, so let's skip it 14:50:08 petervo, thanks, that was excellent! 14:50:44 i thought we used to update cockpit/ws durning test suite prepare 14:50:58 we only install the rpms 14:51:11 we don't update /containers/ scripts 14:51:44 and installing the rpms is not enough? 14:51:57 but I suppose it's useful to let our CI run against the old container until we release 234, to test the fallback path 14:52:10 no, need to change atomic-{install,run} for the new bind mount 14:52:31 these scripts aren't packaged (and they don't need to be) 14:53:21 oh i see, i think that's probably ok 14:54:54 (end of topic from my POV) 14:55:55 #topic Any other business 14:56:32 mvollmer, the udisks topic? 14:56:34 Son_Goku, do you want to bring up Mageia 6? 14:56:39 Son_Goku: I'm waiting for a new udisks release myself too (but not nearly as pressuring as for you); there was supposed to be a new one "soon'O 14:56:50 pitti: we're about to put out Mageia 6 sta2 14:57:10 and I'm having arguments with people over whether upgrading from udisks 2.1.8 to udisks 2.6.4 will be "safe" 14:57:23 because we want to release Mageia 6 in the upcoming weeks 14:57:34 (Mageia 6 is horribly overdue...) 14:57:36 it's backwards compatible, yes 14:58:04 in terms of API and ABI, or is there something I should be aware of? 14:58:05 but nevertheless a lot of changes of course, so don't do this right before a release (just for good practice, not because we know about regressions) 14:58:19 * Son_Goku shrugs 14:58:28 I'll probably wind up sticking it in a COPR repo and testing myself 14:58:43 it may wait until Mageia 7, but the situation is a complete mess to begin with 14:58:54 the integration tests are fairly good, though 14:59:00 it's quite likely it might wind up being a post-release upgrade at some point, but I'd like to get a handle on this 14:59:14 and it's been tested for backwards compat in Fedora (as "storaged") 14:59:21 yes, I'm aware of that :) 14:59:29 the problem is that from the outside looking in, no one has a clue about the upgrade path and how well of a drop-in it is 14:59:47 if you don't pacakge the new plugins (lvm etc.), it pretty well looks exactly the same 15:00:07 so it's "just a new upstream version" from that angle 15:00:13 right 15:00:50 so what's left on making udisks 2.6.4? 15:00:59 I'm not sure 15:01:10 (not working on it on a day to day basis) 15:03:42 hmm 15:03:44 basically, I don't want to be put in the bad situation of doing an ugly upgrade post-release 15:04:36 maybe with the 2.6.4 release, could some upgrader notes be put together for people coming from 2.1.8? 15:05:50 the version jump makes it seem scarier than it might actually be 15:06:06 yeah, there's a whole fork and re-merging in between, but from end to end it's not that scary ;) 15:06:15 I know the internals have changed quite a bit, but I don't know if that affects ABI 15:06:15 Son_Goku, pitti, what about wrapping up the meeting? 15:06:17 so the net result is essentially "add some new plugins for LVM" 15:06:20 +1 15:06:26 yeah 15:06:28 I'm okay with ending the meeting 15:06:38 my bit isn't particularly meeting relevant :) 15:06:40 sorry, I didn't understand that this is about udisks... :) 15:06:46 #endmeeting