)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"bc87c03b3dd8ad4af3558ae245c7c497ff2f3830","unresolved":false,"context_lines":[{"line_number":5,"context_line":"CommitDate: 2017-02-28 10:18:18 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"objects: Add attachment_id to BlockDeviceMapping"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: Ieb43099a31689e1b509cbffb9aeb7cc9948f1a18"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"ba2be162_dc340d4c","line":8,"updated":"2017-02-28 14:51:13.000000000","message":"Care to illuminate me as to why we want this?","commit_id":"3f044b6b08ca48319bdfd29b85c273539e0792fc"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4de677aeeec94985c1b0f767668a71dab4235c33","unresolved":false,"context_lines":[{"line_number":5,"context_line":"CommitDate: 2017-02-28 10:18:18 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"objects: Add attachment_id to BlockDeviceMapping"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: Ieb43099a31689e1b509cbffb9aeb7cc9948f1a18"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"ba2be162_83f14dd0","line":8,"in_reply_to":"ba2be162_631d390f","updated":"2017-02-28 17:14:52.000000000","message":"https://review.openstack.org/#/c/373203/ is the spec.","commit_id":"3f044b6b08ca48319bdfd29b85c273539e0792fc"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"20dfd91073f50c29693d2678c5b231cdc39c22d4","unresolved":false,"context_lines":[{"line_number":5,"context_line":"CommitDate: 2017-02-28 10:18:18 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"objects: Add attachment_id to BlockDeviceMapping"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: Ieb43099a31689e1b509cbffb9aeb7cc9948f1a18"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"ba2be162_631d390f","line":8,"in_reply_to":"ba2be162_cff28e6f","updated":"2017-02-28 17:13:37.000000000","message":"It\u0027s for this:\n\nhttps://blueprints.launchpad.net/nova/+spec/cinder-new-attach-apis\n\nCinder is going to track the connector and connection_info now, and nova will track the attachment ID - it\u0027s all cinder v3 stuff and some new apis for attach/detach.","commit_id":"3f044b6b08ca48319bdfd29b85c273539e0792fc"},{"author":{"_account_id":9555,"name":"Matthew Booth","email":"mbooth@redhat.com","username":"MatthewBooth"},"change_message_id":"895f0b84e481ca0f646499b6a734efb0e9f80076","unresolved":false,"context_lines":[{"line_number":5,"context_line":"CommitDate: 2017-02-28 10:18:18 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"objects: Add attachment_id to BlockDeviceMapping"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: Ieb43099a31689e1b509cbffb9aeb7cc9948f1a18"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"ba2be162_cff28e6f","line":8,"in_reply_to":"ba2be162_dc340d4c","updated":"2017-02-28 16:03:11.000000000","message":"+1","commit_id":"3f044b6b08ca48319bdfd29b85c273539e0792fc"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"18b0cb6ec4b9d0ee09907139b6d4cf121e7fdb21","unresolved":false,"context_lines":[{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Ie15233c99d91de67279b56d27a5508c5ea98d769"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Change-Id: Ieb43099a31689e1b509cbffb9aeb7cc9948f1a18"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"9a30ddce_357bd729","line":14,"updated":"2017-03-10 07:33:49.000000000","message":"The following should be added.\n\nImplements: blueprint cinder-new-attach-apis","commit_id":"f9d6c11fe041f7326e4f12364eeba8d34c6ccdb5"}],"nova/objects/block_device.py":[{"author":{"_account_id":9555,"name":"Matthew Booth","email":"mbooth@redhat.com","username":"MatthewBooth"},"change_message_id":"895f0b84e481ca0f646499b6a734efb0e9f80076","unresolved":false,"context_lines":[{"line_number":88,"context_line":"        \u0027no_device\u0027: fields.BooleanField(default\u003dFalse),"},{"line_number":89,"context_line":"        \u0027connection_info\u0027: fields.SensitiveStringField(nullable\u003dTrue),"},{"line_number":90,"context_line":"        \u0027tag\u0027: fields.StringField(nullable\u003dTrue),"},{"line_number":91,"context_line":"        \u0027attachment_id\u0027: fields.StringField(nullable\u003dTrue),"},{"line_number":92,"context_line":"    }"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"    def obj_make_compatible(self, primitive, target_version):"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba2be162_8f7ed6ac","line":91,"updated":"2017-02-28 16:03:11.000000000","message":"StringField? Does attachment_id not have any constraints beyond being a string?","commit_id":"3f044b6b08ca48319bdfd29b85c273539e0792fc"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"8465613d3e14d58f2ffa545e1e2af44712cf67bc","unresolved":false,"context_lines":[{"line_number":88,"context_line":"        \u0027no_device\u0027: fields.BooleanField(default\u003dFalse),"},{"line_number":89,"context_line":"        \u0027connection_info\u0027: fields.SensitiveStringField(nullable\u003dTrue),"},{"line_number":90,"context_line":"        \u0027tag\u0027: fields.StringField(nullable\u003dTrue),"},{"line_number":91,"context_line":"        \u0027attachment_id\u0027: fields.StringField(nullable\u003dTrue),"},{"line_number":92,"context_line":"    }"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"    def obj_make_compatible(self, primitive, target_version):"}],"source_content_type":"text/x-python","patch_set":4,"id":"ba2be162_b1652db6","line":91,"range":{"start_line":91,"start_character":32,"end_line":91,"end_character":43},"updated":"2017-03-03 01:59:34.000000000","message":"This should be UUIDField.","commit_id":"84b64890f72788bd61ca3bb4ed445cc76c0ec8e6"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"e9536daa06ad68ebc590e54ff05cc25d403d8da5","unresolved":false,"context_lines":[{"line_number":248,"context_line":"                                   expected_attrs\u003dexpected_attrs)"},{"line_number":249,"context_line":""},{"line_number":250,"context_line":"    @base.remotable_classmethod"},{"line_number":251,"context_line":"    def get_by_volume(cls, context, volume_id, expected_attrs\u003dNone):"},{"line_number":252,"context_line":"        if expected_attrs is None:"},{"line_number":253,"context_line":"            expected_attrs \u003d []"},{"line_number":254,"context_line":"        db_bdms \u003d db.block_device_mapping_get_all_by_volume_id("}],"source_content_type":"text/x-python","patch_set":11,"id":"1a1ced50_1772047d","line":251,"updated":"2017-03-16 17:34:36.000000000","message":"Do we not need the get_by_attachment_id() you added in the previous patch?","commit_id":"e83e783783964d5606fc7a0cd771c0e2388ad487"}],"nova/tests/unit/fake_block_device.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a87c2b56413f1cd87275510b63ea92d23495d0ab","unresolved":false,"context_lines":[{"line_number":48,"context_line":"                          \u0027deleted\u0027: 0}"},{"line_number":49,"context_line":"        if not anon:"},{"line_number":50,"context_line":"            fake_db_fields[\u0027id\u0027] \u003d db_id"},{"line_number":51,"context_line":"            fake_db_fields[\u0027attachment_id\u0027] \u003d uuids.attachment_id"},{"line_number":52,"context_line":"            fake_db_fields[\u0027created_at\u0027] \u003d timeutils.utcnow()"},{"line_number":53,"context_line":"            fake_db_fields[\u0027updated_at\u0027] \u003d timeutils.utcnow()"},{"line_number":54,"context_line":"        self.update(fake_db_fields)"}],"source_content_type":"text/x-python","patch_set":13,"id":"1a1ced50_0f9e6856","line":51,"range":{"start_line":51,"start_character":12,"end_line":51,"end_character":65},"updated":"2017-03-16 20:34:50.000000000","message":"Seems this should be None since that\u0027s the default until we actually need something to use this.","commit_id":"7ea636232e5197e552b2b797307ad64f74d4ea6a"}],"nova/tests/unit/objects/test_block_device.py":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"78ebc05ddf5dd4b096afd6bc7d06d3ca5d0fe0c3","unresolved":false,"context_lines":[{"line_number":33,"context_line":"        fake_bdm \u003d fake_block_device.FakeDbBlockDeviceDict({"},{"line_number":34,"context_line":"            \u0027id\u0027: 123,"},{"line_number":35,"context_line":"            \u0027instance_uuid\u0027: instance.get(\u0027uuid\u0027) or uuids.instance,"},{"line_number":36,"context_line":"            \u0027attachment_id\u0027: uuids.attachment_id,"},{"line_number":37,"context_line":"            \u0027device_name\u0027: \u0027/dev/sda2\u0027,"},{"line_number":38,"context_line":"            \u0027source_type\u0027: \u0027snapshot\u0027,"},{"line_number":39,"context_line":"            \u0027destination_type\u0027: \u0027volume\u0027,"}],"source_content_type":"text/x-python","patch_set":11,"id":"1a1ced50_375b8056","line":36,"updated":"2017-03-16 17:55:14.000000000","message":"Its tempting to make these all None for now, as I assume thats what will happen to start with?\n\nUntil we add the new attach stuff I guess?","commit_id":"e83e783783964d5606fc7a0cd771c0e2388ad487"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"d7ea7d020d0fc397cd695e6ce9ff3dbbe6070c57","unresolved":false,"context_lines":[{"line_number":375,"context_line":"    def test_obj_make_compatible_pre_1_18(self):"},{"line_number":376,"context_line":"        values \u003d {\u0027source_type\u0027: \u0027volume\u0027, \u0027volume_id\u0027: \u0027fake-vol-id\u0027,"},{"line_number":377,"context_line":"                  \u0027destination_type\u0027: \u0027volume\u0027,"},{"line_number":378,"context_line":"                  \u0027instance_uuid\u0027: uuids.instance, \u0027uuid\u0027: uuids.bdm,"},{"line_number":379,"context_line":"                  \u0027attachment_id\u0027: uuids.attachment_id}"},{"line_number":380,"context_line":"        bdm \u003d objects.BlockDeviceMapping(context\u003dself.context, **values)"},{"line_number":381,"context_line":"        primitive \u003d bdm.obj_to_primitive(target_version\u003d\u00271.18\u0027)"}],"source_content_type":"text/x-python","patch_set":12,"id":"1a1ced50_2c41723a","line":378,"range":{"start_line":378,"start_character":51,"end_line":378,"end_character":69},"updated":"2017-03-16 19:13:04.000000000","message":"This is wrong, correct?","commit_id":"34be553871666ea6e566a0d39073cfa1704c1890"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"d7ea7d020d0fc397cd695e6ce9ff3dbbe6070c57","unresolved":false,"context_lines":[{"line_number":378,"context_line":"                  \u0027instance_uuid\u0027: uuids.instance, \u0027uuid\u0027: uuids.bdm,"},{"line_number":379,"context_line":"                  \u0027attachment_id\u0027: uuids.attachment_id}"},{"line_number":380,"context_line":"        bdm \u003d objects.BlockDeviceMapping(context\u003dself.context, **values)"},{"line_number":381,"context_line":"        primitive \u003d bdm.obj_to_primitive(target_version\u003d\u00271.18\u0027)"},{"line_number":382,"context_line":"        self.assertNotIn(\u0027attachment_id\u0027, primitive)"},{"line_number":383,"context_line":""},{"line_number":384,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"1a1ced50_cc51be10","line":381,"range":{"start_line":381,"start_character":59,"end_line":381,"end_character":61},"updated":"2017-03-16 19:13:04.000000000","message":"This should be 17 right?","commit_id":"34be553871666ea6e566a0d39073cfa1704c1890"}]}
