)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":17123,"name":"Tom Cocozzello (tjcocozz)","email":"tjcocozz@us.ibm.com","username":"tcocozzello"},"change_message_id":"5366d58a295009529b2abd4059ba12c42fea61b9","unresolved":false,"context_lines":[{"line_number":5,"context_line":"CommitDate: 2015-09-07 19:29:57 -0300"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Expand endpoint filters to service providers"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"bp service-provider-filters"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Change-Id: Ice20ede8a27eefad1a98d810dfee425a71d06a86"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"da20952f_c73cfcc1","line":8,"updated":"2015-09-08 14:53:39.000000000","message":"I understand the blueprint but can you explain what changes your are making in the body of your commit message?","commit_id":"6921967d98fcc33f70be6f6d032d40d98d11b57b"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"5b2ab531b97e164b74aa22b5fef0c4f9e7994d2f","unresolved":false,"context_lines":[{"line_number":5,"context_line":"CommitDate: 2015-09-07 19:29:57 -0300"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Expand endpoint filters to service providers"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"bp service-provider-filters"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Change-Id: Ice20ede8a27eefad1a98d810dfee425a71d06a86"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"9a1a9d01_9d31480e","line":8,"in_reply_to":"da20952f_c73cfcc1","updated":"2015-09-25 19:30:30.000000000","message":"Thanks, I\u0027ll update in the next patch set.","commit_id":"6921967d98fcc33f70be6f6d032d40d98d11b57b"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"bfd8612db58210bc53ba2ef831463b514caf5d94","unresolved":false,"context_lines":[{"line_number":13,"context_line":"Since Kilo, we added the concept of Service Providers to keystone,"},{"line_number":14,"context_line":"the list of such resources is returned in the token alongside the"},{"line_number":15,"context_line":"service catalog."},{"line_number":16,"context_line":"In Liberty we are proposing to extend endpoints filtering to also"},{"line_number":17,"context_line":"support Service Providers. This should not bring API nor model"},{"line_number":18,"context_line":"changes, just extra checks to the endpoint filter controller/backend."},{"line_number":19,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"9a8ffd7b_09c1bde4","line":16,"updated":"2015-11-24 13:29:47.000000000","message":"It\u0027s now Mitaka","commit_id":"f650c512ca69592d30e2893c6ac3c8e5f6755c8e"}],"api/v3/identity-api-v3-os-ep-filter-ext.rst":[{"author":{"_account_id":1941,"name":"Lin Hua Cheng","email":"os.lcheng@gmail.com","username":"lin-hua-cheng"},"change_message_id":"b1eef49fbd638637595c2050f7f77b3bcecc2e7b","unresolved":false,"context_lines":[{"line_number":682,"context_line":"providers configured with the OpenStack deployment. Service Providers filtering"},{"line_number":683,"context_line":"enables associating service providers with projects. As a result users will"},{"line_number":684,"context_line":"get only those associated service providers instead of full list of available"},{"line_number":685,"context_line":"(and enabled) service providers. For a sake of operability, an administrator"},{"line_number":686,"context_line":"can also create ``Service Provider group`` specyfing multiple service"},{"line_number":687,"context_line":"providers, and associate the group with a project. This will require two API"},{"line_number":688,"context_line":"calls (creating a group with n service providers in it and associating the"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_ba950841","line":685,"updated":"2015-12-01 16:13:11.000000000","message":"For *the* sake","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"bc9e4c3a85a83f52275be0e8b2bd6c6ebe63b09c","unresolved":false,"context_lines":[{"line_number":682,"context_line":"providers configured with the OpenStack deployment. Service Providers filtering"},{"line_number":683,"context_line":"enables associating service providers with projects. As a result users will"},{"line_number":684,"context_line":"get only those associated service providers instead of full list of available"},{"line_number":685,"context_line":"(and enabled) service providers. For a sake of operability, an administrator"},{"line_number":686,"context_line":"can also create ``Service Provider group`` specyfing multiple service"},{"line_number":687,"context_line":"providers, and associate the group with a project. This will require two API"},{"line_number":688,"context_line":"calls (creating a group with n service providers in it and associating the"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_8e57a1c9","line":685,"in_reply_to":"9a8ffd7b_ba950841","updated":"2015-12-02 08:12:58.000000000","message":"Done","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"327df38ff2da73510a20efdc0e3118274a210f9d","unresolved":false,"context_lines":[{"line_number":683,"context_line":"enables associating service providers with projects. As a result users will"},{"line_number":684,"context_line":"get only those associated service providers instead of full list of available"},{"line_number":685,"context_line":"(and enabled) service providers. For a sake of operability, an administrator"},{"line_number":686,"context_line":"can also create ``Service Provider group`` specyfing multiple service"},{"line_number":687,"context_line":"providers, and associate the group with a project. This will require two API"},{"line_number":688,"context_line":"calls (creating a group with n service providers in it and associating the"},{"line_number":689,"context_line":"group with a project) as opposed to n API calls (each call for associating a"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_152a22e8","line":686,"updated":"2015-11-30 18:31:24.000000000","message":"Associating service providers with a project is not a common use case right? I would think associating SPs with a domain is more common. We should support the capability such that if the SPs are associated with a given domain or top level project hierarchy, all the projects under that domain or top level project will inherited the filtered SPs.","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":1941,"name":"Lin Hua Cheng","email":"os.lcheng@gmail.com","username":"lin-hua-cheng"},"change_message_id":"b1eef49fbd638637595c2050f7f77b3bcecc2e7b","unresolved":false,"context_lines":[{"line_number":683,"context_line":"enables associating service providers with projects. As a result users will"},{"line_number":684,"context_line":"get only those associated service providers instead of full list of available"},{"line_number":685,"context_line":"(and enabled) service providers. For a sake of operability, an administrator"},{"line_number":686,"context_line":"can also create ``Service Provider group`` specyfing multiple service"},{"line_number":687,"context_line":"providers, and associate the group with a project. This will require two API"},{"line_number":688,"context_line":"calls (creating a group with n service providers in it and associating the"},{"line_number":689,"context_line":"group with a project) as opposed to n API calls (each call for associating a"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_9abfe4a9","line":686,"in_reply_to":"9a8ffd7b_152a22e8","updated":"2015-12-01 16:13:11.000000000","message":"I agree, SP generally would be mapped to a domain.","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"bc9e4c3a85a83f52275be0e8b2bd6c6ebe63b09c","unresolved":false,"context_lines":[{"line_number":683,"context_line":"enables associating service providers with projects. As a result users will"},{"line_number":684,"context_line":"get only those associated service providers instead of full list of available"},{"line_number":685,"context_line":"(and enabled) service providers. For a sake of operability, an administrator"},{"line_number":686,"context_line":"can also create ``Service Provider group`` specyfing multiple service"},{"line_number":687,"context_line":"providers, and associate the group with a project. This will require two API"},{"line_number":688,"context_line":"calls (creating a group with n service providers in it and associating the"},{"line_number":689,"context_line":"group with a project) as opposed to n API calls (each call for associating a"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_ee398da4","line":686,"in_reply_to":"9a8ffd7b_9abfe4a9","updated":"2015-12-02 08:12:58.000000000","message":"we used to tie to project....one of the very first parameters we were issuing was the project, not the domain. \nhow about we have projects and domains?","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":1941,"name":"Lin Hua Cheng","email":"os.lcheng@gmail.com","username":"lin-hua-cheng"},"change_message_id":"b1eef49fbd638637595c2050f7f77b3bcecc2e7b","unresolved":false,"context_lines":[{"line_number":694,"context_line":""},{"line_number":695,"context_line":"::"},{"line_number":696,"context_line":""},{"line_number":697,"context_line":"    PUT /OS-EP-FILTER/projects/{project_id}/service_provider/{sp_id}"},{"line_number":698,"context_line":""},{"line_number":699,"context_line":"Relationship:"},{"line_number":700,"context_line":"``http://docs.openstack.org/api/openstack-identity/3/ext/OS-EP-FILTER/1.0/rel/project_endpoint``"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_bab0a88c","line":697,"updated":"2015-12-01 16:13:11.000000000","message":"should service_provider be service_providers instead?","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"bc9e4c3a85a83f52275be0e8b2bd6c6ebe63b09c","unresolved":false,"context_lines":[{"line_number":694,"context_line":""},{"line_number":695,"context_line":"::"},{"line_number":696,"context_line":""},{"line_number":697,"context_line":"    PUT /OS-EP-FILTER/projects/{project_id}/service_provider/{sp_id}"},{"line_number":698,"context_line":""},{"line_number":699,"context_line":"Relationship:"},{"line_number":700,"context_line":"``http://docs.openstack.org/api/openstack-identity/3/ext/OS-EP-FILTER/1.0/rel/project_endpoint``"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_d330f209","line":697,"in_reply_to":"9a8ffd7b_bab0a88c","updated":"2015-12-02 08:12:58.000000000","message":"likely","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"327df38ff2da73510a20efdc0e3118274a210f9d","unresolved":false,"context_lines":[{"line_number":700,"context_line":"``http://docs.openstack.org/api/openstack-identity/3/ext/OS-EP-FILTER/1.0/rel/project_endpoint``"},{"line_number":701,"context_line":""},{"line_number":702,"context_line":"Modifies the endpoint resource adding an association between the project and"},{"line_number":703,"context_line":"the service provider."},{"line_number":704,"context_line":""},{"line_number":705,"context_line":"Response:"},{"line_number":706,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_35cba620","line":703,"updated":"2015-11-30 18:31:24.000000000","message":"what happen if the project is the also a domain? i.e. top-level project ID","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"bc9e4c3a85a83f52275be0e8b2bd6c6ebe63b09c","unresolved":false,"context_lines":[{"line_number":700,"context_line":"``http://docs.openstack.org/api/openstack-identity/3/ext/OS-EP-FILTER/1.0/rel/project_endpoint``"},{"line_number":701,"context_line":""},{"line_number":702,"context_line":"Modifies the endpoint resource adding an association between the project and"},{"line_number":703,"context_line":"the service provider."},{"line_number":704,"context_line":""},{"line_number":705,"context_line":"Response:"},{"line_number":706,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_62461151","line":703,"in_reply_to":"9a8ffd7b_35cba620","updated":"2015-12-02 08:12:58.000000000","message":"it will be included in the allowe sps list providing it matches your scope?","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":1941,"name":"Lin Hua Cheng","email":"os.lcheng@gmail.com","username":"lin-hua-cheng"},"change_message_id":"b1eef49fbd638637595c2050f7f77b3bcecc2e7b","unresolved":false,"context_lines":[{"line_number":713,"context_line":""},{"line_number":714,"context_line":"::"},{"line_number":715,"context_line":""},{"line_number":716,"context_line":"    HEAD /OS-EP-FILTER/projects/{project_id}/service_provider/{sp_id}"},{"line_number":717,"context_line":""},{"line_number":718,"context_line":"Relationship:"},{"line_number":719,"context_line":"``http://docs.openstack.org/api/openstack-identity/3/ext/OS-EP-FILTER/1.0/rel/project_endpoint``"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_fa43906a","line":716,"updated":"2015-12-01 16:13:11.000000000","message":"service_providers (with s)?","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"bc9e4c3a85a83f52275be0e8b2bd6c6ebe63b09c","unresolved":false,"context_lines":[{"line_number":713,"context_line":""},{"line_number":714,"context_line":"::"},{"line_number":715,"context_line":""},{"line_number":716,"context_line":"    HEAD /OS-EP-FILTER/projects/{project_id}/service_provider/{sp_id}"},{"line_number":717,"context_line":""},{"line_number":718,"context_line":"Relationship:"},{"line_number":719,"context_line":"``http://docs.openstack.org/api/openstack-identity/3/ext/OS-EP-FILTER/1.0/rel/project_endpoint``"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_2277a9a0","line":716,"in_reply_to":"9a8ffd7b_fa43906a","updated":"2015-12-02 08:12:58.000000000","message":"Done","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":1941,"name":"Lin Hua Cheng","email":"os.lcheng@gmail.com","username":"lin-hua-cheng"},"change_message_id":"b1eef49fbd638637595c2050f7f77b3bcecc2e7b","unresolved":false,"context_lines":[{"line_number":725,"context_line":""},{"line_number":726,"context_line":"::"},{"line_number":727,"context_line":""},{"line_number":728,"context_line":"    Status: 204 No Content"},{"line_number":729,"context_line":""},{"line_number":730,"context_line":"List Associations for Project"},{"line_number":731,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_fa0b907b","line":728,"updated":"2015-12-01 16:13:11.000000000","message":"return 200 for HEAD operation","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"bc9e4c3a85a83f52275be0e8b2bd6c6ebe63b09c","unresolved":false,"context_lines":[{"line_number":725,"context_line":""},{"line_number":726,"context_line":"::"},{"line_number":727,"context_line":""},{"line_number":728,"context_line":"    Status: 204 No Content"},{"line_number":729,"context_line":""},{"line_number":730,"context_line":"List Associations for Project"},{"line_number":731,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_8272157b","line":728,"in_reply_to":"9a8ffd7b_fa0b907b","updated":"2015-12-02 08:12:58.000000000","message":"Done","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":1941,"name":"Lin Hua Cheng","email":"os.lcheng@gmail.com","username":"lin-hua-cheng"},"change_message_id":"b1eef49fbd638637595c2050f7f77b3bcecc2e7b","unresolved":false,"context_lines":[{"line_number":784,"context_line":""},{"line_number":785,"context_line":"::"},{"line_number":786,"context_line":""},{"line_number":787,"context_line":"    DELETE /OS-EP-FILTER/projects/{project_id}/service_provider/{sp_id}"},{"line_number":788,"context_line":""},{"line_number":789,"context_line":"Relationship:"},{"line_number":790,"context_line":"``http://docs.openstack.org/api/openstack-identity/3/ext/OS-EP-FILTER/1.0/rel/project_endpoint``"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_150c273a","line":787,"updated":"2015-12-01 16:13:11.000000000","message":"service_providers?","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"bc9e4c3a85a83f52275be0e8b2bd6c6ebe63b09c","unresolved":false,"context_lines":[{"line_number":784,"context_line":""},{"line_number":785,"context_line":"::"},{"line_number":786,"context_line":""},{"line_number":787,"context_line":"    DELETE /OS-EP-FILTER/projects/{project_id}/service_provider/{sp_id}"},{"line_number":788,"context_line":""},{"line_number":789,"context_line":"Relationship:"},{"line_number":790,"context_line":"``http://docs.openstack.org/api/openstack-identity/3/ext/OS-EP-FILTER/1.0/rel/project_endpoint``"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_42766d3f","line":787,"in_reply_to":"9a8ffd7b_150c273a","updated":"2015-12-02 08:12:58.000000000","message":"Done","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":1941,"name":"Lin Hua Cheng","email":"os.lcheng@gmail.com","username":"lin-hua-cheng"},"change_message_id":"b1eef49fbd638637595c2050f7f77b3bcecc2e7b","unresolved":false,"context_lines":[{"line_number":803,"context_line":""},{"line_number":804,"context_line":"::"},{"line_number":805,"context_line":""},{"line_number":806,"context_line":"    GET /OS-EP-FILTER/service_provider/{sp_id}/projects"},{"line_number":807,"context_line":""},{"line_number":808,"context_line":"Relationship:"},{"line_number":809,"context_line":"``http://docs.openstack.org/api/openstack-identity/3/ext/OS-EP-FILTER/1.0/rel/endpoint_projects``"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_753493dd","line":806,"updated":"2015-12-01 16:13:11.000000000","message":"service_providers","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"bc9e4c3a85a83f52275be0e8b2bd6c6ebe63b09c","unresolved":false,"context_lines":[{"line_number":803,"context_line":""},{"line_number":804,"context_line":"::"},{"line_number":805,"context_line":""},{"line_number":806,"context_line":"    GET /OS-EP-FILTER/service_provider/{sp_id}/projects"},{"line_number":807,"context_line":""},{"line_number":808,"context_line":"Relationship:"},{"line_number":809,"context_line":"``http://docs.openstack.org/api/openstack-identity/3/ext/OS-EP-FILTER/1.0/rel/endpoint_projects``"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_62713144","line":806,"in_reply_to":"9a8ffd7b_753493dd","updated":"2015-12-02 08:12:58.000000000","message":"Done","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"327df38ff2da73510a20efdc0e3118274a210f9d","unresolved":false,"context_lines":[{"line_number":875,"context_line":""},{"line_number":876,"context_line":"::"},{"line_number":877,"context_line":""},{"line_number":878,"context_line":"    POST /OS-EP-FILTER/sp_groups"},{"line_number":879,"context_line":""},{"line_number":880,"context_line":"Relationship:"},{"line_number":881,"context_line":"``http://docs.openstack.org/api/openstack-identity/3/ext/OS-EP-FILTER/1.0/rel/sp_groups``"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_f5b99e7a","line":878,"updated":"2015-11-30 18:31:24.000000000","message":"shouldn\u0027t this be PUT? We allow service provider IDs to be use-specified, why not SP group ID?","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"bc9e4c3a85a83f52275be0e8b2bd6c6ebe63b09c","unresolved":false,"context_lines":[{"line_number":875,"context_line":""},{"line_number":876,"context_line":"::"},{"line_number":877,"context_line":""},{"line_number":878,"context_line":"    POST /OS-EP-FILTER/sp_groups"},{"line_number":879,"context_line":""},{"line_number":880,"context_line":"Relationship:"},{"line_number":881,"context_line":"``http://docs.openstack.org/api/openstack-identity/3/ext/OS-EP-FILTER/1.0/rel/sp_groups``"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_8e08012a","line":878,"in_reply_to":"9a8ffd7b_f5b99e7a","updated":"2015-12-02 08:12:58.000000000","message":"in the spirit of OS-EP-FILTER we random generate sp_group id. \nSPs are kind of user defined as user interact with them more directly. Here, sp_groups will be created/mainained only by admins. Makes sense?","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"327df38ff2da73510a20efdc0e3118274a210f9d","unresolved":false,"context_lines":[{"line_number":976,"context_line":"Relationship:"},{"line_number":977,"context_line":"``http://docs.openstack.org/api/openstack-identity/3/ext/OS-EP-FILTER/1.0/rel/sp_group``"},{"line_number":978,"context_line":""},{"line_number":979,"context_line":"The request block is the same as the one for create endpoint group, except that"},{"line_number":980,"context_line":"only the attributes that are being updated need to be included."},{"line_number":981,"context_line":""},{"line_number":982,"context_line":"Request:"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_1530e206","line":979,"updated":"2015-11-30 18:31:24.000000000","message":"no need to mention endpoint group here","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"bc9e4c3a85a83f52275be0e8b2bd6c6ebe63b09c","unresolved":false,"context_lines":[{"line_number":976,"context_line":"Relationship:"},{"line_number":977,"context_line":"``http://docs.openstack.org/api/openstack-identity/3/ext/OS-EP-FILTER/1.0/rel/sp_group``"},{"line_number":978,"context_line":""},{"line_number":979,"context_line":"The request block is the same as the one for create endpoint group, except that"},{"line_number":980,"context_line":"only the attributes that are being updated need to be included."},{"line_number":981,"context_line":""},{"line_number":982,"context_line":"Request:"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_22a489b7","line":979,"in_reply_to":"9a8ffd7b_1530e206","updated":"2015-12-02 08:12:58.000000000","message":"Done","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"327df38ff2da73510a20efdc0e3118274a210f9d","unresolved":false,"context_lines":[{"line_number":1021,"context_line":""},{"line_number":1022,"context_line":"::"},{"line_number":1023,"context_line":""},{"line_number":1024,"context_line":"    DELETE /OS-EP-FILTER/sp_groups/{sp_group_id}"},{"line_number":1025,"context_line":""},{"line_number":1026,"context_line":"Relationship:"},{"line_number":1027,"context_line":"``http://docs.openstack.org/api/openstack-identity/3/ext/OS-EP-FILTER/1.0/rel/sp_group``"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_9012a057","line":1024,"updated":"2015-11-30 18:31:24.000000000","message":"what happen if the SP is deleted? Will it automatically be removed from the SP group?","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"bc9e4c3a85a83f52275be0e8b2bd6c6ebe63b09c","unresolved":false,"context_lines":[{"line_number":1021,"context_line":""},{"line_number":1022,"context_line":"::"},{"line_number":1023,"context_line":""},{"line_number":1024,"context_line":"    DELETE /OS-EP-FILTER/sp_groups/{sp_group_id}"},{"line_number":1025,"context_line":""},{"line_number":1026,"context_line":"Relationship:"},{"line_number":1027,"context_line":"``http://docs.openstack.org/api/openstack-identity/3/ext/OS-EP-FILTER/1.0/rel/sp_group``"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_8e1fa15a","line":1024,"in_reply_to":"9a8ffd7b_9012a057","updated":"2015-12-02 08:12:58.000000000","message":"i think it\u0027s fair assumption and requirement.","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"eaf9095422163f507414e9216167e6784fcd19b5","unresolved":false,"context_lines":[{"line_number":697,"context_line":"    PUT /OS-EP-FILTER/projects/{project_id}/service_providers/{sp_id}"},{"line_number":698,"context_line":""},{"line_number":699,"context_line":"Relationship:"},{"line_number":700,"context_line":"``http://docs.openstack.org/api/openstack-identity/3/ext/OS-EP-FILTER/1.0/rel/project_endpoint``"},{"line_number":701,"context_line":""},{"line_number":702,"context_line":"Modifies the endpoint resource adding an association between the project and"},{"line_number":703,"context_line":"the service provider."}],"source_content_type":"text/x-rst","patch_set":12,"id":"9a8ffd7b_8c4f4833","line":700,"updated":"2015-12-03 06:55:22.000000000","message":"your json home relationships are all wrong","commit_id":"33c1456b51d3b88faa38ad0263c77034bc0a58ce"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"d691ca0f68f84114b3617e96b1ee3f206332f80d","unresolved":false,"context_lines":[{"line_number":697,"context_line":"    PUT /OS-EP-FILTER/projects/{project_id}/service_providers/{sp_id}"},{"line_number":698,"context_line":""},{"line_number":699,"context_line":"Relationship:"},{"line_number":700,"context_line":"``http://docs.openstack.org/api/openstack-identity/3/ext/OS-EP-FILTER/1.0/rel/project_endpoint``"},{"line_number":701,"context_line":""},{"line_number":702,"context_line":"Modifies the endpoint resource adding an association between the project and"},{"line_number":703,"context_line":"the service provider."}],"source_content_type":"text/x-rst","patch_set":12,"id":"7a740942_ccf2ae9a","line":700,"in_reply_to":"7a740942_c337eaae","updated":"2015-12-04 14:53:30.000000000","message":"instead of ending with \u0027project_endpoint\u0027 you need a unique string. Many of the other ones are related to the route or the function. See line 544 in this file for an example of the former.","commit_id":"33c1456b51d3b88faa38ad0263c77034bc0a58ce"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"661d5bfcaa4eac2ff92880599c25b1fa60dbbf69","unresolved":false,"context_lines":[{"line_number":697,"context_line":"    PUT /OS-EP-FILTER/projects/{project_id}/service_providers/{sp_id}"},{"line_number":698,"context_line":""},{"line_number":699,"context_line":"Relationship:"},{"line_number":700,"context_line":"``http://docs.openstack.org/api/openstack-identity/3/ext/OS-EP-FILTER/1.0/rel/project_endpoint``"},{"line_number":701,"context_line":""},{"line_number":702,"context_line":"Modifies the endpoint resource adding an association between the project and"},{"line_number":703,"context_line":"the service provider."}],"source_content_type":"text/x-rst","patch_set":12,"id":"7a740942_c337eaae","line":700,"in_reply_to":"9a8ffd7b_8c4f4833","updated":"2015-12-04 10:23:23.000000000","message":"yep, however I am not sure how to tackle it and how should proper ones look like...?","commit_id":"33c1456b51d3b88faa38ad0263c77034bc0a58ce"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"eaf9095422163f507414e9216167e6784fcd19b5","unresolved":false,"context_lines":[{"line_number":885,"context_line":"::"},{"line_number":886,"context_line":""},{"line_number":887,"context_line":"    {"},{"line_number":888,"context_line":"        \"sp_group\": {"},{"line_number":889,"context_line":"            \"description\": \"Service Providers group description\","},{"line_number":890,"context_line":"            \"service_providers\": ["},{"line_number":891,"context_line":"                \"sp1\","}],"source_content_type":"text/x-rst","patch_set":12,"id":"9a8ffd7b_2c065cce","line":888,"updated":"2015-12-03 06:55:22.000000000","message":"why shorten the name?\n\n  \"service_provider_group\"","commit_id":"33c1456b51d3b88faa38ad0263c77034bc0a58ce"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"661d5bfcaa4eac2ff92880599c25b1fa60dbbf69","unresolved":false,"context_lines":[{"line_number":885,"context_line":"::"},{"line_number":886,"context_line":""},{"line_number":887,"context_line":"    {"},{"line_number":888,"context_line":"        \"sp_group\": {"},{"line_number":889,"context_line":"            \"description\": \"Service Providers group description\","},{"line_number":890,"context_line":"            \"service_providers\": ["},{"line_number":891,"context_line":"                \"sp1\","}],"source_content_type":"text/x-rst","patch_set":12,"id":"7a740942_a3141ef5","line":888,"in_reply_to":"9a8ffd7b_2c065cce","updated":"2015-12-04 10:23:23.000000000","message":"you think so? Would we then need to change URLs from sp_groups to longer name? I\u0027d rather not make URLs ssssssssssooooooooooooooooooooooo long.","commit_id":"33c1456b51d3b88faa38ad0263c77034bc0a58ce"},{"author":{"_account_id":13055,"name":"Alexander Makarov","email":"ajiekcahdp.makapob@gmail.com","username":"amakarov"},"change_message_id":"c90ee0b6056a3ea62c43b0f464e0aea7bf6afcae","unresolved":false,"context_lines":[{"line_number":850,"context_line":""},{"line_number":851,"context_line":"Service Provider Groups"},{"line_number":852,"context_line":"~~~~~~~~~~~~~~~~~~~~~~~"},{"line_number":853,"context_line":""},{"line_number":854,"context_line":"*New in version 1.2*"},{"line_number":855,"context_line":""},{"line_number":856,"context_line":"Required attributes:"}],"source_content_type":"text/x-rst","patch_set":13,"id":"7a740942_7b620840","line":853,"updated":"2015-12-07 14:47:49.000000000","message":"It would be nice to have a description here, and why do we need these groups.","commit_id":"80fb4b3e246eb61d03427454a5e46dcf41bf7acf"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"953e2c0d1e675aa5ca52b5ab506210d8474bb37b","unresolved":false,"context_lines":[{"line_number":850,"context_line":""},{"line_number":851,"context_line":"Service Provider Groups"},{"line_number":852,"context_line":"~~~~~~~~~~~~~~~~~~~~~~~"},{"line_number":853,"context_line":""},{"line_number":854,"context_line":"*New in version 1.2*"},{"line_number":855,"context_line":""},{"line_number":856,"context_line":"Required attributes:"}],"source_content_type":"text/x-rst","patch_set":13,"id":"7a740942_2616984c","line":853,"in_reply_to":"7a740942_7b620840","updated":"2015-12-07 17:49:36.000000000","message":"Alexander, do you really think it\u0027s worth blocking this spec just because some minor description is missing? \nAll in all I think general description from line 677should give the reader some notion on what\u0027s going in here.","commit_id":"80fb4b3e246eb61d03427454a5e46dcf41bf7acf"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"09aebd20fee97f938c7e4aa99d5424b947714b14","unresolved":false,"context_lines":[{"line_number":885,"context_line":"::"},{"line_number":886,"context_line":""},{"line_number":887,"context_line":"    {"},{"line_number":888,"context_line":"        \"sp_group\": {"},{"line_number":889,"context_line":"            \"description\": \"Service Providers group description\","},{"line_number":890,"context_line":"            \"service_providers\": ["},{"line_number":891,"context_line":"                \"sp1\","}],"source_content_type":"text/x-rst","patch_set":13,"id":"7a740942_4978edf2","line":888,"updated":"2015-12-04 15:27:15.000000000","message":"moved coments from previous version:\n\nSteve: why shorten the name?\n  \"service_provider_group\"\n\nMarek: you think so? Would we then need to change URLs from sp_groups to longer name? I\u0027d rather not make URLs ssssssssssooooooooooooooooooooooo long.","commit_id":"80fb4b3e246eb61d03427454a5e46dcf41bf7acf"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"0adeefd4fe9efaa43522bd47756501919762e955","unresolved":false,"context_lines":[{"line_number":885,"context_line":"::"},{"line_number":886,"context_line":""},{"line_number":887,"context_line":"    {"},{"line_number":888,"context_line":"        \"sp_group\": {"},{"line_number":889,"context_line":"            \"description\": \"Service Providers group description\","},{"line_number":890,"context_line":"            \"service_providers\": ["},{"line_number":891,"context_line":"                \"sp1\","}],"source_content_type":"text/x-rst","patch_set":13,"id":"7a740942_803e54d8","line":888,"in_reply_to":"7a740942_00c02429","updated":"2015-12-07 17:27:10.000000000","message":"service_providers are here or different purpose than sp_group or service_providers_group(s)","commit_id":"80fb4b3e246eb61d03427454a5e46dcf41bf7acf"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"48873d79a2675ca5faf033bb676c18ca8942deb7","unresolved":false,"context_lines":[{"line_number":885,"context_line":"::"},{"line_number":886,"context_line":""},{"line_number":887,"context_line":"    {"},{"line_number":888,"context_line":"        \"sp_group\": {"},{"line_number":889,"context_line":"            \"description\": \"Service Providers group description\","},{"line_number":890,"context_line":"            \"service_providers\": ["},{"line_number":891,"context_line":"                \"sp1\","}],"source_content_type":"text/x-rst","patch_set":13,"id":"7a740942_00c02429","line":888,"in_reply_to":"7a740942_4978edf2","updated":"2015-12-07 17:18:20.000000000","message":"its 6 more characters than line 890","commit_id":"80fb4b3e246eb61d03427454a5e46dcf41bf7acf"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"f62f78244ac32281b5c37949f5104bc9a0ee0225","unresolved":false,"context_lines":[{"line_number":885,"context_line":"::"},{"line_number":886,"context_line":""},{"line_number":887,"context_line":"    {"},{"line_number":888,"context_line":"        \"sp_group\": {"},{"line_number":889,"context_line":"            \"description\": \"Service Providers group description\","},{"line_number":890,"context_line":"            \"service_providers\": ["},{"line_number":891,"context_line":"                \"sp1\","}],"source_content_type":"text/x-rst","patch_set":13,"id":"7a740942_1be09928","line":888,"in_reply_to":"7a740942_803e54d8","updated":"2015-12-07 17:32:16.000000000","message":"openstack-sdks jury leans towards long names so I am going to change them.","commit_id":"80fb4b3e246eb61d03427454a5e46dcf41bf7acf"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"44570a9aa689916881cc0abfa17cba97db16b584","unresolved":false,"context_lines":[{"line_number":888,"context_line":"::"},{"line_number":889,"context_line":""},{"line_number":890,"context_line":"    {"},{"line_number":891,"context_line":"        \"sp_group\": {"},{"line_number":892,"context_line":"            \"description\": \"Service Providers group description\","},{"line_number":893,"context_line":"            \"service_providers\": ["},{"line_number":894,"context_line":"                \"sp1\","}],"source_content_type":"text/x-rst","patch_set":14,"id":"7a740942_e595c686","line":891,"updated":"2015-12-08 08:48:02.000000000","message":"service_provider_group","commit_id":"fb402f43913068f8d16572638417851853a5d9a3"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"44570a9aa689916881cc0abfa17cba97db16b584","unresolved":false,"context_lines":[{"line_number":1113,"context_line":"        },"},{"line_number":1114,"context_line":"        \"service_providers_groups\": ["},{"line_number":1115,"context_line":"            {"},{"line_number":1116,"context_line":"                \"sp_group\": {"},{"line_number":1117,"context_line":"                    \"description\": \"Service Provider group description #1\","},{"line_number":1118,"context_line":"                    \"service_providers\": ["},{"line_number":1119,"context_line":"                        \"sp1\","}],"source_content_type":"text/x-rst","patch_set":14,"id":"7a740942_459dbaba","line":1116,"updated":"2015-12-08 08:48:02.000000000","message":"these should also be: \n\n  service_provider_group","commit_id":"fb402f43913068f8d16572638417851853a5d9a3"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"36aec9efc939129c898cb5c8eb86b7b5e564680d","unresolved":false,"context_lines":[{"line_number":1113,"context_line":"        },"},{"line_number":1114,"context_line":"        \"service_providers_groups\": ["},{"line_number":1115,"context_line":"            {"},{"line_number":1116,"context_line":"                \"sp_group\": {"},{"line_number":1117,"context_line":"                    \"description\": \"Service Provider group description #1\","},{"line_number":1118,"context_line":"                    \"service_providers\": ["},{"line_number":1119,"context_line":"                        \"sp1\","}],"source_content_type":"text/x-rst","patch_set":14,"id":"7a740942_659c760f","line":1116,"in_reply_to":"7a740942_459dbaba","updated":"2015-12-08 09:01:25.000000000","message":"uh, my regex didn\u0027t work well :/ It should be fixed now.","commit_id":"fb402f43913068f8d16572638417851853a5d9a3"}],"specs/backlog/service-providers-filters.rst":[{"author":{"_account_id":10046,"name":"Henrique Truta","email":"henrique@lsd.ufcg.edu.br","username":"henriquetruta"},"change_message_id":"342b3a69504897f4f82e58e9bb826d2612afda8f","unresolved":false,"context_lines":[{"line_number":15,"context_line":"Problem Description"},{"line_number":16,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Part of the Reseller usecase is the possibility of create a subdomain that"},{"line_number":19,"context_line":"will work as a fully enabled administrative entity by itself. This means that"},{"line_number":20,"context_line":"a domain admin should be able to handle resources to be utilized only by a"},{"line_number":21,"context_line":"smaller set of domains/projects of the cloud."}],"source_content_type":"text/x-rst","patch_set":3,"id":"da20952f_76a33750","line":18,"updated":"2015-09-02 14:49:11.000000000","message":"/s/create/creating","commit_id":"103012676e0e37ccc70f0545dc04753b212a0de3"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"92c161416f2eaa5ba17d0edfa23e4cd5b4851566","unresolved":false,"context_lines":[{"line_number":15,"context_line":"Problem Description"},{"line_number":16,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Part of the Reseller usecase is the possibility of create a subdomain that"},{"line_number":19,"context_line":"will work as a fully enabled administrative entity by itself. This means that"},{"line_number":20,"context_line":"a domain admin should be able to handle resources to be utilized only by a"},{"line_number":21,"context_line":"smaller set of domains/projects of the cloud."}],"source_content_type":"text/x-rst","patch_set":3,"id":"da20952f_cf20af9c","line":18,"in_reply_to":"da20952f_76a33750","updated":"2015-09-07 22:10:19.000000000","message":"Done","commit_id":"103012676e0e37ccc70f0545dc04753b212a0de3"},{"author":{"_account_id":10046,"name":"Henrique Truta","email":"henrique@lsd.ufcg.edu.br","username":"henriquetruta"},"change_message_id":"342b3a69504897f4f82e58e9bb826d2612afda8f","unresolved":false,"context_lines":[{"line_number":20,"context_line":"a domain admin should be able to handle resources to be utilized only by a"},{"line_number":21,"context_line":"smaller set of domains/projects of the cloud."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"One important resources is the service provider, it represents remote trusted"},{"line_number":24,"context_line":"clouds and is a key part of the keystone to keystone federation flow. A cloud"},{"line_number":25,"context_line":"that exists as a result from a resell should be able to manage and provide"},{"line_number":26,"context_line":"service providers to its users as desired."}],"source_content_type":"text/x-rst","patch_set":3,"id":"da20952f_76ba5770","line":23,"updated":"2015-09-02 14:49:11.000000000","message":"/s/resources/resource /s/it/that","commit_id":"103012676e0e37ccc70f0545dc04753b212a0de3"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"92c161416f2eaa5ba17d0edfa23e4cd5b4851566","unresolved":false,"context_lines":[{"line_number":20,"context_line":"a domain admin should be able to handle resources to be utilized only by a"},{"line_number":21,"context_line":"smaller set of domains/projects of the cloud."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"One important resources is the service provider, it represents remote trusted"},{"line_number":24,"context_line":"clouds and is a key part of the keystone to keystone federation flow. A cloud"},{"line_number":25,"context_line":"that exists as a result from a resell should be able to manage and provide"},{"line_number":26,"context_line":"service providers to its users as desired."}],"source_content_type":"text/x-rst","patch_set":3,"id":"da20952f_6f3c03c8","line":23,"in_reply_to":"da20952f_76ba5770","updated":"2015-09-07 22:10:19.000000000","message":"Done","commit_id":"103012676e0e37ccc70f0545dc04753b212a0de3"},{"author":{"_account_id":10046,"name":"Henrique Truta","email":"henrique@lsd.ufcg.edu.br","username":"henriquetruta"},"change_message_id":"342b3a69504897f4f82e58e9bb826d2612afda8f","unresolved":false,"context_lines":[{"line_number":33,"context_line":"feature to support the filtering of service providers. It is also necessary to"},{"line_number":34,"context_line":"allow domain/project admins to create service providers objects and filter them"},{"line_number":35,"context_line":"to appear only inside their administrative boundaries - a list of service"},{"line_number":36,"context_line":"providers appear alongside the catalog in a Identity v3 token. This list should"},{"line_number":37,"context_line":"be filtered to return only service providers that are visible in the scope of"},{"line_number":38,"context_line":"the token: if the token is scoped to the domain/project \"containing\" the"},{"line_number":39,"context_line":"service provider."}],"source_content_type":"text/x-rst","patch_set":3,"id":"da20952f_717261af","line":36,"updated":"2015-09-02 14:49:11.000000000","message":"i suggest removing \"Identity\"","commit_id":"103012676e0e37ccc70f0545dc04753b212a0de3"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"3118e63d89fcb439cf62cfc3f3c41a8c2f582ee1","unresolved":false,"context_lines":[{"line_number":23,"context_line":"One important resource is the service provider, it represents remote trusted"},{"line_number":24,"context_line":"clouds and is a key part of the keystone to keystone federation flow. A cloud"},{"line_number":25,"context_line":"that exists as a result from a resell should be able to manage and provide"},{"line_number":26,"context_line":"service providers to its users as desired."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Proposed Change"},{"line_number":29,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":5,"id":"da20952f_63ece592","line":26,"updated":"2015-09-09 07:45:59.000000000","message":"I think it would be good to provide a concrete example....it isn\u0027t obvious why you would want to do this....","commit_id":"6921967d98fcc33f70be6f6d032d40d98d11b57b"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"c417d1679838a911930fcb2414e5454f56733b84","unresolved":false,"context_lines":[{"line_number":23,"context_line":"One important resource is the service provider, it represents remote trusted"},{"line_number":24,"context_line":"clouds and is a key part of the keystone to keystone federation flow. A cloud"},{"line_number":25,"context_line":"that exists as a result from a resell should be able to manage and provide"},{"line_number":26,"context_line":"service providers to its users as desired."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Proposed Change"},{"line_number":29,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":5,"id":"9a1a9d01_04c9d258","line":26,"in_reply_to":"9a1a9d01_012464c2","updated":"2015-09-30 13:34:10.000000000","message":"Thanks Marek, I\u0027ll try to send the patch today or tomorrow \u003d)","commit_id":"6921967d98fcc33f70be6f6d032d40d98d11b57b"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"394faa598b68093db19af833c30df251f498d148","unresolved":false,"context_lines":[{"line_number":23,"context_line":"One important resource is the service provider, it represents remote trusted"},{"line_number":24,"context_line":"clouds and is a key part of the keystone to keystone federation flow. A cloud"},{"line_number":25,"context_line":"that exists as a result from a resell should be able to manage and provide"},{"line_number":26,"context_line":"service providers to its users as desired."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Proposed Change"},{"line_number":29,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":5,"id":"9a1a9d01_012464c2","line":26,"in_reply_to":"da20952f_63ece592","updated":"2015-09-30 13:22:14.000000000","message":"I think the exmaple here:\n\nYou and I are clients on the public cloud that also happen to offer bursting capabilities based on K2K. Now, as we have different billing plans (you pay more and have better SLA guaranteed) you will be able to burst to \u0027better\u0027 partnering clouds. This means, your list of accesible service providers in your token response should be different than mine. That\u0027s just one use case - another may be more business oriented.","commit_id":"6921967d98fcc33f70be6f6d032d40d98d11b57b"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"5b2ab531b97e164b74aa22b5fef0c4f9e7994d2f","unresolved":false,"context_lines":[{"line_number":23,"context_line":"One important resource is the service provider, it represents remote trusted"},{"line_number":24,"context_line":"clouds and is a key part of the keystone to keystone federation flow. A cloud"},{"line_number":25,"context_line":"that exists as a result from a resell should be able to manage and provide"},{"line_number":26,"context_line":"service providers to its users as desired."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Proposed Change"},{"line_number":29,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":5,"id":"9a1a9d01_fd2c04ad","line":26,"in_reply_to":"da20952f_63ece592","updated":"2015-09-25 19:30:30.000000000","message":"Thanks Henry nash, i\u0027ll provide this in the next patch set.","commit_id":"6921967d98fcc33f70be6f6d032d40d98d11b57b"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"4749b1c109428fdf9aa8a5d793ad8afddaa4dee7","unresolved":false,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":"* Martha - Owner of DevIT"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Alex is a owner of a cloud and Martha provides IT services to multiple"},{"line_number":37,"context_line":"enterprise clients using resources that she bought from Alex. Martha received"},{"line_number":38,"context_line":"an invitation to join the IT Federation, she asked Alex and he accepted, but"},{"line_number":39,"context_line":"over time the number of service providers are growing and she doesn\u0027t want to"}],"source_content_type":"text/x-rst","patch_set":6,"id":"7a2fa921_1e71aae0","line":36,"updated":"2015-10-06 23:56:13.000000000","message":"an owner","commit_id":"9fefe709bef460760d5b480558891f5cfbf121e7"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"0b66d6c14f19259b5ca8f6dfee204a59563311ea","unresolved":false,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":"* Martha - Owner of DevIT"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Alex is a owner of a cloud and Martha provides IT services to multiple"},{"line_number":37,"context_line":"enterprise clients using resources that she bought from Alex. Martha received"},{"line_number":38,"context_line":"an invitation to join the IT Federation, she asked Alex and he accepted, but"},{"line_number":39,"context_line":"over time the number of service providers are growing and she doesn\u0027t want to"}],"source_content_type":"text/x-rst","patch_set":6,"id":"7a2fa921_d9fa6cbd","line":36,"in_reply_to":"7a2fa921_1e71aae0","updated":"2015-10-13 17:26:14.000000000","message":"Done","commit_id":"9fefe709bef460760d5b480558891f5cfbf121e7"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"4749b1c109428fdf9aa8a5d793ad8afddaa4dee7","unresolved":false,"context_lines":[{"line_number":38,"context_line":"an invitation to join the IT Federation, she asked Alex and he accepted, but"},{"line_number":39,"context_line":"over time the number of service providers are growing and she doesn\u0027t want to"},{"line_number":40,"context_line":"depend on Alex and also she wants only your users are aware of the existence"},{"line_number":41,"context_line":"of the services providers."},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"General Use Case:"},{"line_number":44,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"7a2fa921_fe12ae61","line":41,"updated":"2015-10-06 23:56:13.000000000","message":"Not sure if I understand this sentence. You mean she doesn\u0027t want to depend on Alex to limit the exposure of service providers to her users?","commit_id":"9fefe709bef460760d5b480558891f5cfbf121e7"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"0b66d6c14f19259b5ca8f6dfee204a59563311ea","unresolved":false,"context_lines":[{"line_number":38,"context_line":"an invitation to join the IT Federation, she asked Alex and he accepted, but"},{"line_number":39,"context_line":"over time the number of service providers are growing and she doesn\u0027t want to"},{"line_number":40,"context_line":"depend on Alex and also she wants only your users are aware of the existence"},{"line_number":41,"context_line":"of the services providers."},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"General Use Case:"},{"line_number":44,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"7a2fa921_59c89c22","line":41,"in_reply_to":"7a2fa921_fe12ae61","updated":"2015-10-13 17:26:14.000000000","message":"For each service provider she needs to ask Alex to add the SP, she didn\u0027t want to have ask him every time.","commit_id":"9fefe709bef460760d5b480558891f5cfbf121e7"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"39e6042fee84599c34878da874c8aa3b6bb5307d","unresolved":false,"context_lines":[{"line_number":54,"context_line":"In order to scope a service provider to domains/projects, we need to expand the"},{"line_number":55,"context_line":"`endpoint group filtering \u003chttps://github.com/openstack/keystone-specs/blob/master/specs/juno/endpoint-group-filter.rst\u003e`_"},{"line_number":56,"context_line":"feature to support the filtering of service providers. It is also necessary to"},{"line_number":57,"context_line":"allow domain/project admins to create service providers objects and filter them"},{"line_number":58,"context_line":"to appear only inside their administrative boundaries - a list of service"},{"line_number":59,"context_line":"providers appear alongside the catalog in an Identity v3 token. This list"},{"line_number":60,"context_line":"should be filtered to return only service providers that are visible in the"}],"source_content_type":"text/x-rst","patch_set":6,"id":"9a1a9d01_28eeb78b","line":57,"updated":"2015-10-02 17:37:22.000000000","message":"is that within the scope of the spec? Maybe this should be proposed in another one?","commit_id":"9fefe709bef460760d5b480558891f5cfbf121e7"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"0b66d6c14f19259b5ca8f6dfee204a59563311ea","unresolved":false,"context_lines":[{"line_number":54,"context_line":"In order to scope a service provider to domains/projects, we need to expand the"},{"line_number":55,"context_line":"`endpoint group filtering \u003chttps://github.com/openstack/keystone-specs/blob/master/specs/juno/endpoint-group-filter.rst\u003e`_"},{"line_number":56,"context_line":"feature to support the filtering of service providers. It is also necessary to"},{"line_number":57,"context_line":"allow domain/project admins to create service providers objects and filter them"},{"line_number":58,"context_line":"to appear only inside their administrative boundaries - a list of service"},{"line_number":59,"context_line":"providers appear alongside the catalog in an Identity v3 token. This list"},{"line_number":60,"context_line":"should be filtered to return only service providers that are visible in the"}],"source_content_type":"text/x-rst","patch_set":6,"id":"5a2ca52d_c220654c","line":57,"in_reply_to":"7a2fa921_d9b5d7d0","updated":"2015-10-13 17:26:14.000000000","message":"Hi Marek, \nthe use of it in reseller is just one of the use cases and not necessarily dependent only extend service to filter Service Provider","commit_id":"9fefe709bef460760d5b480558891f5cfbf121e7"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"9ab21f99c5081161737043c7e615f17915a9a447","unresolved":false,"context_lines":[{"line_number":54,"context_line":"In order to scope a service provider to domains/projects, we need to expand the"},{"line_number":55,"context_line":"`endpoint group filtering \u003chttps://github.com/openstack/keystone-specs/blob/master/specs/juno/endpoint-group-filter.rst\u003e`_"},{"line_number":56,"context_line":"feature to support the filtering of service providers. It is also necessary to"},{"line_number":57,"context_line":"allow domain/project admins to create service providers objects and filter them"},{"line_number":58,"context_line":"to appear only inside their administrative boundaries - a list of service"},{"line_number":59,"context_line":"providers appear alongside the catalog in an Identity v3 token. This list"},{"line_number":60,"context_line":"should be filtered to return only service providers that are visible in the"}],"source_content_type":"text/x-rst","patch_set":6,"id":"9a1a9d01_b972177b","line":57,"in_reply_to":"9a1a9d01_28eeb78b","updated":"2015-10-02 18:36:56.000000000","message":"Hi Marek, i think this is in the scope of the spec. Please take a look at the Reseller use case.","commit_id":"9fefe709bef460760d5b480558891f5cfbf121e7"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"d0a0293edf9a93f1fa6cff64e0ad6acbf4401e0e","unresolved":false,"context_lines":[{"line_number":54,"context_line":"In order to scope a service provider to domains/projects, we need to expand the"},{"line_number":55,"context_line":"`endpoint group filtering \u003chttps://github.com/openstack/keystone-specs/blob/master/specs/juno/endpoint-group-filter.rst\u003e`_"},{"line_number":56,"context_line":"feature to support the filtering of service providers. It is also necessary to"},{"line_number":57,"context_line":"allow domain/project admins to create service providers objects and filter them"},{"line_number":58,"context_line":"to appear only inside their administrative boundaries - a list of service"},{"line_number":59,"context_line":"providers appear alongside the catalog in an Identity v3 token. This list"},{"line_number":60,"context_line":"should be filtered to return only service providers that are visible in the"}],"source_content_type":"text/x-rst","patch_set":6,"id":"7a2fa921_d9b5d7d0","line":57,"in_reply_to":"9a1a9d01_b972177b","updated":"2015-10-05 14:23:19.000000000","message":"so, the ability to do so will be implemented under reseller umbrella, not this spec, right?","commit_id":"9fefe709bef460760d5b480558891f5cfbf121e7"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"4749b1c109428fdf9aa8a5d793ad8afddaa4dee7","unresolved":false,"context_lines":[{"line_number":62,"context_line":"the service provider."},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"Service providers without filters are considered to be a resource of the whole"},{"line_number":65,"context_line":"cloud and should not be filtered."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"Alternatives"},{"line_number":68,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"7a2fa921_f96408e6","line":65,"updated":"2015-10-06 23:56:13.000000000","message":"That not how endpoint filtering works today. This is dictated by a configurable option\n\nhttps://github.com/openstack/keystone/blob/master/etc/keystone.conf.sample#L602\n\nWe may need something comparable.","commit_id":"9fefe709bef460760d5b480558891f5cfbf121e7"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"0b66d6c14f19259b5ca8f6dfee204a59563311ea","unresolved":false,"context_lines":[{"line_number":62,"context_line":"the service provider."},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"Service providers without filters are considered to be a resource of the whole"},{"line_number":65,"context_line":"cloud and should not be filtered."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"Alternatives"},{"line_number":68,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"5a2ca52d_22403956","line":65,"in_reply_to":"7a2fa921_f96408e6","updated":"2015-10-13 17:26:14.000000000","message":"Make sense guang-yee, \nIf I\u0027ve understand correctly, we should have a configuration to filter Service Providers right? (API impact in this case?)","commit_id":"9fefe709bef460760d5b480558891f5cfbf121e7"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"4749b1c109428fdf9aa8a5d793ad8afddaa4dee7","unresolved":false,"context_lines":[{"line_number":82,"context_line":"        \"endpoint_group\": {"},{"line_number":83,"context_line":"            \"description\": \"Example Service Provider Endpoint Group\","},{"line_number":84,"context_line":"            \"filters\": {"},{"line_number":85,"context_line":"                \"service_provider_id\": \"sp1\""},{"line_number":86,"context_line":"            },"},{"line_number":87,"context_line":"            \"name\": \"EP-GROUP-1\""},{"line_number":88,"context_line":"        }"}],"source_content_type":"text/x-rst","patch_set":6,"id":"7a2fa921_b9e3f032","line":85,"updated":"2015-10-06 23:56:13.000000000","message":"Isn\u0027t this API change?\n\nhttps://github.com/openstack/keystone-specs/blob/master/api/v3/identity-api-v3-os-ep-filter-ext.rst#endpoint-groups\n\nWe need to update the filter restrictions.","commit_id":"9fefe709bef460760d5b480558891f5cfbf121e7"},{"author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"change_message_id":"0b66d6c14f19259b5ca8f6dfee204a59563311ea","unresolved":false,"context_lines":[{"line_number":82,"context_line":"        \"endpoint_group\": {"},{"line_number":83,"context_line":"            \"description\": \"Example Service Provider Endpoint Group\","},{"line_number":84,"context_line":"            \"filters\": {"},{"line_number":85,"context_line":"                \"service_provider_id\": \"sp1\""},{"line_number":86,"context_line":"            },"},{"line_number":87,"context_line":"            \"name\": \"EP-GROUP-1\""},{"line_number":88,"context_line":"        }"}],"source_content_type":"text/x-rst","patch_set":6,"id":"5a2ca52d_e5ac8bef","line":85,"in_reply_to":"7a2fa921_b9e3f032","updated":"2015-10-13 17:26:14.000000000","message":"Agree, since the filter used must be an endpoint property. as described in your link.","commit_id":"9fefe709bef460760d5b480558891f5cfbf121e7"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"741715e86f870f8238d452e3bd09c8ca85e21824","unresolved":false,"context_lines":[{"line_number":29,"context_line":"providers allowed within current project/domain scope."},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"Proposed Change"},{"line_number":32,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"In order to scope a service provider to domains/projects, we need to expand the"},{"line_number":35,"context_line":"`endpoint group filtering"}],"source_content_type":"text/x-rst","patch_set":8,"id":"ba8a016a_c86ac51a","line":32,"updated":"2015-11-16 15:00:49.000000000","message":"we need to cover the handling of the current service providers list? Like, today they are \"cloud-wide\" and will remain like that, correct?","commit_id":"f650c512ca69592d30e2893c6ac3c8e5f6755c8e"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"0cbb39c0a7d3c2cbdbedd75336e6e74e3df556e9","unresolved":false,"context_lines":[{"line_number":29,"context_line":"providers allowed within current project/domain scope."},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"Proposed Change"},{"line_number":32,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"In order to scope a service provider to domains/projects, we need to expand the"},{"line_number":35,"context_line":"`endpoint group filtering"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_f6ae5697","line":32,"in_reply_to":"9a8ffd7b_448d6c7a","updated":"2015-11-25 12:14:50.000000000","message":"since today the complete service provider list is returned without any filters, they will remain the same after this bp is merged, correct? The filters will be applied for new service_provider endpoints and will require updates from cloud providers in order to have the same behavior for previous defined service_providers.","commit_id":"f650c512ca69592d30e2893c6ac3c8e5f6755c8e"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"ae5a00e497efa7a336c103837feb7aa49cea2e2d","unresolved":false,"context_lines":[{"line_number":29,"context_line":"providers allowed within current project/domain scope."},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"Proposed Change"},{"line_number":32,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"In order to scope a service provider to domains/projects, we need to expand the"},{"line_number":35,"context_line":"`endpoint group filtering"}],"source_content_type":"text/x-rst","patch_set":8,"id":"ba8a016a_d2c0f97e","line":32,"in_reply_to":"ba8a016a_c86ac51a","updated":"2015-11-17 12:40:18.000000000","message":"why? We add new functionality and admins can shorten the list.\nI was actually thinking what happens if no filtering is applied. We might add a configuration item in keystone.conf, something like\nservice_providers_policy \u003d [allow,block] where allow would list all available service providers and block would return empty list. But then it would basically add lots of burden on filtering mechanism and we would possibly need work on something completely new.","commit_id":"f650c512ca69592d30e2893c6ac3c8e5f6755c8e"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"bfd8612db58210bc53ba2ef831463b514caf5d94","unresolved":false,"context_lines":[{"line_number":29,"context_line":"providers allowed within current project/domain scope."},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"Proposed Change"},{"line_number":32,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"In order to scope a service provider to domains/projects, we need to expand the"},{"line_number":35,"context_line":"`endpoint group filtering"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_448d6c7a","line":32,"in_reply_to":"ba8a016a_d2c0f97e","updated":"2015-11-24 13:29:47.000000000","message":"If no filtering is applied, we may do the same as for current endpoint filtering: there is an option called return_all_endpoints_if_no_filter.\n\nWe may add another option for service providers.","commit_id":"f650c512ca69592d30e2893c6ac3c8e5f6755c8e"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"d6ca445bc828ce507e1f7e2d2b05aaa1290e6810","unresolved":false,"context_lines":[{"line_number":39,"context_line":""},{"line_number":40,"context_line":"* scoped project"},{"line_number":41,"context_line":"* domain of the scoped project"},{"line_number":42,"context_line":"* scoped domains"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Effectively all service providers in the token response should be"},{"line_number":45,"context_line":"filtered by configured filters."}],"source_content_type":"text/x-rst","patch_set":8,"id":"ba8a016a_aece5e81","line":42,"updated":"2015-11-16 18:51:05.000000000","message":"endpoint filtering can only associate endpoints with a project right now. It does not work with domains or hierarchical projects. So yes, we\u0027ll need to enhance it once hierarchical project implementation is done.","commit_id":"f650c512ca69592d30e2893c6ac3c8e5f6755c8e"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"bfd8612db58210bc53ba2ef831463b514caf5d94","unresolved":false,"context_lines":[{"line_number":39,"context_line":""},{"line_number":40,"context_line":"* scoped project"},{"line_number":41,"context_line":"* domain of the scoped project"},{"line_number":42,"context_line":"* scoped domains"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Effectively all service providers in the token response should be"},{"line_number":45,"context_line":"filtered by configured filters."}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_44524cdf","line":42,"in_reply_to":"ba8a016a_aece5e81","updated":"2015-11-24 13:29:47.000000000","message":"++ for domains not currently supported.\n\nHierarchical projects are done. We can enhance it already. How would it be, Guang ? You think about inherited filtering ?","commit_id":"f650c512ca69592d30e2893c6ac3c8e5f6755c8e"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"d6ca445bc828ce507e1f7e2d2b05aaa1290e6810","unresolved":false,"context_lines":[{"line_number":49,"context_line":""},{"line_number":50,"context_line":"1) Don\u0027t change anything"},{"line_number":51,"context_line":"2) Provide allowed service providers per project/domain/project\u0027s domain in a"},{"line_number":52,"context_line":"   static file."},{"line_number":53,"context_line":""},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"Data Model Impact"}],"source_content_type":"text/x-rst","patch_set":8,"id":"ba8a016a_eeaa2685","line":52,"updated":"2015-11-16 18:51:05.000000000","message":"Please no static files. This is administration function and should be done via APIs.","commit_id":"f650c512ca69592d30e2893c6ac3c8e5f6755c8e"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"ae5a00e497efa7a336c103837feb7aa49cea2e2d","unresolved":false,"context_lines":[{"line_number":49,"context_line":""},{"line_number":50,"context_line":"1) Don\u0027t change anything"},{"line_number":51,"context_line":"2) Provide allowed service providers per project/domain/project\u0027s domain in a"},{"line_number":52,"context_line":"   static file."},{"line_number":53,"context_line":""},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"Data Model Impact"}],"source_content_type":"text/x-rst","patch_set":8,"id":"ba8a016a_d7b46ef3","line":52,"in_reply_to":"ba8a016a_eeaa2685","updated":"2015-11-17 12:40:18.000000000","message":"I simply put this as an alternative to emphasisze how good proposed solution would be :-)","commit_id":"f650c512ca69592d30e2893c6ac3c8e5f6755c8e"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"d6ca445bc828ce507e1f7e2d2b05aaa1290e6810","unresolved":false,"context_lines":[{"line_number":59,"context_line":"  ``service_providers`` as exemplified below::"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    {"},{"line_number":62,"context_line":"        \"endpoint_group\": {"},{"line_number":63,"context_line":"            \"description\": \"Example Service Provider Endpoint Group\","},{"line_number":64,"context_line":"            \"filters\": {"},{"line_number":65,"context_line":"                \"service_provider_id\": \"sp1\""}],"source_content_type":"text/x-rst","patch_set":8,"id":"ba8a016a_0e9e8a56","line":62,"updated":"2015-11-16 18:51:05.000000000","message":"I am not sure if this will work as endpoints and service providers are fundamentally different in token responses right now. SPs are not part of service catalog.","commit_id":"f650c512ca69592d30e2893c6ac3c8e5f6755c8e"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"0cbb39c0a7d3c2cbdbedd75336e6e74e3df556e9","unresolved":false,"context_lines":[{"line_number":59,"context_line":"  ``service_providers`` as exemplified below::"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    {"},{"line_number":62,"context_line":"        \"endpoint_group\": {"},{"line_number":63,"context_line":"            \"description\": \"Example Service Provider Endpoint Group\","},{"line_number":64,"context_line":"            \"filters\": {"},{"line_number":65,"context_line":"                \"service_provider_id\": \"sp1\""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_56f3a29e","line":62,"in_reply_to":"9a8ffd7b_db805649","updated":"2015-11-25 12:14:50.000000000","message":"as pointed out, this will require a different implementation since we didn\u0027t follow the endpoints \"way\" when defining service providers.","commit_id":"f650c512ca69592d30e2893c6ac3c8e5f6755c8e"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"ae5a00e497efa7a336c103837feb7aa49cea2e2d","unresolved":false,"context_lines":[{"line_number":59,"context_line":"  ``service_providers`` as exemplified below::"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    {"},{"line_number":62,"context_line":"        \"endpoint_group\": {"},{"line_number":63,"context_line":"            \"description\": \"Example Service Provider Endpoint Group\","},{"line_number":64,"context_line":"            \"filters\": {"},{"line_number":65,"context_line":"                \"service_provider_id\": \"sp1\""}],"source_content_type":"text/x-rst","patch_set":8,"id":"ba8a016a_724cad70","line":62,"in_reply_to":"ba8a016a_0e9e8a56","updated":"2015-11-17 12:40:18.000000000","message":"Hm, you might be right. But then it would mean adding new APIs.","commit_id":"f650c512ca69592d30e2893c6ac3c8e5f6755c8e"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"bfd8612db58210bc53ba2ef831463b514caf5d94","unresolved":false,"context_lines":[{"line_number":59,"context_line":"  ``service_providers`` as exemplified below::"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    {"},{"line_number":62,"context_line":"        \"endpoint_group\": {"},{"line_number":63,"context_line":"            \"description\": \"Example Service Provider Endpoint Group\","},{"line_number":64,"context_line":"            \"filters\": {"},{"line_number":65,"context_line":"                \"service_provider_id\": \"sp1\""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_db805649","line":62,"in_reply_to":"ba8a016a_724cad70","updated":"2015-11-24 13:29:47.000000000","message":"No it won\u0027t work.\n\nThe way endpoint filtering today is not similar to this example:\n\nFirst, you get i) a single endpoint or ii) an endpoint group*.\nThen, you assign it to a project. That\u0027s all.\n\nThe filters in endpoint groups are intended to filter attributes of endpoints [1]. This way service_provider_id cannot be a filter to them.\n\nWhat we need to do is to associate endpoints with service providers and/or domains (as per lines 40-42). This will require new APIs to be defined.\n\n[1] https://github.com/openstack/keystone/blob/dafbf5b8b2ef93ef0e785432fd34629a9d76b248/keystone/catalog/controllers.py#L404-L418","commit_id":"f650c512ca69592d30e2893c6ac3c8e5f6755c8e"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"bfd8612db58210bc53ba2ef831463b514caf5d94","unresolved":false,"context_lines":[{"line_number":68,"context_line":"        }"},{"line_number":69,"context_line":"    }"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"* The rule above should filter the ``service_provider`` with id ``sp1``."},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"REST API Impact"},{"line_number":74,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_c4af1c93","line":71,"updated":"2015-11-24 13:29:47.000000000","message":"(nit) ID","commit_id":"f650c512ca69592d30e2893c6ac3c8e5f6755c8e"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"bfd8612db58210bc53ba2ef831463b514caf5d94","unresolved":false,"context_lines":[{"line_number":74,"context_line":"---------------"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"* None, endpoint group API accepts any key/value inside its ``filters``"},{"line_number":77,"context_line":"  attribute."},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"Other End User Impact"},{"line_number":80,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_3b6c029c","line":77,"updated":"2015-11-24 13:29:47.000000000","message":"This will need new APIs to associate endpoint_groups with SPs and domains.","commit_id":"f650c512ca69592d30e2893c6ac3c8e5f6755c8e"}],"specs/mitaka/service-providers-filters.rst":[{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"7dc9d9f5886442142a6fcc4dbb26d1ca94864371","unresolved":false,"context_lines":[{"line_number":19,"context_line":"As of today, each authenticated user will get a `service catalog` as well as"},{"line_number":20,"context_line":"list of trusted `service providers` within token response. This may pose"},{"line_number":21,"context_line":"performance, security usability and last but not least, legal risks.  A client"},{"line_number":22,"context_line":"scoping his token to a project/domain should be given a list of `service"},{"line_number":23,"context_line":"providers` to whom he can burst out (given his current scope)."},{"line_number":24,"context_line":"Getting a full list of cloud-wide trusted service providers will be very"},{"line_number":25,"context_line":"inefficient in big cloud deployments, as huge lists of services providers will"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_0c49c68e","line":22,"updated":"2015-11-30 16:25:15.000000000","message":"nit: project or domain*","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"bc9e4c3a85a83f52275be0e8b2bd6c6ebe63b09c","unresolved":false,"context_lines":[{"line_number":19,"context_line":"As of today, each authenticated user will get a `service catalog` as well as"},{"line_number":20,"context_line":"list of trusted `service providers` within token response. This may pose"},{"line_number":21,"context_line":"performance, security usability and last but not least, legal risks.  A client"},{"line_number":22,"context_line":"scoping his token to a project/domain should be given a list of `service"},{"line_number":23,"context_line":"providers` to whom he can burst out (given his current scope)."},{"line_number":24,"context_line":"Getting a full list of cloud-wide trusted service providers will be very"},{"line_number":25,"context_line":"inefficient in big cloud deployments, as huge lists of services providers will"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_2298091b","line":22,"in_reply_to":"9a8ffd7b_0c49c68e","updated":"2015-12-02 08:12:58.000000000","message":"Done","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"7dc9d9f5886442142a6fcc4dbb26d1ca94864371","unresolved":false,"context_lines":[{"line_number":20,"context_line":"list of trusted `service providers` within token response. This may pose"},{"line_number":21,"context_line":"performance, security usability and last but not least, legal risks.  A client"},{"line_number":22,"context_line":"scoping his token to a project/domain should be given a list of `service"},{"line_number":23,"context_line":"providers` to whom he can burst out (given his current scope)."},{"line_number":24,"context_line":"Getting a full list of cloud-wide trusted service providers will be very"},{"line_number":25,"context_line":"inefficient in big cloud deployments, as huge lists of services providers will"},{"line_number":26,"context_line":"be returned to all the users.  Public cloud providers should also limit service"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_0c30e606","line":23,"updated":"2015-11-30 16:25:15.000000000","message":"s/burst out/utilize/","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"bc9e4c3a85a83f52275be0e8b2bd6c6ebe63b09c","unresolved":false,"context_lines":[{"line_number":20,"context_line":"list of trusted `service providers` within token response. This may pose"},{"line_number":21,"context_line":"performance, security usability and last but not least, legal risks.  A client"},{"line_number":22,"context_line":"scoping his token to a project/domain should be given a list of `service"},{"line_number":23,"context_line":"providers` to whom he can burst out (given his current scope)."},{"line_number":24,"context_line":"Getting a full list of cloud-wide trusted service providers will be very"},{"line_number":25,"context_line":"inefficient in big cloud deployments, as huge lists of services providers will"},{"line_number":26,"context_line":"be returned to all the users.  Public cloud providers should also limit service"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_e2a1a147","line":23,"in_reply_to":"9a8ffd7b_0c30e606","updated":"2015-12-02 08:12:58.000000000","message":"Done","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"7dc9d9f5886442142a6fcc4dbb26d1ca94864371","unresolved":false,"context_lines":[{"line_number":57,"context_line":"Alternatives"},{"line_number":58,"context_line":"------------"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"Propose compeletely new API, independent from OS-EP-FILTER API being"},{"line_number":61,"context_line":"alternative for filtering service providers. The advantage of it would be"},{"line_number":62,"context_line":"ability to add more suitable options from the first iteration of this effort."},{"line_number":63,"context_line":"Additional filtering capabilities would be:"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_476b2986","line":60,"updated":"2015-11-30 16:25:15.000000000","message":"completely*","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"7dc9d9f5886442142a6fcc4dbb26d1ca94864371","unresolved":false,"context_lines":[{"line_number":59,"context_line":""},{"line_number":60,"context_line":"Propose compeletely new API, independent from OS-EP-FILTER API being"},{"line_number":61,"context_line":"alternative for filtering service providers. The advantage of it would be"},{"line_number":62,"context_line":"ability to add more suitable options from the first iteration of this effort."},{"line_number":63,"context_line":"Additional filtering capabilities would be:"},{"line_number":64,"context_line":"* associating a project with service provider(s)"},{"line_number":65,"context_line":"* associating all projects within a domain with service provider(s)"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_a7f535cc","line":62,"updated":"2015-11-30 16:25:15.000000000","message":"the ability*","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"7dc9d9f5886442142a6fcc4dbb26d1ca94864371","unresolved":false,"context_lines":[{"line_number":60,"context_line":"Propose compeletely new API, independent from OS-EP-FILTER API being"},{"line_number":61,"context_line":"alternative for filtering service providers. The advantage of it would be"},{"line_number":62,"context_line":"ability to add more suitable options from the first iteration of this effort."},{"line_number":63,"context_line":"Additional filtering capabilities would be:"},{"line_number":64,"context_line":"* associating a project with service provider(s)"},{"line_number":65,"context_line":"* associating all projects within a domain with service provider(s)"},{"line_number":66,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_27d70525","line":63,"updated":"2015-11-30 16:25:15.000000000","message":"This would require a deprecation of the current OS-EP-FILTER API.","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"bc9e4c3a85a83f52275be0e8b2bd6c6ebe63b09c","unresolved":false,"context_lines":[{"line_number":60,"context_line":"Propose compeletely new API, independent from OS-EP-FILTER API being"},{"line_number":61,"context_line":"alternative for filtering service providers. The advantage of it would be"},{"line_number":62,"context_line":"ability to add more suitable options from the first iteration of this effort."},{"line_number":63,"context_line":"Additional filtering capabilities would be:"},{"line_number":64,"context_line":"* associating a project with service provider(s)"},{"line_number":65,"context_line":"* associating all projects within a domain with service provider(s)"},{"line_number":66,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_022b85ec","line":63,"in_reply_to":"9a8ffd7b_27d70525","updated":"2015-12-02 08:12:58.000000000","message":"why? old api would stay, new would be similar but about something completely different (service providers, not endpoints).","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"7dc9d9f5886442142a6fcc4dbb26d1ca94864371","unresolved":false,"context_lines":[{"line_number":89,"context_line":"---------------"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"It would be an extension to existing OS-EP-FILTER API, however new routes would"},{"line_number":92,"context_line":"need to be added as we would handle additional use case."},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"Other End User Impact"},{"line_number":95,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_6273bb16","line":92,"updated":"2015-11-30 16:25:15.000000000","message":"What would the calls be for this? Adding of sp groups etc...","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"bc9e4c3a85a83f52275be0e8b2bd6c6ebe63b09c","unresolved":false,"context_lines":[{"line_number":89,"context_line":"---------------"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"It would be an extension to existing OS-EP-FILTER API, however new routes would"},{"line_number":92,"context_line":"need to be added as we would handle additional use case."},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"Other End User Impact"},{"line_number":95,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9a8ffd7b_82269514","line":92,"in_reply_to":"9a8ffd7b_6273bb16","updated":"2015-12-02 08:12:58.000000000","message":"describer in the api doc.","commit_id":"8d8bdce4d54862e64454e7fa520fb92a99277b1d"}]}
