13:00:25 #startmeeting 13:00:25 Meeting started Mon Sep 14 13:00:25 2015 UTC. The chair is mvollmer. Information about MeetBot at http://wiki.debian.org/MeetBot. 13:00:25 Useful Commands: #action #agreed #halp #info #idea #link #topic. 13:00:36 .hello mvo 13:00:37 mvollmer: mvo 'Marius Vollmer' 13:00:44 yay 13:00:48 .hello andreasn 13:00:50 andreasn: andreasn 'Andreas Nilsson' 13:01:14 .hello dperpeet 13:01:15 dperpeet: dperpeet 'Dominik Perpeet' 13:01:23 #topic Agenda 13:01:32 * Fedora 23 and Rawhide testing 13:01:44 * test: vm boot optimization 13:02:24 * Continuous delivery updates and architecture 13:02:36 * Dashboard work 13:02:39 * Moving things out of the shell (cont.) 13:04:21 Ok, let's start. 13:04:29 #topic Fedora 23 and Rawhide testing 13:04:40 So i have been poking at that again 13:05:06 and I think we are close to the point where we can look at the real test failures. 13:05:26 i was going to give up on Rawhide... 13:05:38 but I was doing the package installation wrong. 13:05:48 so now I think we can usefully test Rawhide 13:06:05 current 'blocker': docker pull hangs with some of our images. 13:06:16 in f23 13:06:34 did andreasn reproduce that error? 13:06:48 anyway, I think we should merge the two pull requests and then check what happens with the periodic master checks. 13:06:48 I was unable to with 1.7.1 13:07:00 mvollmer, merging sounds good 13:07:02 and then I was unable to install 1.8.1 on F23 13:07:02 subin is trying to reproduce 13:07:12 mvollmer, can you link the two requests you mean? 13:07:16 yep 13:07:35 #link https://github.com/cockpit-project/cockpit/pull/2541 13:07:52 #link https://github.com/cockpit-project/cockpit/pull/2543 13:08:09 I can get on those 13:08:12 thanks for the links 13:08:12 Actually, Rawhide is being tested for some time already 13:08:25 stefw, do you mind if I review? 13:08:28 and it now even runs the tests 13:08:33 yeah for sure, go ahead 13:08:56 i guess we need to get better at following up on issues that are found during the master checks 13:09:11 at least I treat them as "yeah, always red". 13:09:37 I had some thoughts about that, but I'll be better prepared to present them next week 13:09:37 maybe we could report more details: "tests could not start" 13:09:45 "2 out of 300 tests failed" 13:10:32 or "3 more tests failed since last week, and 2 pass now" 13:10:34 I was thinking of improving the hubbot output a bit 13:11:03 an additional html output, split the log into sections 13:11:06 and summarize 13:11:18 or have some out-of-tests database that marks some tests as "known to fail" 13:11:35 should we start a wiki page with how test output should look? 13:11:39 .hello fabiand 13:11:40 mvollmer, yup 13:11:40 fabiand: fabiand 'Fabian Deutsch' 13:11:59 we should make sure this stuff works distributed though 13:12:04 so that multiple machines can work together on the tests 13:12:07 right 13:12:16 i'll talk about this during a later agenda point 13:12:22 stefw, you did some work on TAP earlier on, right? 13:12:26 ok. 13:12:36 yeah, TAP is a good way to bring them together 13:12:58 even if we store the output, and have the UI process it all as it displays it 13:13:07 yep 13:13:58 #action dperpeet review 2541 and 2543 13:14:13 ok, next? 13:14:19 yup 13:14:39 #topic vm boot optimization 13:15:11 while working on moving some of our qemu calls to libvirt, I noticed that our virtual machines have a grub boot delay 13:15:27 while 5 seconds are pretty brief, we have to consider that virtual machines boot for every single test 13:15:43 I believe we have >30 tests right now 13:15:49 we can kill the delay during .bootstrap 13:15:51 no? 13:15:54 so that's a significant amount of time 13:15:59 yes, I think it would be worth testing that 13:16:15 the waiting happens in parallel 13:16:17 but yeah 13:16:29 yeah, you can divide by 4 13:17:00 the downside is, that if you want to test a vm, it's more difficult to get into grub 13:17:08 e.g. vm-run 13:17:17 can we get in at all right now? 13:17:21 GRUB_TIMEOUT=5 13:17:24 in /etc/default/grub 13:17:35 and rebuild grub 13:17:40 mvollmer, with libvirt, vm-run is fully interactive 13:17:47 ah, I see. 13:17:48 including grub menu 13:18:18 stefw, do you want to do this or should I, after libvirt changes have landed? 13:18:20 or tack it on? 13:18:39 it's a separate thing 13:18:48 i don't even think there will be a merge conflict 13:19:05 we have to increase version numbers on all images for this 13:19:09 as for the libvirt changes 13:19:29 yup, that happened like 20 times while you were away 13:19:45 ok, fair enough 13:20:44 one of us can do it then and we'll merge when we merge 13:21:13 so the libvirt changes replace the calls to qemu? 13:21:30 then we only need to get rid of the libguestfs stuff, right? 13:21:47 yeah, that should move to bootstrap 13:21:51 which uses virt-builder 13:21:52 yes 13:21:54 which uses libguestfs 13:22:10 yes, of course 13:22:28 but we keep the setup scripts? 13:22:39 or do we also move them to virt-builder? 13:22:43 maybe later 13:22:56 the setup scripts have to be keept 13:23:01 I think we should keep those 13:23:03 because virt-builder runs with strange network, disks, and so on 13:23:07 would be nice to refacter them a bit 13:23:10 it's not possible to combine the bootstrap and setup scripts 13:23:13 although we can clean them up 13:23:45 avoid dupliction, mostly 13:23:55 *duplication 13:24:06 right 13:24:20 I already refactored creation and package installation out of testvm 13:24:21 #link https://github.com/dperpeet/cockpit/tree/test_libvirt 13:24:35 nice 13:24:55 next? 13:24:58 yes 13:24:59 yup 13:25:05 #topic Continuous delivery updates and architecture 13:26:19 peter and I have cleaned up the continuous delivery scripts further, and put them into two docker containers 13:26:26 docker containers are great for "but it works on my machine" style development 13:26:51 https://github.com/cockpit-project/cockpituous 13:27:13 pushed some of the latest updates there 13:27:18 basically there are different components working together 13:27:31 one of which is the automated release scripts 13:27:42 each of these pieces run in a container, and have various things mounted into the container, such as credentials 13:27:59 the second component i've worked on is a bip relay 13:28:13 than allows IRC access to the other components, and logging to this channel #cockpit 13:28:27 i'd like to find or come up with a logger that allows us to gather logs from these various pieces 13:28:42 very likely piped in over ssh, and then displayed using a simple web page 13:29:11 the idea being that a component (such as the release scripts) can send a logging link to IRC when it starts and all the output goes to that link 13:29:31 as we talked about earlier, i'd like to get to the point where our integration tests are also run distributed 13:29:47 how about appending a github gist? 13:29:52 with each os being tested on a separate machine, to spread the load 13:29:55 we can use authentication tokens for that 13:30:08 and we have the api code 13:30:14 even works via shell 13:30:17 and so when the integration tests are distributed, the similar code would be used for logging and status of the tests. 13:30:30 in other words the logging component brings together all of these things publically 13:30:37 Why not use fpaste.org or gist.github.com? 13:30:40 for two reasons: 13:31:00 1) with most paste services you cannot get a link before it's finished being posted. 13:31:18 2) no custom ui, such as sending updates to the browser, or making sense of TAP output (see discussion earlier in this thread) 13:31:25 Also, why not use Jenkins? 13:31:31 well ... we can use jenkins as a runner 13:31:40 if someone would let us do things like start VMs on jenkins 13:31:45 but as far as public UI and logging output 13:31:48 so you want the public display to follow the logs as they are being created? 13:31:58 public jenkins instances are not available for us to use. 13:32:04 dperpeet, yes, that would be nice 13:32:26 but anyway, the basic point here ... is that all of this ends up pretty distributed 13:32:36 with some frontend bits available to the internet 13:32:48 and all the various other parts running distributed in various places 13:32:59 it would be pretty simple to set up a database on a server 13:33:11 sure, if that becomes necessary 13:33:17 log creators could just pipe there 13:33:31 line by line if necessary, and decide on their own when to flush 13:33:32 any of these distributed pieces can grow if there's a need 13:33:35 but obviously we start very simple 13:33:45 such as just having the logging stuff log to a directory 13:33:55 that is web listable 13:34:10 that's good enough for the continuous delivery (ie: rolling releases) use case we have right now. 13:34:44 anyway ... so the reason I bring thisup 13:35:23 is because we need to make sure that the automated stuff we're planning ... can eventually work in a distributed fashin 13:35:25 fashion 13:35:46 good job on consolidating those scripts and automating the process somewhat, stefw and petervo 13:37:40 thanks 13:37:43 that's it on this point 13:37:55 ok, good stuff 13:38:16 #topic Dashboard work 13:38:23 The dashboard fails a lot of tests 13:38:39 so i've been working today to simplify how it works 13:38:46 and how the navbar interacts with the dashboard 13:38:55 hopefully it'll be more predictable 13:39:42 and i'm going to try to finish off the last issue here: 13:39:44 is there a PR yet? 13:39:51 https://trello.com/c/59Ajm8lz/53-multiple-dashboards 13:39:56 petervo, no not yet 13:40:04 as well as move the dashboard into its own component. 13:40:15 and this work is why i haven't merged mvollmer's plot work ... which is ready to go 13:40:30 but seems to exacerbate the multi machine dashboard test failures 13:40:42 right, I thought I broke it 13:40:49 i don't think so 13:41:17 at least I have made the failure reproducible. :) 13:41:28 yes, mostly 13:42:07 i would also like to then go further and do more dashboard work 13:42:16 rework the setup dialog, to support accessing servers as other users 13:42:23 fix up its ui, and so on 13:42:28 sounds good 13:42:32 right, that would be awesome 13:42:34 http://stef.thewalter.net/installer-anti-pattern.html 13:42:47 currently it has the wizard anti-pattern 13:42:50 yes 13:43:07 hopefully i'll be able to do this as Atomic work, and we can have time allocated for it 13:43:56 that's it for that topic 13:44:00 alright 13:44:13 #topic Moving things out of the shell (cont.) 13:44:31 the work on the graphs is mostly done 13:44:51 and it allows us to delete cockpit-wrapper completely 13:45:08 which is amazing :) 13:45:11 the "multi instance" plots are now quite ugly 13:45:26 actually, all the plots are ugly 13:45:34 because they are small and have tick labels 13:45:48 what's the source of the regression? 13:45:52 and because they are just ugly 13:46:04 is this on master? 13:46:06 previously they didn't have any tick labels 13:46:11 andreasn, no, not yet. 13:46:37 I'm happy to check out the branch and see if there is anything that can be unuglified 13:46:39 they only had a grid, which looked clean, and was quite a it larger also 13:47:04 yes, that would be nice 13:47:16 maybe we need to make them bigger? 13:47:20 what's the issue number? 13:47:20 anyway 13:47:45 andreasn, https://github.com/cockpit-project/cockpit/pull/2741 13:47:50 #link https://github.com/cockpit-project/cockpit/pull/2741 13:47:52 thanks 13:48:15 I also think that the server page with the four graphs is quite ugly... 13:48:41 on master or on this branch? 13:48:46 on master 13:49:38 there is some new style guides on graphs in patternfly, would be nice to adapt to those 13:49:43 they look less busy 13:49:59 we need to rework our dashboards 13:50:03 to match the patternfly dashboards 13:50:15 i think all three would be good, no? 13:50:21 yeah 13:50:21 https://www.patternfly.org/patterns/dashboard-layout/ 13:52:05 yeah, these looks pretty clean 13:52:16 do we use https://www.patternfly.org/patterns/sparkline/ ? 13:52:55 no, I think those are newer than our graphs 13:53:14 the page is like a month old 13:53:17 I wonder if using that would incur performance issues 13:53:46 we would have to compare the update mechanics, I think 13:53:50 yeah 13:54:15 did mvollner get disconnected? 13:54:40 what's the next topic? 13:55:12 this was the last topic 13:55:19 next? 13:55:44 open floor I guess 13:55:46 #topic open floor 13:56:28 I have SSH key designs on paper now, will create proper digital mockups and have them ready in a bit 13:56:35 great 13:57:18 the selinux mockups are still in flux, but getting there 13:57:48 andreasn, i'd like to talk a bit about the SSH key designs 13:57:58 good, me too :) 13:58:00 and make sure we cover the "my current credentials" use case 13:58:07 including the dumb "Drop extra privileges" 13:58:14 finally we can end up solving that 13:58:44 that menu entry is confusing if you don't know the implementation :) 13:58:56 whoops, network went down here 13:59:00 it's anti-sudo :) 13:59:10 right, so if we move all of these things into a dialog 13:59:19 "Login credentials" or something like that 13:59:29 that's a nice label 13:59:40 we could have [x] Use my credentials to escalate privileges automatically 14:00:04 "The following keys to authenticate against other servers" 14:00:19 something along those lines? 14:00:38 why not label it just "credentials"? 14:00:54 so the dialog will list the private keys, right? 14:01:29 we need a way to load keys too 14:01:47 change passwords? 14:01:47 and generate new ones? 14:01:57 yep, what I have on my list is: 14:02:05 * change password of individual key 14:02:10 * load new keys 14:02:19 * copy out public key of individual key 14:02:32 * turn keys on and off 14:02:39 * show fingerprint 14:03:02 what about: 14:03:02 is loading a new key the same as creating a new key? 14:03:04 * copy out private key 14:03:09 * generate new key 14:03:19 maybe loading / generating could be the same dialog 14:03:33 hm, we're already in a dialog? 14:03:40 it isn't the same 14:03:40 yes, in a dialog, as previously discussed 14:03:49 but andreasn, generating a key can be done for any user 14:03:56 could be in the users UI ... to be honest 14:04:03 I'd say generating one is a separate feature, but extra scope 14:04:17 but this would be a good place to have a generate button 14:04:25 because otherwise people have to run around the ui to get the task done 14:04:49 yep 14:05:12 ok 14:05:45 there is also FreeIPA that can distribute keys, no? 14:08:43 anyway, I think I can get the escalate priviledges and the ssh keys into the same dialog 14:08:53 hopefully at least 14:09:14 anything more for the meeting? 14:09:39 nope 14:09:49 #endmeeting