)]}'
{"specs/newton/fixedips-api.rst":[{"author":{"_account_id":8174,"name":"Tim Simmons","email":"tim.r.simmons@gmail.com","username":"TimSimmons"},"change_message_id":"47b09489785bbbac6c30c0bc2ec933a6baaa363e","unresolved":false,"context_lines":[{"line_number":4,"context_line":"http://creativecommons.org/licenses/by/3.0/legalcode"},{"line_number":5,"context_line":""},{"line_number":6,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":7,"context_line":"The design of /v2/reverse/fixedips API"},{"line_number":8,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"https://blueprints.launchpad.net/designate/+spec/fixed-ip-ptrs"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3ac371cc_7c059278","line":7,"updated":"2016-08-16 16:31:26.000000000","message":"This title shows up a lot of places. Perhaps make it:\n\"Fixed IP PTR Records\" or something that describes what the change is, rather than in terms of the api that the change will manifest in.","commit_id":"a072ca45c2d0fe2e9fda52415be337c73fd92a8d"},{"author":{"_account_id":8174,"name":"Tim Simmons","email":"tim.r.simmons@gmail.com","username":"TimSimmons"},"change_message_id":"47b09489785bbbac6c30c0bc2ec933a6baaa363e","unresolved":false,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"This spec proposes to add an API for PTR operations on the allocated fixed IP of cloud servers"},{"line_number":17,"context_line":"and load balancers."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Proposed change"},{"line_number":21,"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":1,"id":"3ac371cc_e1855dad","line":18,"updated":"2016-08-16 16:31:26.000000000","message":"I don\u0027t think this is really the \"problem description\". It\u0027s pretty well explained (albeit outdated) here:\nhttps://blueprints.launchpad.net/designate/+spec/fixed-ip-ptrs\n\nPerhaps adapt that.\n\nWhat we want to know here is what the problem we\u0027re trying to solve is.","commit_id":"a072ca45c2d0fe2e9fda52415be337c73fd92a8d"},{"author":{"_account_id":8174,"name":"Tim Simmons","email":"tim.r.simmons@gmail.com","username":"TimSimmons"},"change_message_id":"47b09489785bbbac6c30c0bc2ec933a6baaa363e","unresolved":false,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Proposed change"},{"line_number":21,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"1. CRUD operations on /v2/reverse/fixedips endpoint;"},{"line_number":24,"context_line":"2. Optional IP validation via a pluggable way."},{"line_number":25,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3ac371cc_017999c8","line":22,"updated":"2016-08-16 16:31:26.000000000","message":"I think the proposed change here is to add similar handling of Fixed IP PTR records that currently exists for Floating IPs. This includes API, DB, etc. Maybe explain a bit more of the guts of the change here. APIs, DB tables, backend results, etc.","commit_id":"a072ca45c2d0fe2e9fda52415be337c73fd92a8d"},{"author":{"_account_id":8174,"name":"Tim Simmons","email":"tim.r.simmons@gmail.com","username":"TimSimmons"},"change_message_id":"47b09489785bbbac6c30c0bc2ec933a6baaa363e","unresolved":false,"context_lines":[{"line_number":43,"context_line":"  Content-Type: application/json"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"  {"},{"line_number":46,"context_line":"    \"records\" : [{"},{"line_number":47,"context_line":"      \"name\" : \"email.example.com\","},{"line_number":48,"context_line":"      \"type\" : \"PTR\","},{"line_number":49,"context_line":"      \"data\" : \"192.168.1.2\","}],"source_content_type":"text/x-rst","patch_set":1,"id":"3ac371cc_bc9a6a61","line":46,"updated":"2016-08-16 16:31:26.000000000","message":"Are we allowing people to create multiple records at one time?","commit_id":"a072ca45c2d0fe2e9fda52415be337c73fd92a8d"},{"author":{"_account_id":15452,"name":"Rahman Syed","email":"rahman.syed@gmail.com","username":"rahmansyed"},"change_message_id":"ecdec9a789d4a07c805b5a945e7b0cc28d25f302","unresolved":false,"context_lines":[{"line_number":46,"context_line":"    \"records\" : [{"},{"line_number":47,"context_line":"      \"name\" : \"email.example.com\","},{"line_number":48,"context_line":"      \"type\" : \"PTR\","},{"line_number":49,"context_line":"      \"data\" : \"192.168.1.2\","},{"line_number":50,"context_line":"      \"ttl\" : 6000"},{"line_number":51,"context_line":"    }],"},{"line_number":52,"context_line":"    \"metadata\" : {"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3ac371cc_5eff55aa","line":49,"updated":"2016-08-18 18:46:28.000000000","message":"Do the name/data fields feel reversed to you?\n\nA recordset:\nname \u003d example.org.\ndata \u003d [\"10.1.0.2\"]\n\nPTR record (proposal):\nname \u003d \"10.1.0.2\"\ndata \u003d \"example.org.\"\n\nThis might be inconsistent with the rest of the API, but you could rename \"data\" to \"ptrdname\" (which seems a common enough usage).","commit_id":"a072ca45c2d0fe2e9fda52415be337c73fd92a8d"},{"author":{"_account_id":8174,"name":"Tim Simmons","email":"tim.r.simmons@gmail.com","username":"TimSimmons"},"change_message_id":"47b09489785bbbac6c30c0bc2ec933a6baaa363e","unresolved":false,"context_lines":[{"line_number":56,"context_line":"    }"},{"line_number":57,"context_line":"  }"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"The metadata section is for ip ownership validation, and it is optional."},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"**Example response:**"},{"line_number":62,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3ac371cc_1c31feec","line":59,"updated":"2016-08-16 16:31:26.000000000","message":"When we talked about this, the `metadata` isn\u0027t specific to any one use case. (this probably deserves to be explained in depth somewhere in the spec).\n\nWhat we had talked about is that a user would be able to specify metadata key-value pairs that would be handed to some sort of middleware, similar to the Pool Scheduler filters:\nhttps://github.com/openstack/designate/tree/master/designate/scheduler/filters\n\nThis would allow any operator who needs to do some sort of work before assigning one of these PTR records (like verifying that it\u0027s an IP that exists within the space that can be assigned effectively, or verifying ownership of the IP) can do that. But it doesn\u0027t tie the upstream contract into any of those implementations. The filters are enabled via entrypoints and configuration.","commit_id":"a072ca45c2d0fe2e9fda52415be337c73fd92a8d"},{"author":{"_account_id":8099,"name":"Graham Hayes","email":"gr@ham.ie","username":"graham"},"change_message_id":"f48f1b33337bdd431f41477f6a689a72842df7b8","unresolved":false,"context_lines":[{"line_number":56,"context_line":"    }"},{"line_number":57,"context_line":"  }"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"The metadata section is for ip ownership validation, and it is optional."},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"**Example response:**"},{"line_number":62,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3ac371cc_62068ccf","line":59,"in_reply_to":"3ac371cc_1c31feec","updated":"2016-08-16 16:46:39.000000000","message":"I would like to see more detail about the metadata before we talk about it - I am not sure I see the usage here.","commit_id":"a072ca45c2d0fe2e9fda52415be337c73fd92a8d"},{"author":{"_account_id":15452,"name":"Rahman Syed","email":"rahman.syed@gmail.com","username":"rahmansyed"},"change_message_id":"ecdec9a789d4a07c805b5a945e7b0cc28d25f302","unresolved":false,"context_lines":[{"line_number":120,"context_line":""},{"line_number":121,"context_line":"GET /v2/reverse/fixedips"},{"line_number":122,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":123,"context_line":"List PTR records owned by a project"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"**Example request:**"},{"line_number":126,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3ac371cc_5ec0f52a","line":123,"updated":"2016-08-18 18:46:28.000000000","message":"Do you intend to include filtering as part of the spec?  I didn\u0027t see a reference to it yet.","commit_id":"a072ca45c2d0fe2e9fda52415be337c73fd92a8d"},{"author":{"_account_id":8174,"name":"Tim Simmons","email":"tim.r.simmons@gmail.com","username":"TimSimmons"},"change_message_id":"47b09489785bbbac6c30c0bc2ec933a6baaa363e","unresolved":false,"context_lines":[{"line_number":238,"context_line":"---------------"},{"line_number":239,"context_line":"Central communicates with storage upon messages received from api, and returns requested"},{"line_number":240,"context_line":"PTR objects to api."},{"line_number":241,"context_line":""},{"line_number":242,"context_line":""},{"line_number":243,"context_line":"Storage Changes"},{"line_number":244,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3ac371cc_bccb8aa4","line":241,"updated":"2016-08-16 16:31:26.000000000","message":"It\u0027s important to explain here how the client request would turn into a zone/record on the dns backend, because that logic must live in central. Are we going to create /24 in-addr.arpa zones and create records on them? Probably, explain how that works here. Who is the tenant for that zone? How is it shared, is there going to be a problem creating recordsets with different tenants on that zone?","commit_id":"a072ca45c2d0fe2e9fda52415be337c73fd92a8d"},{"author":{"_account_id":8174,"name":"Tim Simmons","email":"tim.r.simmons@gmail.com","username":"TimSimmons"},"change_message_id":"47b09489785bbbac6c30c0bc2ec933a6baaa363e","unresolved":false,"context_lines":[{"line_number":242,"context_line":""},{"line_number":243,"context_line":"Storage Changes"},{"line_number":244,"context_line":"---------------"},{"line_number":245,"context_line":"A new PTR table."},{"line_number":246,"context_line":""},{"line_number":247,"context_line":"Other Changes"},{"line_number":248,"context_line":"-------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3ac371cc_dcc0067f","line":245,"updated":"2016-08-16 16:31:26.000000000","message":"What does the schema for this new table look like?","commit_id":"a072ca45c2d0fe2e9fda52415be337c73fd92a8d"},{"author":{"_account_id":8174,"name":"Tim Simmons","email":"tim.r.simmons@gmail.com","username":"TimSimmons"},"change_message_id":"47b09489785bbbac6c30c0bc2ec933a6baaa363e","unresolved":false,"context_lines":[{"line_number":261,"context_line":""},{"line_number":262,"context_line":"Milestones"},{"line_number":263,"context_line":"----------"},{"line_number":264,"context_line":"newton-1"},{"line_number":265,"context_line":""},{"line_number":266,"context_line":"Work Items"},{"line_number":267,"context_line":"----------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3ac371cc_fc96a24a","line":264,"updated":"2016-08-16 16:31:26.000000000","message":"I\u0027m pretty sure this won\u0027t land in Newton, probably Octa at the earliest. \n\nhttp://releases.openstack.org/\nhttp://releases.openstack.org/newton/schedule.html","commit_id":"a072ca45c2d0fe2e9fda52415be337c73fd92a8d"},{"author":{"_account_id":8099,"name":"Graham Hayes","email":"gr@ham.ie","username":"graham"},"change_message_id":"f48f1b33337bdd431f41477f6a689a72842df7b8","unresolved":false,"context_lines":[{"line_number":261,"context_line":""},{"line_number":262,"context_line":"Milestones"},{"line_number":263,"context_line":"----------"},{"line_number":264,"context_line":"newton-1"},{"line_number":265,"context_line":""},{"line_number":266,"context_line":"Work Items"},{"line_number":267,"context_line":"----------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3ac371cc_822aa82a","line":264,"in_reply_to":"3ac371cc_fc96a24a","updated":"2016-08-16 16:46:39.000000000","message":"ocata-1 or 2 is the best bet","commit_id":"a072ca45c2d0fe2e9fda52415be337c73fd92a8d"},{"author":{"_account_id":8174,"name":"Tim Simmons","email":"tim.r.simmons@gmail.com","username":"TimSimmons"},"change_message_id":"47b09489785bbbac6c30c0bc2ec933a6baaa363e","unresolved":false,"context_lines":[{"line_number":265,"context_line":""},{"line_number":266,"context_line":"Work Items"},{"line_number":267,"context_line":"----------"},{"line_number":268,"context_line":""},{"line_number":269,"context_line":"* Make code changes to api, central and storage"},{"line_number":270,"context_line":"* Add unit and functional tests."},{"line_number":271,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3ac371cc_7cd4721f","line":268,"updated":"2016-08-16 16:31:26.000000000","message":"I\u0027d love to see this fleshed out a bit more.","commit_id":"a072ca45c2d0fe2e9fda52415be337c73fd92a8d"},{"author":{"_account_id":8099,"name":"Graham Hayes","email":"gr@ham.ie","username":"graham"},"change_message_id":"f48f1b33337bdd431f41477f6a689a72842df7b8","unresolved":false,"context_lines":[{"line_number":265,"context_line":""},{"line_number":266,"context_line":"Work Items"},{"line_number":267,"context_line":"----------"},{"line_number":268,"context_line":""},{"line_number":269,"context_line":"* Make code changes to api, central and storage"},{"line_number":270,"context_line":"* Add unit and functional tests."},{"line_number":271,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3ac371cc_62d4cc1f","line":268,"in_reply_to":"3ac371cc_7cd4721f","updated":"2016-08-16 16:46:39.000000000","message":"Yeap, this will be 2 or 3 patches at least.","commit_id":"a072ca45c2d0fe2e9fda52415be337c73fd92a8d"}]}
