14:01:49 <andreykurilin> #startmeeting Rally 14:01:50 <openstack> Meeting started Mon Feb 6 14:01:49 2017 UTC and is due to finish in 60 minutes. The chair is andreykurilin. Information about MeetBot at http://wiki.debian.org/MeetBot. 14:01:51 <openstack> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 14:01:53 <openstack> The meeting name has been set to 'rally' 14:02:47 <rallydev-bot2> [From Gitter] andreykurilin : @shihai1991 14:02:53 <andreykurilin> ok 14:03:15 <andreykurilin> it looks like our bot works 14:03:20 <rallydev-bot2> [From Gitter] tohin : hi 14:03:37 <astarove> hi 14:03:51 <rallydev-bot2> [From Gitter] ylobankov : hi-hi 14:03:54 <rallydev-bot2> [From Gitter] shihai1991 : hi 14:04:56 <andreykurilin> let's start from news 14:05:03 <andreykurilin> #topic news 14:05:20 <andreykurilin> we have 2 bots now :) 14:05:24 <andreykurilin> we need to merge them 14:05:34 <andreykurilin> I'll try to finish work on it this week 14:05:36 <andreykurilin> it should be simple 14:05:58 <andreykurilin> that is all about news 14:05:59 <andreykurilin> :) 14:06:16 <andreykurilin> #topic Rally Releases 14:06:55 <andreykurilin> As far as I remember there was no weekly meeting last week, so let's discuss status of releases now 14:07:09 <hai_shi> ok 14:07:42 <andreykurilin> After releasing 0.8.0, the critical bug was found 14:08:17 <andreykurilin> it is fixed in 0.8.1, but let's discuss how we can avoid such bugs in future 14:08:25 <andreykurilin> let me find links for you 14:09:04 <andreykurilin> https://review.openstack.org/#/c/426168/2/requirements.txt 14:09:32 <andreykurilin> it looks like string "7.0.0<=7.1.0" is a valid version for pip 14:09:54 <andreykurilin> so `python-novaclient>=6.0.0,!=7.0.0<=7.1.0` line is a valid for pip too 14:10:28 <andreykurilin> but.. 14:10:57 <andreykurilin> how can we check for such misspelling and typos? 14:11:02 <andreykurilin> any ideas? 14:11:42 <astudenov> a new hacking test with regexp ? 14:12:37 <andreykurilin> hacking tests check only python lines, but yes we can use some unit test with proper regexp 14:13:18 <andreykurilin> the question is if `<=` can be used in real world version strings? 14:15:06 <astudenov> i think no :) 14:15:11 <andreykurilin> ok) 14:15:22 <andreykurilin> I'll add a task for it to our trello board 14:16:00 <andreykurilin> #topic Rally Releases - next release 14:16:09 <andreykurilin> so let's discuss our plans 14:16:25 <andreykurilin> the last release took ~3 months 14:16:47 <andreykurilin> it is too long 14:17:04 <andreykurilin> so let's try to do not align to any feature 14:17:15 <andreykurilin> and make releases each 2-4 weeks 14:18:10 <andreykurilin> proposed date for 0.9.0 : 2017/02/21 14:18:50 <andreykurilin> oh... I'll travel at that week, so it will be a hard task to cut a release 14:19:08 <andreykurilin> let it be a week later - 2017/02/28 14:19:27 <andreykurilin> Thoughts? 14:19:38 <astarove> one month is fine 14:20:05 <astudenov> looks good to me 14:20:11 <hai_shi> no problem 14:20:15 <andreykurilin> cool 14:20:27 <andreykurilin> let's move to the next topic 14:20:29 <andreykurilin> hot topic:) 14:20:39 <andreykurilin> #topic Rally-as-a-Service 14:21:23 <andreykurilin> good news - we have at least two contributors who are interested in implementation of that feature 14:22:12 <andreykurilin> we already done a lot of preparation steps, so let's try finish this task soon 14:22:28 <andreykurilin> I'll try to write a spec in a day 14:22:39 <andreykurilin> but let discuss common items now 14:23:36 <andreykurilin> https://review.openstack.org/#/c/429289/ 14:24:36 <andreykurilin> that patch contains the thing which several folks try to do and which I want to avoid 14:24:58 <andreykurilin> creation of additional level for aaS - https://review.openstack.org/#/c/429289/4/rally/aas/server.py 14:24:59 <hai_shi> ok:( 14:26:04 <andreykurilin> hai_shi: maintaining two similar layers are redundant :) 14:26:19 <andreykurilin> we can do it at rally.api.API module 14:27:14 <hai_shi> Use decorator, I can remove the anthoer level 14:27:34 <andreykurilin> yes, let's remove it 14:27:36 <hai_shi> and only one layer 14:27:51 <hai_shi> ok, i will remove it. 14:28:38 <andreykurilin> json loading/dumping should be done automatically in the decorator 14:28:48 <hai_shi> so do we decide use flask as a web-framework? 14:29:00 <hai_shi> got it. 14:29:29 <andreykurilin> we should write RaaS in a way that allows to easily switch between frameworks 14:30:06 <andreykurilin> I would like to see flask for at least first stages 14:30:57 <hai_shi> ok, looks like the stage of verify's support. 14:32:08 <andreykurilin> Now we have several separate tasks for implementing RaaS 14:32:31 <andreykurilin> 1) serialization of all API return values 14:32:47 <andreykurilin> for get/list methods it should not be a hard task 14:33:32 <andreykurilin> 2) moving all features from CLI to API 14:33:57 <andreykurilin> I mean jinja templating for task configs, reports, etc 14:34:17 <andreykurilin> 3) writting RaaS code base itself 14:34:33 <yuli_s> hello 14:34:53 <andreykurilin> yuli_s: hi 14:34:59 <hai_shi> yuli_s: hi 14:35:17 <chenhb> hi 14:36:17 <andreykurilin> since we have 3 tasks, which can be done separately and even more, can be splitted by subtasks and we have several contributors, let's discuss who and what will do :) 14:36:46 <yuli_s> great 14:37:35 <yuli_s> regarding the json api 14:37:48 <yuli_s> a friend of mine forwarded me this link: https://github.com/OAI/OpenAPI-Specification 14:38:15 <chenhb> we can list tasks on trello board 14:38:18 <andreykurilin> oh... 14:38:21 <andreykurilin> chenhb: sure 14:38:31 <yuli_s> I have not studied this subject in depth 14:39:33 <andreykurilin> yuli_s: first of all, I want a separate page at http://rally.readthedocs.org/ wih API descripion. It can be done automatically from docstrings like we already done with CLI 14:39:45 <andreykurilin> Since we already have parsing for docstrings 14:39:56 <andreykurilin> we can reuse it for generation any kind of specification 14:40:03 <andreykurilin> in any format 14:40:40 <andreykurilin> at least at first stages 14:40:44 <yuli_s> ok 14:42:02 <andreykurilin> but in future we will need to describe each api call via jsonschema separately, so we will able to provide a validation of input data 14:43:41 <andreykurilin> ok, I'll create tasks at trello board https://trello.com/b/DoD8aeZy/rally in next hour, so we can start working on that feature 14:44:14 <andreykurilin> first tasks - make rally.api.API return dicts in all cases 14:44:27 <andreykurilin> :) 14:44:49 <andreykurilin> so we will able to reuse that class for all cases - direct python use and remote 14:45:04 <andreykurilin> cli will work too in both cases 14:45:11 <andreykurilin> anything to discuss here? 14:45:16 <yuli_s> I can take this 14:46:15 <chenhb> nothing from me now 14:46:37 <andreykurilin> yuli_s: I created 3 separated tasks at trello, like: `[api] Make return data of * API serializable` 14:46:47 <andreykurilin> go ahead and assign it to yourself 14:46:51 <yuli_s> ok 14:47:18 <andreykurilin> cool 14:47:21 <andreykurilin> thanks 14:48:20 <andreykurilin> does anyone want to work on porting the way how `reporting mechanism` works from verification component to task? 14:49:12 <andreykurilin> I'll create all tasks at trello... 14:49:25 <andreykurilin> anything else should be discussed now ? 14:50:15 <hai_shi> I have a idea unclearly 14:50:26 <andreykurilin> ? 14:50:38 <hai_shi> it is about ops 14:51:15 <hai_shi> our env of could is very complex. 14:51:41 <andreykurilin> please, tell more about an issue 14:51:51 <hai_shi> so after rally test finished, we hope could pull the service's log from env 14:52:19 <hai_shi> and machines' info 14:52:30 <andreykurilin> you mean openstack services logs? 14:52:35 <hai_shi> yeap 14:52:59 <hai_shi> We just think it is a nice idea. 14:54:20 <hai_shi> But i am not sure it has value to be done 14:54:38 <andreykurilin> yes, it is a nice idea, but it is hard to implement. each particular deployment have different security rules and so on 14:55:15 <hai_shi> I have finished it. But just a demo 14:55:22 <andreykurilin> please share it 14:55:46 <hai_shi> I can not got it from our company. Sorry. 14:55:53 <andreykurilin> np 14:56:11 <hai_shi> based on another soft 14:56:19 <hai_shi> and another apis 14:56:29 <hai_shi> like zabbix, elk and so on. 14:56:35 <andreykurilin> sure 14:56:43 <hai_shi> it is a smiple plugin. 14:57:48 <andreykurilin> In general, I think we should add some post-processing plugins. It will allow to add custom tabs to our reports. Such plugins will able to obtain the timestamps of task, go to logstash or similar service and display collected information with rally results 14:59:07 <hai_shi> wow, it is a good idea. 15:00:29 <andreykurilin> it should not be hard to implement (I mean an interface for post-processing plugins) 15:00:33 <andreykurilin> ok, we need to finish 15:00:41 <hai_shi> and we could control the tabs' status. 15:00:48 <andreykurilin> yes 15:00:51 <andreykurilin> see you all at out regular channels 15:00:54 <andreykurilin> #endmeeting