)]}'
{"doc/source/aggregates.rst":[{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"3b31ad7b7e4907b7afcd5f645b207d934372f217","unresolved":false,"context_lines":[{"line_number":25,"context_line":"Availability Zones (AZs)"},{"line_number":26,"context_line":"------------------------"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Availability Zones are the user visible logical abstraction for partitioning his cloud. Nevertheless, that abstraction doesn\u0027t come up in Nova with an actual model since the availability zone is actually a specific metadata information attached to an aggregate."},{"line_number":29,"context_line":"Adding that specific metadata to an aggregate makes him visible from an end-user perspective and consequently allows to schedule upon a specific set of hosts (the ones belonging to the aggregate)."},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"That said, there are a few rules to know that diverge from an API perspective between aggregates and availability zones :"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba15a1d1_79a3fc4f","line":28,"updated":"2015-09-15 20:51:54.000000000","message":"s/his/their/.  Best to avoid gendered pronouns.","commit_id":"1e4a14bf86c297879f054b81378e83aa5e42b86e"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"46389b1c4fb30db272acff56182038784106b3e4","unresolved":false,"context_lines":[{"line_number":25,"context_line":"Availability Zones (AZs)"},{"line_number":26,"context_line":"------------------------"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Availability Zones are the user visible logical abstraction for partitioning his cloud. Nevertheless, that abstraction doesn\u0027t come up in Nova with an actual model since the availability zone is actually a specific metadata information attached to an aggregate."},{"line_number":29,"context_line":"Adding that specific metadata to an aggregate makes him visible from an end-user perspective and consequently allows to schedule upon a specific set of hosts (the ones belonging to the aggregate)."},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"That said, there are a few rules to know that diverge from an API perspective between aggregates and availability zones :"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba15a1d1_997a90f0","line":28,"updated":"2015-09-15 20:55:30.000000000","message":"s/user/operator (admin)/?","commit_id":"1e4a14bf86c297879f054b81378e83aa5e42b86e"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"46389b1c4fb30db272acff56182038784106b3e4","unresolved":false,"context_lines":[{"line_number":26,"context_line":"------------------------"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Availability Zones are the user visible logical abstraction for partitioning his cloud. Nevertheless, that abstraction doesn\u0027t come up in Nova with an actual model since the availability zone is actually a specific metadata information attached to an aggregate."},{"line_number":29,"context_line":"Adding that specific metadata to an aggregate makes him visible from an end-user perspective and consequently allows to schedule upon a specific set of hosts (the ones belonging to the aggregate)."},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"That said, there are a few rules to know that diverge from an API perspective between aggregates and availability zones :"},{"line_number":32,"context_line":" - one host can be in multiple aggregates, it can only be in one availability zone"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba15a1d1_f945ccb2","line":29,"updated":"2015-09-15 20:55:30.000000000","message":"s/makes him visible/makes the aggregate visible/?\n\nJust noting that since you use \u0027his\u0027 when talking about the user in the first paragraph.","commit_id":"1e4a14bf86c297879f054b81378e83aa5e42b86e"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"46389b1c4fb30db272acff56182038784106b3e4","unresolved":false,"context_lines":[{"line_number":29,"context_line":"Adding that specific metadata to an aggregate makes him visible from an end-user perspective and consequently allows to schedule upon a specific set of hosts (the ones belonging to the aggregate)."},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"That said, there are a few rules to know that diverge from an API perspective between aggregates and availability zones :"},{"line_number":32,"context_line":" - one host can be in multiple aggregates, it can only be in one availability zone"},{"line_number":33,"context_line":" - by default one host is part of a default availability zone even if it doesn\u0027t belong to an aggregate"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"That last rule can be very error-prone. Since the user can see the list of availability zones, he has no way to know whether the default availability zone name (currently \"nova\") is provided because an host belongs to an aggregate whose AZ metadata key is set to \"nova\", or because there are at least one host belonging to no aggregate."}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba15a1d1_1979a0c8","line":32,"updated":"2015-09-15 20:55:30.000000000","message":"s/it can/but it can/","commit_id":"1e4a14bf86c297879f054b81378e83aa5e42b86e"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"46389b1c4fb30db272acff56182038784106b3e4","unresolved":false,"context_lines":[{"line_number":30,"context_line":""},{"line_number":31,"context_line":"That said, there are a few rules to know that diverge from an API perspective between aggregates and availability zones :"},{"line_number":32,"context_line":" - one host can be in multiple aggregates, it can only be in one availability zone"},{"line_number":33,"context_line":" - by default one host is part of a default availability zone even if it doesn\u0027t belong to an aggregate"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"That last rule can be very error-prone. Since the user can see the list of availability zones, he has no way to know whether the default availability zone name (currently \"nova\") is provided because an host belongs to an aggregate whose AZ metadata key is set to \"nova\", or because there are at least one host belonging to no aggregate."},{"line_number":36,"context_line":"Consequently, it is highly recommended for users to never ever ask for booting an instance by specifying an explicit AZ named \"nova\" and for operators to never set the AZ metadata for an aggregate to \"nova\"."}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba15a1d1_f97dccb1","line":33,"updated":"2015-09-15 20:55:30.000000000","message":"s/one host/a host/\n\nMaybe note CONF.default_availability_zone here?","commit_id":"1e4a14bf86c297879f054b81378e83aa5e42b86e"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"46389b1c4fb30db272acff56182038784106b3e4","unresolved":false,"context_lines":[{"line_number":32,"context_line":" - one host can be in multiple aggregates, it can only be in one availability zone"},{"line_number":33,"context_line":" - by default one host is part of a default availability zone even if it doesn\u0027t belong to an aggregate"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"That last rule can be very error-prone. Since the user can see the list of availability zones, he has no way to know whether the default availability zone name (currently \"nova\") is provided because an host belongs to an aggregate whose AZ metadata key is set to \"nova\", or because there are at least one host belonging to no aggregate."},{"line_number":36,"context_line":"Consequently, it is highly recommended for users to never ever ask for booting an instance by specifying an explicit AZ named \"nova\" and for operators to never set the AZ metadata for an aggregate to \"nova\"."},{"line_number":37,"context_line":"That leads indeed to some problems with the fact that the instance AZ information is explicitely attached to \"nova\" which could break further move operations when either the host is moved to another aggregate or when the user would like to migrate the instance."},{"line_number":38,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba15a1d1_9c003e03","line":35,"updated":"2015-09-15 20:55:30.000000000","message":"Might want to use the .. warning:: syntax here to make this show up in the docs with emphasis (you get the colored box).","commit_id":"1e4a14bf86c297879f054b81378e83aa5e42b86e"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"b5ce8bdaf8f9b28b56d66cc6fc809db33932b2bd","unresolved":false,"context_lines":[{"line_number":26,"context_line":"------------------------"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Availability Zones are the end-user visible logical abstraction for"},{"line_number":29,"context_line":"partitioning a cloud without knowing the physical infrastructure. Nevertheless,"},{"line_number":30,"context_line":"that abstraction doesn\u0027t come up in Nova with an actual model since the"},{"line_number":31,"context_line":"availability zone is actually a specific metadata information attached to an"},{"line_number":32,"context_line":"aggregate. Adding that specific metadata to an aggregate makes the aggregate"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_a34ac581","line":29,"updated":"2015-09-22 15:25:26.000000000","message":"Not sure that \u0027Nevertheless,\u0027 is needed here.","commit_id":"1e945533d7442ada2865d1c594a3027cbba08a98"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"b5ce8bdaf8f9b28b56d66cc6fc809db33932b2bd","unresolved":false,"context_lines":[{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Availability Zones are the end-user visible logical abstraction for"},{"line_number":29,"context_line":"partitioning a cloud without knowing the physical infrastructure. Nevertheless,"},{"line_number":30,"context_line":"that abstraction doesn\u0027t come up in Nova with an actual model since the"},{"line_number":31,"context_line":"availability zone is actually a specific metadata information attached to an"},{"line_number":32,"context_line":"aggregate. Adding that specific metadata to an aggregate makes the aggregate"},{"line_number":33,"context_line":"visible from an end-user perspective and consequently allows to schedule upon a"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_c31b397f","line":30,"updated":"2015-09-22 15:25:26.000000000","message":"\u0027actual model\u0027 as in \u0027actual model in the database schema\u0027?  Are you trying to point out that there is no availabilty_zones table, for example?","commit_id":"1e945533d7442ada2865d1c594a3027cbba08a98"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"e21828c52afde4138fd5cdae66ebbd167f584797","unresolved":false,"context_lines":[{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Availability Zones are the end-user visible logical abstraction for"},{"line_number":29,"context_line":"partitioning a cloud without knowing the physical infrastructure. Nevertheless,"},{"line_number":30,"context_line":"that abstraction doesn\u0027t come up in Nova with an actual model since the"},{"line_number":31,"context_line":"availability zone is actually a specific metadata information attached to an"},{"line_number":32,"context_line":"aggregate. Adding that specific metadata to an aggregate makes the aggregate"},{"line_number":33,"context_line":"visible from an end-user perspective and consequently allows to schedule upon a"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_7504517d","line":30,"in_reply_to":"ba15a1d1_c31b397f","updated":"2015-09-22 20:30:10.000000000","message":"yup, no persisted model like a DB model or even just a NovaObject","commit_id":"1e945533d7442ada2865d1c594a3027cbba08a98"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"b5ce8bdaf8f9b28b56d66cc6fc809db33932b2bd","unresolved":false,"context_lines":[{"line_number":34,"context_line":"specific set of hosts (the ones belonging to the aggregate)."},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"That said, there are a few rules to know that diverge from an API perspective"},{"line_number":37,"context_line":"between aggregates and availability zones :"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"- one host can be in multiple aggregates, but it can only be in one"},{"line_number":40,"context_line":"  availability zone"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_c6026709","line":37,"updated":"2015-09-22 15:25:26.000000000","message":"s/zones :/zones:/","commit_id":"1e945533d7442ada2865d1c594a3027cbba08a98"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"b5ce8bdaf8f9b28b56d66cc6fc809db33932b2bd","unresolved":false,"context_lines":[{"line_number":38,"context_line":""},{"line_number":39,"context_line":"- one host can be in multiple aggregates, but it can only be in one"},{"line_number":40,"context_line":"  availability zone"},{"line_number":41,"context_line":"- by default one host is part of a default availability zone even if it doesn\u0027t"},{"line_number":42,"context_line":"  belong to an aggregate (the configuration option is named"},{"line_number":43,"context_line":"  ``default_availability_zone``)"},{"line_number":44,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_e6344bdf","line":41,"updated":"2015-09-22 15:25:26.000000000","message":"s/one host/a host/?","commit_id":"1e945533d7442ada2865d1c594a3027cbba08a98"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"b5ce8bdaf8f9b28b56d66cc6fc809db33932b2bd","unresolved":false,"context_lines":[{"line_number":43,"context_line":"  ``default_availability_zone``)"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":".. warning:: That last rule can be very error-prone. Since the user can see the"},{"line_number":46,"context_line":"  list of availability zones, he has no way to know whether the default"},{"line_number":47,"context_line":"  availability zone name (currently ``nova``) is provided because an host"},{"line_number":48,"context_line":"  belongs to an aggregate whose AZ metadata key is set to ``nova``, or because"},{"line_number":49,"context_line":"  there are at least one host belonging to no aggregate. Consequently, it is"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_c677c79d","line":46,"updated":"2015-09-22 15:25:26.000000000","message":"s/he/they/","commit_id":"1e945533d7442ada2865d1c594a3027cbba08a98"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"1767f76dd55e38a78b6a7106da2672d2a3ece572","unresolved":false,"context_lines":[{"line_number":44,"context_line":""},{"line_number":45,"context_line":".. warning:: That last rule can be very error-prone. Since the user can see the"},{"line_number":46,"context_line":"  list of availability zones, he has no way to know whether the default"},{"line_number":47,"context_line":"  availability zone name (currently ``nova``) is provided because an host"},{"line_number":48,"context_line":"  belongs to an aggregate whose AZ metadata key is set to ``nova``, or because"},{"line_number":49,"context_line":"  there are at least one host belonging to no aggregate. Consequently, it is"},{"line_number":50,"context_line":"  highly recommended for users to never ever ask for booting an instance by"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_c60827dc","line":47,"updated":"2015-09-22 15:27:39.000000000","message":"nit:\n\nUsing ``nova`` looks a bit weird here:\n\nhttp://docs-draft.openstack.org/02/223802/2/check/gate-nova-docs/aa23d1e//doc/build/html/aggregates.html#availability-zones-azs\n\nI\u0027d suggest just italicizing nova in this warning block, like *nova*.","commit_id":"1e945533d7442ada2865d1c594a3027cbba08a98"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"e21828c52afde4138fd5cdae66ebbd167f584797","unresolved":false,"context_lines":[{"line_number":44,"context_line":""},{"line_number":45,"context_line":".. warning:: That last rule can be very error-prone. Since the user can see the"},{"line_number":46,"context_line":"  list of availability zones, he has no way to know whether the default"},{"line_number":47,"context_line":"  availability zone name (currently ``nova``) is provided because an host"},{"line_number":48,"context_line":"  belongs to an aggregate whose AZ metadata key is set to ``nova``, or because"},{"line_number":49,"context_line":"  there are at least one host belonging to no aggregate. Consequently, it is"},{"line_number":50,"context_line":"  highly recommended for users to never ever ask for booting an instance by"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_7579b1fb","line":47,"in_reply_to":"ba15a1d1_c60827dc","updated":"2015-09-22 20:30:10.000000000","message":"Good idea","commit_id":"1e945533d7442ada2865d1c594a3027cbba08a98"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"b5ce8bdaf8f9b28b56d66cc6fc809db33932b2bd","unresolved":false,"context_lines":[{"line_number":49,"context_line":"  there are at least one host belonging to no aggregate. Consequently, it is"},{"line_number":50,"context_line":"  highly recommended for users to never ever ask for booting an instance by"},{"line_number":51,"context_line":"  specifying an explicit AZ named ``nova`` and for operators to never set the"},{"line_number":52,"context_line":"  AZ metadata for an aggregate to ``nova``. That leads indeed to some problems"},{"line_number":53,"context_line":"  with the fact that the instance AZ information is explicitely attached to"},{"line_number":54,"context_line":"  ``nova`` which could break further move operations when either the host is"},{"line_number":55,"context_line":"  moved to another aggregate or when the user would like to migrate the"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_c69ee7b7","line":52,"updated":"2015-09-22 15:25:26.000000000","message":"I\u0027d probably omit \u0027indeed\u0027 here, it makes reading this a bit clunky.","commit_id":"1e945533d7442ada2865d1c594a3027cbba08a98"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"b5ce8bdaf8f9b28b56d66cc6fc809db33932b2bd","unresolved":false,"context_lines":[{"line_number":50,"context_line":"  highly recommended for users to never ever ask for booting an instance by"},{"line_number":51,"context_line":"  specifying an explicit AZ named ``nova`` and for operators to never set the"},{"line_number":52,"context_line":"  AZ metadata for an aggregate to ``nova``. That leads indeed to some problems"},{"line_number":53,"context_line":"  with the fact that the instance AZ information is explicitely attached to"},{"line_number":54,"context_line":"  ``nova`` which could break further move operations when either the host is"},{"line_number":55,"context_line":"  moved to another aggregate or when the user would like to migrate the"},{"line_number":56,"context_line":"  instance."}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_06b5bf2f","line":53,"updated":"2015-09-22 15:25:26.000000000","message":"s/with the fact/due to the fact/\n\ns/explicitely/explicitly/","commit_id":"1e945533d7442ada2865d1c594a3027cbba08a98"}],"doc/source/tasks.rst":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"82f478a9fe37d2d57534d7242fd28db6311160d5","unresolved":false,"context_lines":[{"line_number":12,"context_line":"      under the License."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Tasks and Instance actions"},{"line_number":16,"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"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Manifesto"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_83eb0178","line":15,"updated":"2015-09-22 15:20:17.000000000","message":"Seems this shouldn\u0027t be in this change.  Rebase failure?","commit_id":"1e945533d7442ada2865d1c594a3027cbba08a98"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"f9e87f8f08e4761ec86d1911f14474c661bbbeaa","unresolved":false,"context_lines":[{"line_number":12,"context_line":"      under the License."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Tasks and Instance actions"},{"line_number":16,"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"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Manifesto"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_f5ce2182","line":15,"in_reply_to":"ba15a1d1_83eb0178","updated":"2015-09-22 20:21:46.000000000","message":"WTF ?!","commit_id":"1e945533d7442ada2865d1c594a3027cbba08a98"}]}
