Skip to content
This repository has been archived by the owner on Jul 16, 2020. It is now read-only.

Weekly Meeting 2016 11 17

Kristen Carlson Accardi edited this page Nov 17, 2016 · 2 revisions

Agenda

##Minutes

###Full IRC Log

##Minutes

#ciao-project: weekly_meeting

Meeting started by kristenc at 17:00:39 UTC. The full logs are available at ciao-project/2016/ciao-project.2016-11-17-17.00.log.html .

Meeting summary

Meeting ended at 18:00:56 UTC.

Action Items

Action Items, by person

  • UNASSIGNED
    • (none)

People Present (lines said)

  • kristenc (94)
  • markus__ (52)
  • rbradford (27)
  • albertom (26)
  • tcpepper (20)
  • mcastelino (12)
  • ciaomtgbot (3)
  • btwarden (2)
  • carlosag (1)
  • mesiment (1)

Generated by MeetBot_ 0.1.4

.. _MeetBot: http://wiki.debian.org/MeetBot

###Full IRC Log

17:00:39 <kristenc> #startmeeting weekly_meeting
17:00:39 <ciaomtgbot> Meeting started Thu Nov 17 17:00:39 2016 UTC.  The chair is kristenc. Information about MeetBot at http://wiki.debian.org/MeetBot.
17:00:39 <ciaomtgbot> Useful Commands: #action #agreed #help #info #idea #link #topic.
17:00:39 <ciaomtgbot> The meeting name has been set to 'weekly_meeting'
17:00:45 <kristenc> #topic role call
17:00:49 <tcpepper> o/
17:00:51 <kristenc> o/
17:01:00 <mesiment> o/
17:01:12 <carlosag> o/
17:01:25 <rbradford> o
17:04:10 <markus__> o/
17:04:20 <btwarden> o/
17:05:34 <kristenc> #topic Opens
17:05:37 <kristenc> anyone?
17:06:32 <kristenc> ok, that was easy.
17:06:38 <kristenc> #topic Bug Triage
17:06:43 <kristenc> #link  https://github.com/01org/ciao/issues?utf8=0.000000E+002    17:07:36 <kristenc> looks like #816 is our first non prioritized bug.
17:08:11 <mcastelino> o/
17:08:19 <markus__> Yes.  So not causing a problem so far
17:08:35 <markus__> I was originally worried things would break in Single VM when we integrated keystone
17:08:42 <markus__> But now I don't think it will
17:08:53 <kristenc> markus__, what's the fix?
17:09:08 <markus__> Well really we need to be able to create a new tenant from inside the BAT tests
17:09:27 <rbradford> right and test that tenants can only access their own resources.
17:09:31 <kristenc> yes. once we get the gophercloud identity client we can do that.
17:09:34 <markus__> Did you say yesterday we're going to have an API for this soon
17:09:51 <markus__> And there's also the benefit that when you run the BAT tests on Single VM it won't delete all your instances
17:10:07 <markus__> that you had before you started the BAT tests
17:10:30 <markus__> So it's something that we definitely need to do, but we should be able to delay until the gophercloud apis are ready
17:10:39 <markus__> P2?
17:10:40 <kristenc> #link https://github.com/gophercloud/gophercloud/issues/157
17:11:01 <kristenc> this is the issue I filed for getting the identity support in keystone. There are a set of PRs for this.
17:11:09 <kristenc> one of them got merged already (a GET)
17:11:22 <kristenc> however, the others are outstanding and seem possibly stalled.
17:11:38 <kristenc> ok - will set this a p2 for now.
17:11:49 <kristenc> we should make a note in it that we are waiting on this support.
17:13:13 <kristenc> #821
17:13:16 <kristenc> p3?
17:14:09 <markus__> Sounds good.  Should be a quick fix
17:14:22 <tcpepper> a one line fix almost
17:14:43 <kristenc> #822 - what is the priority on this?
17:14:43 <tcpepper> I suppose there's an issue b/c it will be more than a one line conversation about the one line fix
17:15:57 * kristenc votes for p2 on 822
17:16:09 <kristenc> sounds important, but not critical.
17:16:23 <markus__> Yes, agreed.  I'd like to understand these better as well
17:16:23 <kristenc> mcastelino, you agree?
17:17:02 <mcastelino> yes it is a P2
17:17:23 <mcastelino> but we should continue to add more detail to the wiki on how to setup manually at least
17:17:41 <kristenc> 825 - this was a question. I was annoyed because I kept getting gocyclo errors on my unit tests, which seemed like extra work for no benefit.
17:17:42 <mcastelino> I added some detail from Tim's notes here https://github.com/01org/ciao/wiki/Single-Machine-Development-Environment#known-issues
17:17:53 <kristenc> thanks mcastelino.
17:18:17 <markus__> Does it make the tests easier to read if you split them up?
17:18:31 <markus__> Or is it really just irritating
17:18:41 <markus__> I think some of the other tools igore _test files
17:18:46 <markus__> like golint
17:18:55 <tcpepper> I've become a convert wrt cyclomatic complexity.  It helps me avoid bugs.
17:19:00 <kristenc> it's subjective I guess.
17:19:11 <kristenc> it is irritating for sure.
17:19:21 <kristenc> whether it makes my unit tests better - not sure.
17:19:42 <tcpepper> I suspect a gocyclo rated complex test is harder to maintain and debug and more likely to have false positives and false negatives
17:20:27 <kristenc> when I write a unit test for a function, I like to do a series of tests for all the possible flows in the function in one unit test.
17:20:45 <kristenc> that makes it easier for me - although you can certainly argue that's the wrong way to do it.
17:21:00 <kristenc> it's not that important, I can suck it up as they say :).
17:21:08 <kristenc> just wanted to ask the question.
17:21:35 <tcpepper> the unit could call a set of flow specific helpers
17:21:50 <mcastelino> kristenc, one thing that has helped me bring down complexity of tests is testify
17:22:14 <mcastelino> as it checks a lot of the assertions
17:22:25 <mcastelino> https://github.com/stretchr/testify
17:23:03 <kristenc> #826 albertom what is the priority on this?
17:23:13 <kristenc> mcastelino, thanks - I will check it out.
17:23:23 <markus__> We should probably vendor testify
17:23:35 <albertom> kristenc: ill say low
17:23:40 <albertom> is just a warning
17:23:41 <kristenc> p3?
17:23:53 <albertom> p3 sounds right
17:24:05 <mcastelino> markus__, yes.. our test dependencies are not vendored and the sometimes causes automation issues... like having travis pull them outside of go get
17:24:08 <tcpepper> I wonder on 826:
17:24:29 <kristenc> albertom, you can go as low as p4, but p4 is equivalent to "will probably never get done".
17:24:33 <tcpepper> could that hit our ciao certs too?  They set dns name.
17:25:05 <markus__> mcastelino: I'll enter a bug on this.
17:25:18 <albertom> naa i can do that but lets put in for 2017
17:25:55 <kristenc> albertom, we leave the milestone clear until we schedule it for a milestone.
17:26:01 <kristenc> so no milestone == later
17:26:29 <kristenc> 829.
17:26:45 <kristenc> we need this for k8s, and it will get done when we schedule that work.
17:26:52 <kristenc> p2? unless it's needed sooner?
17:27:24 <rbradford> hhm.
17:27:33 <rbradford> i feel like we should Do First this.
17:27:44 <kristenc> rbradford, why.
17:27:54 <rbradford> keep the momentum up on storage.
17:28:03 <kristenc> we can't do that.
17:28:32 <rbradford> why. because we're blocked on not being able to create tenants?
17:28:40 <kristenc> so - what i mean is - we have a set of stuff we said was important for this sprint.
17:28:49 <kristenc> we decided to drop k8s from that list for the most part.
17:28:56 <kristenc> so - k8s doesn't need it right away.
17:29:10 <kristenc> and - it seems to me that we should focus on completing the other things we said we'd do first.
17:29:24 <rbradford> okay.
17:29:34 <kristenc> unless there is a compelling need, I think it should wait till we reschedule the k8s in Q1.
17:29:42 <rbradford> tcpepper, are you going to be able to work around that on your cluster?
17:29:57 <tcpepper> rbradford: sure
17:30:05 <rbradford> cool then.
17:30:27 <rbradford> let's move on
17:31:08 <kristenc> #830 was requested by sameo.
17:31:39 <kristenc> tcpepper, the filtering he was wanting was not at the api server.
17:31:52 <kristenc> basically, he is concerned about the usability of the go templates.
17:32:07 <kristenc> and wants something else that is easier to use that lets you specify which info to spit out.
17:32:11 <kristenc> like docker --filter.
17:32:18 <markus__> We could also add json
17:32:23 <markus__> --json
17:32:39 <markus__> which would help in BAT tests
17:32:51 <markus__> right now I'm using templates to generate json in some of the tests
17:33:05 <tcpepper> kristenc: so you envision the API returning all info and the ciao-cli client filtering and repaginating it?
17:33:19 <kristenc> tcpepper, no - it's not about repaginating.
17:33:36 <kristenc> it's basically exactly like what the templates are doing, only without templates :)
17:34:12 <kristenc> markus__, I don't have a very clear idea what "usable" is because I don't use too many other tools.
17:34:30 <kristenc> and I think maybe if we want to do this, we should consult more with sameo to see what he had in mind.
17:34:35 <markus__> So I based the template stuff off existing go programs
17:34:38 <markus__> like go list
17:34:39 <markus__> and docker
17:35:01 <markus__> But go list and docker also allow you to request json
17:35:12 <kristenc> in all honestly, as much as the templates are frustrating me right now, I think we should give them a shot for a while. I would personally be in favor of making this a p3.
17:35:30 <markus__> So it's fairly normal in the go world to pass templates to exes
17:35:48 <kristenc> markus__, but our users aren't going to be go developers, are they?
17:36:12 <markus__> BUt docker users aren't go developers either
17:36:28 <tcpepper> kristenc: so you envision the API returning all info always with this --filter option and the ciao-cli client filtering?
17:36:53 <mcastelino> markus__, I think providing a list of examples for common automation use cases using templates will help ease the learning curve and you have doen some work there
17:37:05 <mcastelino> e.g. how to delete all instances of a certian type,
17:37:05 <markus__> 've already done this and it's merged
17:37:12 <kristenc> tcpepper, I envision it happening exactly as it happens now - you can already add querys and we do support pagination at the api. This request is for spitting out certain fields.
17:37:41 <markus__> Well there's no example for delete
17:38:00 <tcpepper> oh I see.  This is filter on data field.  Not filter on data.
17:38:07 <tcpepper> data field name not data field contents
17:38:36 <kristenc> so - p3 for this one?
17:39:07 <markus__> Fine for me.  I'm happy to add other ways to extract the info but want to keep the templates
17:39:15 <markus__> As they're useful in BAT
17:39:32 <kristenc> #831
17:40:01 <kristenc> this would require some rewrite of cli - I'd like to not even show the subcommands that can't be performed if you aren't a privileged user.
17:40:21 <rbradford> kristenc, that seems an unusual design
17:40:39 <kristenc> rbradford, what do you mean exactly?
17:40:57 <rbradford> kristenc, i don't know any other command line applications that work like that
17:41:24 <kristenc> I find it confusing personally to be presented with a list of options that I can do only to discover I can't do them.
17:41:52 <markus__> If we do this though we'd need to contact keystone before we could show any help wouldn't we?
17:42:06 <rbradford> kristenc, then perhaps they should be under a ciao-admin command if they're only for admins
17:42:11 <btwarden> What if they were marked with an asterisk or something to indicate that they're privileged?
17:42:20 <rbradford> markus__, good point and we only just fixed it not to do that!
17:42:26 <kristenc> markus__, yes. I already had to move this though because of the templates.
17:42:56 <kristenc> for example - in the new pools subcommand, if you are a privileged user you get to see the total and free ips in a pool.
17:43:05 <kristenc> if you are non-privileged, you get to only see the name.
17:43:13 <kristenc> so a different template has to be spit out for usage.
17:43:25 <markus__> Is it the same structure?
17:43:28 <kristenc> which means at the time of usage printing, I need to know the project the user belongs to.
17:43:28 <tcpepper> it is reaaaaaallly annoying to have long tens of seconds of time lags in ciao-cli today
17:43:38 <tcpepper> adding that to --help output would be reaaaaaaaaaaaaaaaaaaalllllllly annoying
17:44:03 <markus__> Can't we just comment after the fields saying this field is not available to non admin users
17:44:08 <markus__> in the help
17:44:14 <tcpepper> that's a common paradigm
17:44:26 <kristenc> markus__, ok, I can do that.
17:44:50 <markus__> At run time you could pass different structures to the template.Execute
17:45:04 <rbradford> maybe long term we need ciao-admin for admin and ciao for non admin
17:45:16 <markus__> So you'd get an error from the template processor if the user tried to access a field he was not allowed to
17:45:54 <markus__> Wow this templates do seem to be causing complications.  Sorry
17:46:13 <kristenc> I am disgruntled about the templates right now. I'm sure I'll get over it.
17:46:21 <markus__> Let me know if there is anything I can do to he;p
17:46:27 <markus__> help
17:46:29 <mcastelino> markus__, learning curve I guess... just like we did not use interfaces quite right in the begining
17:46:43 <kristenc> write my bat tests for me :). I spent a few hours looking at it and just got a headache.
17:47:06 <tcpepper> maybe we could do a mini-meeting on it
17:47:08 <kristenc> seriously - I'm sure I'll get over it - it will just take some time :).
17:47:11 <markus__> I can add the functions to the bat package if you like
17:47:18 <tcpepper> have markus__ walk us through how he'd implement this
17:47:28 <tcpepper> with us present to learn from him thinking/doing out loud
17:47:31 <tcpepper> I'd really value that
17:47:37 <markus__> Or you could write the funcion signatures and I could fill in the bodies
17:48:15 <markus__> Okay, I'll set up a meeting
17:48:40 <kristenc> ok - I think we're done with triage.
17:48:52 <kristenc> albertom, I assume you saw #841
17:49:02 <albertom> yup just have osme questions
17:49:10 <albertom> when you upload the image with ciao-cli
17:49:14 <albertom> where does it go?
17:49:24 <albertom> does it create an rbd volume ?
17:49:27 <rbradford> yes
17:49:37 <albertom> so there is no need to store the images in /var/lib/ciao/images anymore
17:49:40 <rbradford> yes
17:49:44 <albertom> and no need to createt he symlinks
17:49:47 <rbradford> yes
17:49:57 <albertom> ok, that simplifies things )
17:49:59 <albertom> :)
17:50:13 <albertom> so whats /var/lib/ciao/images for  ?
17:50:21 <rbradford> not used now.
17:50:46 <albertom> and what about the cnci image?
17:50:51 <albertom> where does it go?
17:50:54 <rbradford> but the ansible scripts need to be modified to use ciao-cli to upload the images.
17:51:00 <rbradford> including the cnci image.
17:51:06 <rbradford> cnci image is in rbd too
17:51:16 <albertom> oh
17:51:29 <kristenc> rbradford, I assume you've modified singlevm to show how it's done?
17:51:35 <kristenc> perhaps albertom can look at that?
17:51:35 <albertom> any special metadata ids or something i need to be aware of ?
17:51:56 <rbradford> kristenc, i made no modifications to that..mark was already uploading them via ciao-cli image
17:52:13 <albertom> rbradford: just comment that info/links int he issue and  i'll do the changes
17:52:13 <rbradford> albertom, i'd copy the code out of singlevm setup.sh
17:52:27 <rbradford> albertom, ok
17:52:34 <albertom> so what about https://github.com/01org/ciao/pull/839
17:52:38 <kristenc> cool - rbradford can you send him a link to the line number of setup.
17:52:46 <rbradford> yup
17:52:54 <albertom> should i keep mounting ?Var/lib/ciao/images with ceph ?
17:53:02 <albertom> in a shared fs
17:53:18 <kristenc> albertom, good - I was going to ask if we still needed #839
17:53:35 <rbradford> albertom, no, we should close that.
17:53:55 <albertom> so we are not using a shared cephfs not even in the future ?
17:54:02 <kristenc> albertom, we might actually.
17:54:10 <kristenc> we have talked about moving our logs to it.
17:54:15 <kristenc> and other persistent data.
17:54:21 <kristenc> but don't have a firm plan yet.
17:54:32 <albertom> one part of that commit is needed qwhich is copy ceph configuration to ciao nodes (needed to for rbd as well)
17:55:02 <albertom> the opther part that is mount cephfs is the one that i can discard... or change it to be another directory like logs (now that you mention)
17:55:44 <kristenc> albertom, well - we've talked about having  /var/lib/ciao be on cephfs - but we need to make per node directories which we don't do.
17:55:48 <kristenc> so it's a future thing.
17:56:17 <albertom> ok
17:56:48 <albertom> ill update the commits and keep the tasks to mount cephfs in hand so when its needed it can be done fast
17:57:03 <kristenc> ok, sounds good.
17:57:33 <markus__> mcastelino: I don't see how 'e.g. how to delete all instances of a certian type,' could be done easily without ciao-cli changes or some bash scripting
17:57:47 <kristenc> we have just enough time to talk about our one P1 bug.
17:57:49 <kristenc> https://github.com/01org/ciao/issues?q=is0X0P+0open+is0X0P+0issue+label0X0P+0bug+label0X0P+0P1
17:57:52 <markus__> The problem is ciao-cli instance delete can only delete one instance at a time
17:58:30 <markus__> I wonder whether this will be fixed by the ansible changes we discussed above
17:58:55 <kristenc> markus__, me too.
17:59:03 <markus__> i.e., #841
17:59:03 <kristenc> and maybe a duplicate of #841?
17:59:06 <markus__> I shoud think so
17:59:13 <mcastelino> markus__, I think extra bash scripts are fine... that particular limitation is a cli limitation not a template limitation
17:59:23 <markus__> right indeed
17:59:34 <markus__> But it makes it hard to provide an example
17:59:39 <kristenc> I'll make a note of such and when the PR is merged for 841 we can test and confirm.
18:00:12 <markus__> I'll try to figure it out.  If you send me a list of things you'd like examples for I'll update the README.md
18:00:52 <kristenc> ok, we are done.
Clone this wiki locally