cockpit_weekly_meeting_2016-09-19
LOGS
13:01:24 <andreasn1> #startmeeting Cockpit Weekly meeting 2016-09-19
13:01:24 <zodbot> Meeting started Mon Sep 19 13:01:24 2016 UTC.  The chair is andreasn1. Information about MeetBot at http://wiki.debian.org/MeetBot.
13:01:24 <zodbot> Useful Commands: #action #agreed #halp #info #idea #link #topic.
13:01:24 <zodbot> The meeting name has been set to 'cockpit_weekly_meeting_2016-09-19'
13:01:30 <andreasn1> .hello andreasn
13:01:31 <zodbot> andreasn1: andreasn 'Andreas Nilsson' <anilsson@redhat.com>
13:02:12 <dperpeet> .hello dperpeet
13:02:13 <zodbot> dperpeet: dperpeet 'None' <dperpeet@redhat.com>
13:02:18 <mvollmer> .hello mvo
13:02:18 <zodbot> mvollmer: mvo 'Marius Vollmer' <marius.vollmer@gmail.com>
13:02:34 <andreasn1> #topic agenda
13:02:48 <larsu> .hello larsu
13:02:49 <zodbot> larsu: larsu 'Lars Karlitski' <lars@karlitski.net>
13:04:34 <mvollmer> * what mvo is up to
13:05:03 <dperpeet> * subscriptions
13:05:13 <dperpeet> * virtual machines
13:06:34 <andreasn1> sounds good
13:06:48 <andreasn1> mvollmer: are you sure you want to call the agenda item that?
13:07:06 <mvollmer> hmm...
13:07:27 <andreasn1> I mean, it's probably a fine name
13:07:29 <mvollmer> * network polish
13:07:32 <andreasn1> ah
13:07:32 <mvollmer> :-)
13:07:45 <andreasn1> #topic Network polish
13:08:03 <mvollmer> ohh, the first, alright.
13:08:11 <mvollmer> sorry, not super concentrated...
13:08:13 <mvollmer> so
13:08:27 <mvollmer> i have started on the checkpoint/rollback stuff
13:08:39 <mvollmer> the NM guys have done that, pretty much for us, I guess, in 1.4
13:08:57 <andreasn1> what does checkpoint/rollback mean?
13:09:05 <mvollmer> so the idea is that before we make any changes, we take a snapshot, and after making the changes, we destroy the snashot
13:09:24 <andreasn1> ah, so if something break, you can change your mind?
13:09:30 <mvollmer> if, however, we lose connectivity before cancelling the checkpoint, NM will automatically roll back
13:09:51 <mvollmer> so we are protected from changes that kill connectivity to Cockpit
13:09:55 <andreasn1> ah, right
13:10:38 <dperpeet> that sounds great
13:10:48 <andreasn1> yeah, pretty cool stuff
13:10:51 <mvollmer> if it works as advertised, it's mostly busy work to find and change all places in Cockpit that need this
13:11:11 <dperpeet> would this be something we hide from users?
13:11:28 <mvollmer> i don't know...
13:11:35 <dperpeet> so not a snapshot functionality for lots of config steps for example
13:11:43 <mvollmer> if we break connectivity, they will notice, probably
13:11:46 <dperpeet> :)
13:11:48 <mvollmer> but it will come back after a while
13:11:57 <dperpeet> but I mean snapshot+rollback is something they shouldn't notice
13:12:08 <mvollmer> yeah, there is no change in the UI
13:12:11 <dperpeet> ok
13:12:13 <dperpeet> agreed
13:12:14 <mvollmer> it will just happen
13:12:19 <dperpeet> magic!
13:12:34 <mvollmer> but we might try to improve the experience in the period where connectivity is lost
13:12:53 <mvollmer> at least we can provide a better text
13:12:55 <andreasn1> so what kind of situations could this happen in?
13:13:09 <mvollmer> You hit Off on your main interface
13:13:22 <mvollmer> or you change the IP to something else
13:13:50 <mvollmer> so we might also want a way to say: make this change, and I take care to reconnect
13:14:27 <dperpeet> but what if I do something like disabling an interface
13:14:31 <dperpeet> and expect to be disconnected
13:14:36 <dperpeet> will that mean I can't use cockpit to do that anymore?
13:14:38 <mvollmer> yeah
13:14:52 <mvollmer> corect
13:15:05 <dperpeet> hm
13:15:14 <dperpeet> we need to be careful with that then
13:15:30 <dperpeet> but I would argue that we're talking about something unusual here
13:16:17 <andreasn1> this wouldn't cover if I change from whatever I got randomly from the DHCP server to something very specific, like 192.168.1.100, right?
13:16:36 <andreasn1> it won't go and connect to 192.168.1.100 automatically, or something like that?
13:17:00 <dperpeet> ha, good example andreasn1!
13:18:43 <andreasn1> but I think if the rollback can solve hitting Off on the main interface you're on, I think that's an excellent step in the right direction already
13:19:53 <mvollmer> let's see how well this works in practice
13:20:18 <andreasn1> yeah
13:20:33 <mvollmer> the best would be a warning: this change will disconnect you from the machine, really do it?
13:20:48 <dperpeet> of course, but can that be readily detected?
13:20:56 <dperpeet> I think we need to discuss that user story outside of the meeting
13:21:04 <dperpeet> there are so many ways to configure a network...
13:21:05 <mvollmer> it might be detected by doing the change and waiting for the rollback
13:21:06 <andreasn1> is there any good documentation or blog post about the rollback in NM?
13:21:10 <larsu> "might disconnect" could already help
13:21:19 <larsu> just to make the person doing the change rethink it one more time
13:21:36 <mvollmer> larsu, we would need to say that for any change, no?
13:21:39 <dperpeet> larsu, sounds good
13:21:49 <mvollmer> because we don't know what'll happen
13:21:53 <andreasn1> there is some good previous art from routers in this area I think
13:22:02 <dperpeet> only where we reasonably believe that will/could happen
13:22:15 <larsu> mvollmer: not sure :/ Could be a lot, indeed
13:22:15 <dperpeet> I think we need to play around with that somewhat
13:22:45 <dperpeet> easiest is to just use rollback
13:22:49 <mvollmer> I think it is unrealistic for anyone to predict which change is dangerous
13:23:06 <mvollmer> but we can react once it has happened
13:23:21 <dperpeet> sounds sane, the more I think about it
13:23:43 <mvollmer> "whoops, this change caused a disconnection and has been undone.  Press this button three times to do it anyway"
13:23:51 <dperpeet> ha
13:24:03 <andreasn1> "say this name in the mirror 3 times"
13:24:19 <github> [cockpit] cockpituous opened pull request #5064: Image refresh for continuous-atomic (master...refresh-continuous-atomic-2016-09-19) https://git.io/viMOs
13:24:36 <mvollmer> "install this proprietary plugin"
13:24:45 <mvollmer> not scary enough, I guess
13:24:50 <andreasn1> mvollmer: do you have a PR or branch up somewhere already?
13:24:55 <mvollmer> no
13:25:13 <mvollmer> but something else: https://github.com/cockpit-project/cockpit/pull/5053
13:25:21 <mvollmer> this is for showing unmanaged devices
13:26:00 <andreasn1> like wifi-devices and such?
13:26:22 <mvollmer> no, devices that have explicitly been taken away from NetworkManager by the admin
13:26:31 <mvollmer> this happens on Debian a lot, I think.
13:26:44 <mvollmer> but also elsewhere
13:26:57 <mvollmer> I think virt-manager takes its vlans away from NM
13:26:59 <andreasn1> oh, right, those things
13:27:18 <mvollmer> people were confused that they didn't see all interfaces
13:27:24 <andreasn1> so you can see them, but not change them?
13:27:34 <mvollmer> correct
13:27:41 <andreasn1> makes sense
13:29:32 <andreasn1> all right.
13:29:48 <andreasn1> next up
13:29:59 <andreasn1> #topic subscriptions
13:30:24 <dperpeet> pull request in question: https://github.com/cockpit-project/cockpit/pull/4715
13:30:48 <dperpeet> this ports the subscriptions page to react and updates the patterns used
13:31:02 <dperpeet> these include dialog behavior and the listing pattern for the subscriptions
13:31:28 <dperpeet> and extension of the tests
13:31:32 <dperpeet> this is ready for review
13:31:54 <dperpeet> I think part of the change is also that you can now unregister a system
13:32:18 <dperpeet> yes, that's new in the pull request :)
13:32:40 <andreasn1> did you want to figure out if we want to have the subscription status in the listing view in this PR, or did you mean that for a followup PR?
13:32:47 <andreasn1> I know you want this merged soon
13:32:55 <dperpeet> one thing that's not in there is an integration test for clicking cancel in the registration dialog
13:33:22 <dperpeet> considering we have more than 130 comments already, I think that would be a good follow-up
13:33:30 <dperpeet> since we probably need to tweak that a bit
13:33:34 <andreasn1> yeah
13:33:45 <andreasn1> lets get this closed as soon as possible
13:33:58 <dperpeet> larsu, do you want to look at the react code I wrote?
13:34:09 <dperpeet> I changed some callbacks to use events
13:34:18 <larsu> yeah I can have a look
13:34:19 <dperpeet> but not all
13:34:20 <andreasn1> I tried it a bit on Friday, but it was on a fedora system, so it doesn't list any subs
13:34:34 <larsu> right, that will be my problem as well :)
13:34:36 <dperpeet> andreasn1, if you use the test data, you can test this on a fedora system
13:34:40 <andreasn1> will try with the ones from the test images after the meeting
13:34:46 <andreasn1> right
13:35:06 <dperpeet> the process is described here: https://github.com/cockpit-project/cockpit/blob/master/test/verify/check-subscriptions#L28
13:35:32 <dperpeet> larsu, if more places should use events instead of callbacks, I'm happy to block merging until we've discussed
13:36:03 <larsu> that's all not public API, is it?
13:36:04 <dperpeet> but anything that adds features should probably go into a follow-up
13:36:12 <larsu> if not, I'm fine with doing that later as well
13:36:14 <dperpeet> exactly
13:36:24 <dperpeet> true, could be done
13:36:40 <dperpeet> but the code has seen a few rebases already
13:36:45 <dperpeet> there might be junk I forgot to remove :)
13:37:00 <larsu> hehe right
13:38:13 <dperpeet> end of topic
13:39:00 <andreasn1> nice
13:39:15 <andreasn1> #topic virtual machines
13:39:35 <andreasn1> mlibra have done great progress on this in #4434
13:40:36 <dperpeet> it's nice to see this getting closer to being merged
13:40:48 <dperpeet> we might want to look into using more of Cockpit's patterns there
13:40:54 <dperpeet> to make it easier to maintain
13:41:11 <dperpeet> unless that is to be embedded in other places that have different patterns
13:41:17 <andreasn1> yeah
13:41:49 <andreasn1> ui-wise it's shaping up really well. Some small issues left with the tab bar, but I think those should be easy to fix
13:42:12 <dperpeet> I would like to see larsu's listing view updates merged before we rework the virtual machines pr
13:42:30 <andreasn1> mlibra does that sound good to you?
13:42:44 <dperpeet> I can propose a patch to use our listing pattern
13:42:55 <dperpeet> if it's ok to add the dependency
13:43:11 <larsu> I think we should use it in as many places as possible
13:43:23 <larsu> consistency!
13:43:51 <dperpeet> otherwise we basically reinvent our listing view to fix the ui issues
13:44:12 <andreasn1> sounds good!
13:44:28 <mvollmer> i want to use the list view for storage also
13:45:06 <dperpeet> mvollmer, plans to rewrite storage in react?
13:45:14 <mvollmer> no plans yet
13:45:16 <dperpeet> ok
13:45:24 <dperpeet> well, we also have the jquery pattern
13:45:27 <mvollmer> but the current design can't grow anymore, I guess
13:45:40 <andreasn1> I still owe you a review on the new layout btw
13:45:43 <mvollmer> towards lvm+raid for example
13:45:48 <andreasn1> sorry for dragging my feet on that
13:45:51 <dperpeet> let's discuss that outside of the meeting
13:45:55 <mvollmer> yeah
13:46:00 <dperpeet> mvollmer, ping me before you rework the listing view
13:46:07 <dperpeet> react also works for rendering parts of a page
13:46:13 <mvollmer> yes, just a showerthought right now
13:47:00 <andreasn1> all right
13:47:05 <andreasn1> #topic open floor
13:49:00 <andreasn1> sounds like that was it
13:49:03 <andreasn1> #endmeeting