)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"fecace0d22abd6528eb0216e219866d6c76955fe","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Make baremetal support metadata for ephemeral block-device-mapping"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Make baremetal driver set instance[\u0027efault_ephemeral_bevice\u0027] to"},{"line_number":10,"context_line":"/dev/sda1 since baremetal  does partition images not disk images."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: Ib2076198eacb0ea61706043b42d673c35d26f5d1"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"AAAATH%2F%2FQyQ%3D","line":9,"updated":"2013-10-18 20:51:21.000000000","message":"Typo in default.","commit_id":"24c9788611ceadc3a317effc7b9cc3ae83c98244"},{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"fecace0d22abd6528eb0216e219866d6c76955fe","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Make baremetal support metadata for ephemeral block-device-mapping"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Make baremetal driver set instance[\u0027efault_ephemeral_bevice\u0027] to"},{"line_number":10,"context_line":"/dev/sda1 since baremetal  does partition images not disk images."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: Ib2076198eacb0ea61706043b42d673c35d26f5d1"},{"line_number":13,"context_line":"Closes-Bug: #1239524"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"AAAATH%2F%2FQyU%3D","line":10,"updated":"2013-10-18 20:51:21.000000000","message":"double space here. Also this particular change - for ephemeral - isn\u0027t related to disk images but to the fact we\u0027re using the same underlying device for both the root (sda3) and ephemeral (sda1)","commit_id":"24c9788611ceadc3a317effc7b9cc3ae83c98244"},{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"fecace0d22abd6528eb0216e219866d6c76955fe","unresolved":false,"context_lines":[{"line_number":10,"context_line":"/dev/sda1 since baremetal  does partition images not disk images."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: Ib2076198eacb0ea61706043b42d673c35d26f5d1"},{"line_number":13,"context_line":"Closes-Bug: #1239524"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"AAAATH%2F%2FQyM%3D","line":13,"updated":"2013-10-18 20:51:21.000000000","message":"The root map is still wrong, so I think  Partial-Bug is more appropriate.","commit_id":"24c9788611ceadc3a317effc7b9cc3ae83c98244"}],"nova/tests/utils.py":[{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"3dfe17598a23dcef3d6537abeeb846f3ea1f42af","unresolved":false,"context_lines":[{"line_number":59,"context_line":"                          \u0027swap\u0027: 1024}"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    for x in options:"},{"line_number":62,"context_line":"        test_instance_type[x] \u003d options[x]"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"    try:"},{"line_number":65,"context_line":"        instance_type_ref \u003d nova.db.flavor_create(context,"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATH%2F%2FQjA%3D","line":62,"updated":"2013-10-18 22:17:26.000000000","message":"test_instance_type.update(options)","commit_id":"59ee8ab12b22120e080b4dffb3b801884bbb8d4b"},{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"c8a0ff85502d5f5585b0a70a543a29d9085ba1c9","unresolved":false,"context_lines":[{"line_number":46,"context_line":"    return image_service.show(context, image_id)"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"def get_test_instance_type(context\u003dNone, options\u003d{}):"},{"line_number":50,"context_line":"    if not context:"},{"line_number":51,"context_line":"        context \u003d get_test_admin_context()"},{"line_number":52,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAATn%2F%2FxNs%3D","line":49,"updated":"2013-10-29 10:47:32.000000000","message":"This is not safe, as options would be mutable. You need\n\n def ....options\u003dNone):\n     options \u003d options or {}","commit_id":"24f0caa01ea6cd166d833c715866493eea112700"},{"author":{"_account_id":1849,"name":"Joe Gordon","email":"joe.gordon0@gmail.com","username":"jogo"},"change_message_id":"14be8257f617dda93bbedf59ef808cddd949fabd","unresolved":false,"context_lines":[{"line_number":46,"context_line":"    return image_service.show(context, image_id)"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"def get_test_instance_type(context\u003dNone, options\u003d{}):"},{"line_number":50,"context_line":"    if not context:"},{"line_number":51,"context_line":"        context \u003d get_test_admin_context()"},{"line_number":52,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAATn%2F%2Fwpc%3D","line":49,"in_reply_to":"AAAATn%2F%2FxNs%3D","updated":"2013-10-29 13:34:15.000000000","message":"Done","commit_id":"24f0caa01ea6cd166d833c715866493eea112700"}],"nova/tests/virt/baremetal/test_driver.py":[{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"4147fed850aa5dcba8eda22bb41b809883af9d7c","unresolved":false,"context_lines":[{"line_number":156,"context_line":"        self.assertEqual(row[\u0027instance_name\u0027], node[\u0027instance\u0027][\u0027hostname\u0027])"},{"line_number":157,"context_line":"        instance \u003d main_db.instance_get_by_uuid(self.context,"},{"line_number":158,"context_line":"                node[\u0027instance\u0027][\u0027uuid\u0027])"},{"line_number":159,"context_line":"        self.assertEqual(instance[\u0027default_ephemeral_device\u0027], \u0027/dev/sda1\u0027)"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"    def test_macs_from_nic_for_instance(self):"},{"line_number":162,"context_line":"        node \u003d self._create_node()"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATH%2F%2FQoE%3D","line":159,"updated":"2013-10-18 21:48:51.000000000","message":"We need one more I think : check that it\u0027s \u0027\u0027 for an instance with ephemeral size set to 0.","commit_id":"0ab43811771cadd9b9f65991e46d2bfc0d060eaa"}],"nova/virt/baremetal/driver.py":[{"author":{"_account_id":1849,"name":"Joe Gordon","email":"joe.gordon0@gmail.com","username":"jogo"},"change_message_id":"4ab058a331fa70edb7610eefb1dc2c71740111c4","unresolved":false,"context_lines":[{"line_number":219,"context_line":""},{"line_number":220,"context_line":"    def _set_default_ephemeral_device(self, instance):"},{"line_number":221,"context_line":"        instance_type \u003d flavors.extract_flavor(instance)"},{"line_number":222,"context_line":"        if instance_type[\u0027ephemeral_gb\u0027]:"},{"line_number":223,"context_line":"            self.virtapi.instance_update("},{"line_number":224,"context_line":"                nova_context.get_admin_context(), instance[\u0027uuid\u0027],"},{"line_number":225,"context_line":"                {\u0027default_ephemeral_bevice\u0027:"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATH%2F%2FQxk%3D","line":222,"updated":"2013-10-18 20:55:19.000000000","message":"If this is 0 or None, this function is a no-op","commit_id":"24c9788611ceadc3a317effc7b9cc3ae83c98244"},{"author":{"_account_id":1849,"name":"Joe Gordon","email":"joe.gordon0@gmail.com","username":"jogo"},"change_message_id":"4ab058a331fa70edb7610eefb1dc2c71740111c4","unresolved":false,"context_lines":[{"line_number":222,"context_line":"        if instance_type[\u0027ephemeral_gb\u0027]:"},{"line_number":223,"context_line":"            self.virtapi.instance_update("},{"line_number":224,"context_line":"                nova_context.get_admin_context(), instance[\u0027uuid\u0027],"},{"line_number":225,"context_line":"                {\u0027default_ephemeral_bevice\u0027:"},{"line_number":226,"context_line":"                    \u0027/dev/sda1\u0027})"},{"line_number":227,"context_line":""},{"line_number":228,"context_line":"    def spawn(self, context, instance, image_meta, injected_files,"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATH%2F%2FQxo%3D","line":225,"updated":"2013-10-18 20:55:19.000000000","message":"typo: bevice","commit_id":"24c9788611ceadc3a317effc7b9cc3ae83c98244"},{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"e70ca17230fc30c08a7ae75611a3298612a495a9","unresolved":false,"context_lines":[{"line_number":222,"context_line":"        if instance_type[\u0027ephemeral_gb\u0027]:"},{"line_number":223,"context_line":"            self.virtapi.instance_update("},{"line_number":224,"context_line":"                nova_context.get_admin_context(), instance[\u0027uuid\u0027],"},{"line_number":225,"context_line":"                {\u0027default_ephemeral_bevice\u0027:"},{"line_number":226,"context_line":"                    \u0027/dev/sda1\u0027})"},{"line_number":227,"context_line":""},{"line_number":228,"context_line":"    def spawn(self, context, instance, image_meta, injected_files,"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATH%2F%2FQwQ%3D","line":225,"in_reply_to":"AAAATH%2F%2FQxo%3D","updated":"2013-10-18 21:08:39.000000000","message":"Since this happily passed tests with a typo, perhaps we should add a test?","commit_id":"24c9788611ceadc3a317effc7b9cc3ae83c98244"},{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"fecace0d22abd6528eb0216e219866d6c76955fe","unresolved":false,"context_lines":[{"line_number":223,"context_line":"            self.virtapi.instance_update("},{"line_number":224,"context_line":"                nova_context.get_admin_context(), instance[\u0027uuid\u0027],"},{"line_number":225,"context_line":"                {\u0027default_ephemeral_bevice\u0027:"},{"line_number":226,"context_line":"                    \u0027/dev/sda1\u0027})"},{"line_number":227,"context_line":""},{"line_number":228,"context_line":"    def spawn(self, context, instance, image_meta, injected_files,"},{"line_number":229,"context_line":"              admin_password, network_info\u003dNone, block_device_info\u003dNone):"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATH%2F%2FQx4%3D","line":226,"updated":"2013-10-18 20:51:21.000000000","message":"If there is no ephemeral defined, does this still get called ? Given that sda1 is sometimes the root, and sometimes ephemeral, it seems like we should return None or \u0027\u0027 if there is no ephemeral device in the instance.","commit_id":"24c9788611ceadc3a317effc7b9cc3ae83c98244"},{"author":{"_account_id":360,"name":"Dan Prince","email":"dprince@redhat.com","username":"dan-prince"},"change_message_id":"9d4e04442e14f3eb1f2947290e047113b3cbe2e7","unresolved":false,"context_lines":[{"line_number":223,"context_line":"            self.virtapi.instance_update("},{"line_number":224,"context_line":"                nova_context.get_admin_context(), instance[\u0027uuid\u0027],"},{"line_number":225,"context_line":"                {\u0027default_ephemeral_device\u0027:"},{"line_number":226,"context_line":"                    \u0027/dev/sda1\u0027})"},{"line_number":227,"context_line":""},{"line_number":228,"context_line":"    def spawn(self, context, instance, image_meta, injected_files,"},{"line_number":229,"context_line":"              admin_password, network_info\u003dNone, block_device_info\u003dNone):"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAATH%2F%2FMBY%3D","line":226,"updated":"2013-10-21 18:23:24.000000000","message":"Looks fine to me although I wonder if this should be a config option?","commit_id":"24f0caa01ea6cd166d833c715866493eea112700"},{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"c8a0ff85502d5f5585b0a70a543a29d9085ba1c9","unresolved":false,"context_lines":[{"line_number":223,"context_line":"            self.virtapi.instance_update("},{"line_number":224,"context_line":"                nova_context.get_admin_context(), instance[\u0027uuid\u0027],"},{"line_number":225,"context_line":"                {\u0027default_ephemeral_device\u0027:"},{"line_number":226,"context_line":"                    \u0027/dev/sda1\u0027})"},{"line_number":227,"context_line":""},{"line_number":228,"context_line":"    def spawn(self, context, instance, image_meta, injected_files,"},{"line_number":229,"context_line":"              admin_password, network_info\u003dNone, block_device_info\u003dNone):"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAATn%2F%2FxMY%3D","line":226,"in_reply_to":"AAAATH%2F%2FMBY%3D","updated":"2013-10-29 10:47:32.000000000","message":"Eventually probably; but config options get pushback, and we only need sda for now.","commit_id":"24f0caa01ea6cd166d833c715866493eea112700"},{"author":{"_account_id":1849,"name":"Joe Gordon","email":"joe.gordon0@gmail.com","username":"jogo"},"change_message_id":"14be8257f617dda93bbedf59ef808cddd949fabd","unresolved":false,"context_lines":[{"line_number":223,"context_line":"            self.virtapi.instance_update("},{"line_number":224,"context_line":"                nova_context.get_admin_context(), instance[\u0027uuid\u0027],"},{"line_number":225,"context_line":"                {\u0027default_ephemeral_device\u0027:"},{"line_number":226,"context_line":"                    \u0027/dev/sda1\u0027})"},{"line_number":227,"context_line":""},{"line_number":228,"context_line":"    def spawn(self, context, instance, image_meta, injected_files,"},{"line_number":229,"context_line":"              admin_password, network_info\u003dNone, block_device_info\u003dNone):"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAATn%2F%2FxKU%3D","line":226,"in_reply_to":"AAAATn%2F%2FxMY%3D","updated":"2013-10-29 13:34:15.000000000","message":"FWIW  this works using VMs (via devref) and on baremetal","commit_id":"24f0caa01ea6cd166d833c715866493eea112700"}]}
