20:01:09 <redrobot> #startmeeting barbican
20:01:10 <openstack> Meeting started Mon Jul 13 20:01:09 2015 UTC and is due to finish in 60 minutes.  The chair is redrobot. Information about MeetBot at http://wiki.debian.org/MeetBot.
20:01:11 <openstack> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote.
20:01:14 <openstack> The meeting name has been set to 'barbican'
20:01:20 <redrobot> #topic Roll Call
20:01:25 <igueths> o/
20:01:28 <alee> o/
20:01:29 <rellerreller> o/
20:01:29 <elmiko> hi
20:01:49 <kfarr> o/
20:01:49 <redrobot> Also, sorry I've been AFK for the last few days
20:02:13 <chellygel> (*^▽^)/
20:02:20 <redrobot> I've been moving apartments, but we're getting close to normalcy
20:02:56 <dave-mccowan> \o/
20:03:05 <redrobot> As usual the agenda can be found here:
20:03:09 <redrobot> #link https://wiki.openstack.org/wiki/Meetings/Barbican#Agenda
20:03:47 <jkf> Greetings
20:03:56 <silos1> o/
20:03:56 <redrobot> jkf o/
20:04:25 <jvrbanac> o/
20:04:26 <redrobot> #topic Action Items from the last meeting
20:04:30 <redrobot> #link http://eavesdrop.openstack.org/meetings/barbican/2015/barbican.2015-07-06-20.00.html
20:04:42 <redrobot> First one is jaosorior to backport the DogTag gate fixes into stable/kilo
20:04:55 <redrobot> jaosorior ping?
20:05:21 <woodster_> o/
20:05:24 <redrobot> I don't think jaosorior is here
20:05:32 <redrobot> we can punt to next week
20:05:38 <redrobot> #action jaosorior to backport the DogTag gate fixes into stable/kilo
20:05:43 <alee> redrobot, not sure if he's still awake .. he mentioned that he opened a bug and was going to look at it this week.
20:05:50 <alee> redrobot, I'll remind him
20:06:01 <redrobot> alee awesome, thanks
20:06:09 <redrobot> next action item was for me
20:06:10 <redrobot> Next action item redrobot to ping woodster about writing a spec for the additional acl role
20:06:27 <redrobot> which I'm going to do now
20:06:55 <redrobot> woodster_ we talked about the additional ACL role, and it was suggested that it would be good to have a blueprint for the change.
20:07:12 <woodster_> that sounds good
20:07:18 <woodster_> when is the deadline for those again?
20:07:58 <redrobot> Deadline for Liberty BPs is the liberty-2 milestone
20:08:12 <redrobot> so you have until the end of July
20:08:15 <redrobot> #link https://wiki.openstack.org/wiki/Liberty_Release_Schedule
20:08:29 <woodster_> redrobot: thanks
20:08:41 <jaosorior> redrobot: I'm half here
20:09:12 <alee> jaosorior, I told redrobot I'd remind you to backport the dogtag gate fixes ..
20:09:29 <alee> jaosorior, you've been reminded :)
20:09:42 <jaosorior> alee, redrobot: Yeah, I'll take time this week to do those backports
20:09:47 <woodster_> jaosorior: just past the ballmer peak?
20:09:58 <alee> cool beans
20:10:03 <redrobot> awesome
20:10:09 <redrobot> ok, moving on to the agenda items
20:10:25 <redrobot> #topic Magnum integration
20:10:40 <redrobot> There was a thread about this last week on the ML
20:11:28 <redrobot> Magnum wants to enable TLS inside their project, and will be using Barbican to generate and store x.509 certificates.
20:12:09 <redrobot> Their team was having some trouble provisioning certs out of the box with our current setup, so I have it on my to-do list to look into that.
20:12:09 <alee> redrobot, this is something they want to do on setup only, or on a regular basis?
20:13:05 <redrobot> alee I'm not 100% on all the details, but I think they'll be provisioning new certs when new nodes spin up.
20:13:22 <alee> redrobot, ok
20:15:28 <redrobot> If anyone is interested in the details, you can find links here:
20:15:30 <redrobot> #link http://lists.openstack.org/pipermail/openstack-dev/2015-July/068993.html
20:15:56 <alee> redrobot, I'll look into it too and respond on the trhread as well.
20:16:30 <jaosorior> woodster_: Not yet :P
20:16:54 <redrobot> any other questions/comments about Magnum integration?
20:17:06 <alee> redrobot, do they have an irc channel?
20:17:16 <redrobot> alee #openstack-containers
20:17:24 <alee> redrobot, ok
20:17:42 <redrobot> ok, moving on
20:18:02 <redrobot> #topic CAs blueprint
20:18:13 <redrobot> #link http://specs.openstack.org/openstack/barbican-specs/specs/liberty/add-cas.html
20:19:01 <alee> redrobot, whats the question here?
20:19:11 <redrobot> I was reviewing this BP after it merged, and I noticed it was missing info on implementing a non dogtag version
20:19:27 <redrobot> So I think maybe we should consider making this an optional feature?
20:20:14 <alee> redrobot, well - it is optional for a ca plugin to implement this.
20:20:50 <alee> if I recall correctly, there is a default implementation of the relevant methods
20:21:39 <alee> redrobot, there is a supports_create_ca() method
20:21:46 <alee> which defaults to false
20:23:08 <alee> and a create_ca() method which defaults to throwing not implemented -- that method would not be called if supports_create_ca is false.
20:23:09 <redrobot> I guess it just wasn't clear to me from reading the spec what a non-dogtag deployment would look like
20:23:48 <alee> redrobot, in case no plugin can support this, we would end up returning No Plugin or similar
20:24:13 <alee> redrobot, just like if no plugin supported key generation of a certain type for instance
20:25:47 <redrobot> I was thinking more along the lines of optional api extensions like in nova, but I think no plugin errors would be fine
20:26:38 <alee> redrobot, I'm open either way -- no plugin error means one less thing to configure
20:26:47 <alee> in case you want to support the functionality
20:27:35 <redrobot> Anyone else care to chime in?  ...  woodster_  we had talked about optional features before.  What do you think?
20:27:46 <woodster_> redrobot: it seems the extensions api approach is a more fundamental change to the API structure of Barbican...probably worthy of its own discussion at the mid cycle
20:29:19 <redrobot> woodster_ fair enough
20:29:27 <redrobot> I added the topic to the midcycle etherpad
20:29:29 <redrobot> #link https://etherpad.openstack.org/p/barbican-liberty-midcycle
20:29:39 <redrobot> ok, moving on
20:29:54 <rellerreller> It's probably a good thing to discuss.
20:30:10 <rellerreller> I saw silos1 had a KMIP-specific proposal for the API.
20:30:19 <rellerreller> Sorry, I"m a slow typer today.
20:30:34 <redrobot> rellerreller I'll add it to the agenda
20:30:41 <redrobot> #topic copy constructor for secrets and containers
20:30:51 <redrobot> elmiko you wanted to give an update on this?
20:30:55 <elmiko> yea
20:30:58 <redrobot> #link https://review.openstack.org/#/c/127823/
20:31:13 <elmiko> i just wanted to complete the loop on the discussions we had on openstack-api
20:31:30 <elmiko> i think there is a consensus forming in the review
20:32:00 <elmiko> but we did discuss it, and aside the from PUT update of secrets (which sidetracked us), we had major solutions
20:32:11 <elmiko> the one miguelgrinberg mentions in the review and the one i suggested
20:32:32 <alee> elmiko, seems like the one you suggested is the one that got traction
20:32:40 <jvrbanac> sooo I had some input on patchset 7
20:34:00 <elmiko> so, the takeaway from the api-wg was that there isn't really an advised way to do this type of operation, some hits came up on stackoverflow for the style i suggested
20:34:01 <jvrbanac> I wasn't thrilled about having magic payloads on endpoints
20:34:10 <elmiko> and i think miguelgrinberg's is clean as well
20:34:29 <elmiko> yea, agreed jvrbanac
20:35:07 <jvrbanac> We had a similar discussion a long time ago when it came to payloads for secrets
20:35:26 <jvrbanac> fast-foward and we ended up breaking it out to a different endpoint
20:35:43 <woodster_> jvrbanac: your suggested approach is similar to Miguel's 2nd suggested one, correct?
20:36:06 <woodster_> jvrbanac: ....i.e. a POST to secrets/{UUID-to-copy}
20:36:20 <woodster_> jvrbanac: ...with or without the /copy at the end
20:36:21 <jvrbanac> woodster_, sorta. My approach was for POST http://{barbican}/v1/secrets/{uuid}/copy
20:36:44 <jvrbanac> Similar to how we do payloads
20:36:46 <elmiko> i'm not so fond of creating new endpoints for controller-esque operations
20:36:59 <alee> elmiko, +1
20:37:09 <elmiko> this style of operation has come up within the api-wg as a behavior to advise against
20:37:39 <jvrbanac> elmiko, did they say why?
20:37:59 <jvrbanac> because it feels the most explicit and discoverable
20:38:10 <elmiko> jvrbanac: it's a pretty philosophical discussion, but it has to do with REST being a state transfer mechanism around resources
20:38:18 <elmiko> and not an RPC type mechanism
20:39:04 <elmiko> jvrbanac: miguelgrinberg and stevelle are great folks to talk with about this though, their knowledge and experience are much deeper than mine
20:39:40 <elmiko> also, the o'reilly rest cookbook has some info on it
20:40:32 <elmiko> jvrbanac: does that make some sense?
20:41:46 <jvrbanac> elmiko, as much as a philosophical argument is going to be. Personally, I still think it's bad design regardless what the books say.
20:42:18 <elmiko> jvrbanac: wait, which is bad design?
20:42:47 <redrobot> I think the POST to v1/secrets/UUID is interesting
20:43:25 <elmiko> (i was speaking about POST to ../copy)
20:43:42 <alee> redrobot, that seens counter-intuitive somewhat to me.   POST /secrets?copy_ref={uuid} seems clearest to me.
20:44:35 <alee> gotta step away for a sec .. but please go on :)
20:44:57 <jvrbanac> elmiko, I was referring to magic body's or parameters. so like the /secrets?copy_ref or the copy ref in the body both feel very dirty
20:45:10 <elmiko> jvrbanac: ahh, ok
20:45:28 <elmiko> i think we all agreed that magic to the body was non-ideal
20:45:59 <elmiko> i think the feeling about query params was that they were more easily discoverable/documentable than body related changes
20:46:22 <elmiko> in all fairness, i like miguelgrinberg's approach as well.
20:47:00 <elmiko> if anyone is interested i can dig up a link to the conversation in irc after this meeting, just ping me
20:48:07 <jvrbanac> elmiko, I get the rational for those ideas. However, considering Barbican's current api design, I don't think they fit that well
20:48:21 <elmiko> jvrbanac: understandable
20:48:45 <jvrbanac> elmiko, I think it's because we're already mixing so many behaviors on our resources that it becomes confusing
20:48:59 <jvrbanac> elmiko, the same thing happened to secrets payload retrieval.
20:49:07 <jvrbanac> elmiko, just food for thought
20:49:13 <elmiko> yea, i know the feeling... (/me is working on sahara v2 api spec)
20:49:51 <elmiko> jvrbanac: fair, and i just wanted to get a few more eyes on the review. ultimately it's up to the team to make the right decision for barbican
20:50:48 <redrobot> ok, sounds like we just need more reviewers
20:51:02 <redrobot> anything else on this topic?
20:51:09 <elmiko> nothing from me
20:51:22 <alee> redrobot, elmiko , jvrbanac - more reviewers is fine, but I'd like to put this to rest soon
20:51:31 <alee> (pun intended)
20:51:34 <redrobot> lol
20:51:42 <woodster_> alee: beat met to it
20:51:46 <elmiko> alee: lol, i've said my peace. i leave it up to the group to vote on this one
20:51:50 <woodster_> alee: beat me to it
20:52:03 <alee> can we vote now ?
20:52:09 <alee> or do we need more time?
20:53:22 <jvrbanac> This is the direction everyone wants to go. Ok, but I still think it's a mistake.
20:53:41 <alee> (I didn't realize this simle spec was going to cause so much controversy)
20:54:11 <jvrbanac> lol I think any change to secrets api is going to cause some :)
20:54:21 <jvrbanac> considering the history of the api
20:54:26 <alee> indeed
20:54:26 <redrobot> one thing I don't like about the ?copy_ref=XXXX  is that XXXX is going to need to be a ful URI to be consistent with the rest of the api
20:54:30 <redrobot> and that just seems weird to me.
20:54:45 <woodster_> This one is explicit to me: POST /secrets?copy_ref={uuid}    This one I almost like but seems a bit too subtle: POST /secrets/{UUID-to-copy}
20:55:11 <alee> woodster_, my thoughts exactly
20:55:13 <woodster_> I'd be ok with the latter approach if that is the consensus though
20:55:31 <redrobot> POST /secrets?copy_ref=https://some-cloud.com/uuid
20:56:34 <woodster_> redrobot: correct
20:56:53 <jvrbanac> ?copy_ref={uuid} will most likely cause problems with federation. ?copy_ref={full_hatoas} would have to be encoded to keep parsers from barfing
20:57:12 <elmiko> jvrbanac: yea, i thought about that too with the federation
20:57:21 <woodster_> sounds like POST /secrets/{UUID-to-copy} then?
20:57:35 <elmiko> that might be the cleanest
20:57:45 <alee> ok with me
20:57:54 <woodster_> Votes for POST /secrets/{UUID-to-copy} then?
20:57:56 <woodster_> +1
20:58:00 <redrobot> +1
20:58:00 <alee> +1
20:58:03 <elmiko> +1
20:58:15 <woodster_> neys to that approach?
20:58:32 <alee> the ayes have it :)
20:58:35 <alee> awesome
20:58:42 <woodster_> (crickets... :)
20:58:50 <jvrbanac> still not a fan, but I'll just tell you I told you so in a year
20:58:55 <jvrbanac> lol
20:59:03 <alee> :) just in time for v2
20:59:07 <redrobot> #agreed Copy Secret API will use POST /v1/secrets/{UUID-to-copy}
20:59:14 <woodster_> alee: :)
20:59:18 <alee> ok - will write it up and submit later tonight
20:59:23 <redrobot> just in time for the end of the meeting
20:59:30 <alee> thanks!
20:59:39 <redrobot> and I think rellerreller left, so I'll had his topic to next week's agenda.
20:59:43 <redrobot> thanks everyone for coming!
20:59:47 <redrobot> #endmeeting