17:02:22 #startmeeting murano 17:02:23 Meeting started Tue Jun 17 17:02:22 2014 UTC and is due to finish in 60 minutes. The chair is ruhe. Information about MeetBot at http://wiki.debian.org/MeetBot. 17:02:24 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 17:02:27 The meeting name has been set to 'murano' 17:02:55 murano team, are you here? 17:03:03 o/ 17:03:03 ruhe, affirmitive 17:03:04 hello 17:03:05 hi 17:03:08 Hi 17:03:25 #link https://wiki.openstack.org/wiki/Meetings/MuranoAgenda#Agenda 17:03:26 hi 17:03:36 o/ 17:03:44 #topic action items review 17:03:56 i don't see any action items from the previous meeting 17:04:09 maybe we missed to record them? 17:04:52 ok. let's move to the next and the most important topic for today 17:04:56 #topic Discuss proposal to impose stricter testing requirements 17:05:02 #link https://blueprints.launchpad.net/murano/+spec/improve-testing 17:05:09 #link https://etherpad.openstack.org/p/murano-testing 17:05:31 did everyone get familiar with this ^ document? 17:06:13 sadly, i did not. looking at it now 17:06:38 o/ 17:06:54 so, the idea is to block all the feature development and focus and stabilistation, test coverage, CI stability. that'll require several steps 17:07:22 we can discuss them one by one 17:07:33 #topic murano-ci 17:07:42 just to interject - i think new features are ok as long as they're supported by tests 17:08:06 right 17:08:08 sjmc7: +1 17:08:27 sjmc7: +1 17:08:38 first step for murano-ci is to add real deployment tests and make it voting 17:08:52 agree, but it worth investing time to cover the existing features rather then add new ones 17:09:03 sergey murashov is working on these tests 17:10:06 dteselkin and IgorYozhikov are responsible for stability of underlying murano-ci infrastructure 17:10:40 what is missing from the CI tests now? 17:11:03 sjmc7: passing deployment test. deployment of a simple service 17:11:22 the question is: should we allow any major changes (even big bug-fixes) before murano-ci stuff is done? 17:11:29 ruhe - yes, i think we have to 17:11:53 unless the CI tests will be ready very soon 17:12:22 but, with a strong requirement to have sufficient UT coverage. right? 17:12:29 yes 17:12:35 i don't want to stall development 17:12:36 hi 17:12:55 i want to improve quality as we move forward 17:13:00 any objections on this plan? 17:13:34 ruhe, still no idea what to do with dashboard 17:13:48 tsufiev: it deserves another topic 17:13:54 ok 17:14:11 #agreed make murano-ci stable. while we're working on that we'll allow changes, but with a strong requirement to have sufficient UT coverage 17:14:48 also i wanted to discuss our plan to improve UT coverage of existing code 17:14:54 #topic murano UT coverage 17:15:05 please take a look at line 26 17:15:20 of? 17:15:33 sjmc7, i suppose https://etherpad.openstack.org/p/murano-testing 17:15:35 of https://etherpad.openstack.org/p/murano-testing 17:15:45 it's 28 now :0 17:16:00 Improve UT coverage. We can split components 17:16:17 ok. i'm happy to take the API section 17:16:31 but in my experience it's much better to add tests for bug fixes/changes than to retroactively write them 17:16:49 sjmc7: great. please add your name to the corresponding section 17:17:01 sjmc7: right, be we still need a base to add new tests 17:17:12 yup, agreed 17:17:23 i can take the client 17:17:28 you've added base for API tests, but we miss engine,pl and db stuff 17:17:33 yep 17:17:49 katyafervent2: great, please add your name to the corresponding section 17:18:26 are there any other areas of stackforge/murano we didn't cover yet? 17:18:36 nope 17:18:49 #topic testing of murano-agent 17:18:50 dashboard? 17:19:03 dashboard's further down 17:19:34 apparently we don't have jenkins automation for murano-agent 17:20:05 i'll take an AI to add a patch to infra to enable py26,27,pep8,etc jobs for the agent 17:20:46 also, i'd like to propose an idea to build an image with the agent and test it with our deployemnt tests on each patch-set in the agent 17:21:32 dteselkin, IgorYozhikov, tnurlygayanov: would it be feasible? 17:22:24 that's more of a long-term item for the testing plan 17:22:28 I believe yes, for example, we could have predefined simple EP for agent tests 17:22:42 EP-execution plan 17:22:43 well, it's possible to prepare a base image and install only agent - it looks doable 17:23:17 ok. i've added you both to this action item 17:23:22 ok 17:23:29 anythin else on murano-agent? 17:23:59 when do we expect to have cloud-init installable agent? 17:24:44 ativelkov: not in j2 definitely 17:24:53 i've done it, but only from a build i put in swift 17:25:12 what about j in general? 17:25:21 at 1st we should decide which distros we will support or any another way for install 17:25:35 ativelkov: first step is to figure out how this should be done 17:26:07 i mean, we need to have a good blueprint for this 17:26:10 this seems like a longer-term goal then 17:26:17 Yep 17:26:59 I just want to make sure that we will not have to rewite the UTs when we make the agent installable 17:27:46 ativelkov: i don't think we'll need to rewrite a lot of things. cloud-installable agent is a different feature, it deserves it's own set of tests 17:28:12 ok 17:28:20 #topic python-muranoclient testing 17:28:53 katyafervent2 already signed up to setup a base for UT for the client 17:30:02 also, sergey murashov is writing the deployment tests using the client, which will give us a good coverage of the client too 17:30:32 basically, we will have the same job to test changes in murano and in client 17:30:48 i have a review has first tests in the client 17:31:08 katyafervent2: which means that your patch has a good chance to pass the review :) 17:31:22 I prepared a suite of functional tests for python-muranoclient 17:32:27 I guess I'll take unit testing and it shiuld be different, right 17:32:56 yes 17:33:10 akuznetsova_: those tests might not be needed if we find a way to run deployment tests on changes in python-muranoclient. let's discuss that in more details later with sergey murashov and tnurlygayanov 17:33:11 ok lets move on 17:33:29 #topic murano-dashboard 17:33:50 ruhe: what about python-muranoclient + dashboard ? 17:34:26 i'm not sure how much coverage we can reasonable do with unit tests for the dashboard 17:34:35 there are some things that can realistically be unit tested 17:34:48 akuznetsova_: good question. maybe we can run selenium tests against changes in python-muranoclient 17:35:17 yeah - i think those tests will be much more useful 17:35:40 ruhe, perhaps there had to be an AI for me to investigate how unit testing is done in Django 17:35:50 we should see what we can add. even horizon seems to have pretty poor test coverage 17:36:32 i guess, Django developers should have invented some approach to unit tests 17:36:32 tsufiev - drupalmonkey has been looking at this a little bit, you could discuss with him 17:36:40 yes, django has a good test framework 17:37:00 the question i had for everyone, especially to people who work on the dashboard - what should we do with the dashboard/selenium tests? that's reflected in the etherpad 17:37:05 sjmc7, is he here? 17:37:21 yes tsufiev. i can be part of that conversaton too 17:37:37 ruhe - i'd like ot make those reliable and voting 17:37:47 ruhe, selenium tests do their job now 17:38:12 sjmc7, +1 17:38:17 ruhe: i think we should leave them, but i will try to make easier as possible 17:39:00 sjmc7, then perhaps we could start with writing some tests using that Django testing framework? 17:39:04 yup 17:39:23 but again, i don't know how useful it will be because horizon's such a thin layer on top of the service APIs 17:39:24 so, we keep the tests, we make this job voting (or at least treat it as voting). person sending a patch to the dashboard is responsible to make the tests pass. is that correct? 17:39:41 yes ruhe, that makes sense to me 17:40:06 i think 'treat as voting' is sensible 17:40:12 sjmc7, what's true for horizon, not entirely true for muranodashboard 17:40:35 sjmc7, i mean, in some places it's thicker than horizon 17:40:41 tsufiev: btully: did you have a chance to run/debug selenium tests locally? 17:41:05 do we need to have some dev docs to explain how to run these tests? 17:41:09 ruhe, no, never asked myself that question :) 17:41:18 i did not, no. if there's documentation i'd be happy to start doing that 17:41:24 but definitely such docs would be very helpful 17:41:57 we have one https://wiki.openstack.org/wiki/Murano/TestsDocumentation but it is outdated 17:42:03 it's not trivial running those tests locally 17:42:06 I will update it 17:42:10 #action akuznetsova_ create a document explaining how to run, debug and fix selenium tests 17:42:52 perhaps the best place to place these docs would be developer documentation we keep under project 'murano' and publish to murano.readthedocs.org 17:43:06 ok 17:43:27 #agreed we keep selenium tests, make them voting eventually. person sending a patch to the dashboard is responsible to make the tests pass 17:43:49 now to the general testing approach 17:44:02 #topic general testing policy 17:44:11 that' t the top part of the document 17:44:13 i've used selenium in the past along with phpunit for automated testing. once i get up to speed on how murano is using it (along with the python syntax) i'd be happy to help with that side of things 17:45:12 we've said several times that a patch should have sufficient test coverage, but different people might understand this differently 17:45:34 sjmc7 put these requirements on paper 17:45:59 that's line #8 of https://etherpad.openstack.org/p/murano-testing 17:46:20 Tests verifying correct behavior 17:46:21 Tests verifying exceptional behavior 17:46:21 Sufficient assertions to ensure that tests are accurately assessing functionality 17:46:45 any additions or comments? 17:47:55 ok 17:47:59 ruhe, tests veryfying correct behaviour should be mandatory 17:48:24 but there are 1000+ ways of making an error 17:48:57 so test the ones you can think of, and when one you didn't pops up in production, test it and then fix it 17:49:39 sjmc7: that's a good motto 17:50:09 any other ideas/suggestion for this big topic? 17:50:37 #topic Other plans for juno-2 17:50:58 any other plans, blueprints, ideas for juno-2? 17:51:11 #link https://launchpad.net/murano/+milestone/juno-2 17:51:11 we may have some for next week, not right now 17:51:55 from a UI perspective, on the environments page when there are multiple envs 17:52:15 there are checboxes added to each row 17:52:33 but you can't act on multiple envs at the same time 17:52:43 so checkboxes should be removed 17:52:52 (not sure if that's been captured previously) 17:53:10 I would prefer to return a way of deleting multiple envs 17:53:10 btully, sometimes they help to delete multiple environments at once 17:53:20 btully: it was, we had multiple deletion 17:53:29 tsufiev: it does now work now. We had it before and need to return 17:53:33 right but you can't delete multiple 17:53:37 ahh ok 17:53:44 ativelkov, there was a discussion with stanlagun about that 17:54:37 so either add back ability to delete multiple or remove checkmarks :) 17:54:41 he said that should not be available, because environment removal can be very complex operation, thus possibly making impossible to toss them into batch 17:54:41 I was against 17:55:48 This needs a separate discussion 17:55:54 we should make a separate etherpad for that :) 17:56:03 It is very expensive operations in terms on how many things you can accidentally loose. Especially data on database servers etc 17:56:23 slagun: well, heat is able to delete stacks in a batch 17:56:55 so, who's going to create an etherpad? where should we discuss next step? irc, ML? 17:56:58 heat is a low level tool. We are building user-friendly tool 17:57:35 Environments are suppoaed to be isolated 17:57:37 slagun, that makes sense if you're going to ask a lot of questions during environment removal 17:57:48 is it really the case? 17:57:48 so, I don't see any problems if we delete more then one at once 17:57:51 separate discussion! :) 17:58:50 agree :) 17:58:57 +1 17:59:01 we are almost out of time anyway 17:59:03 btully: please bring this topic to discussion in an etherpad or ML thread 17:59:36 let's end this meeting before we run out of time. thanks everyone! 17:59:43 thanks! 17:59:45 #endmeeting