)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"6b6b22bff87eaf509b47a78013acf2de93c28234","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Boot server from encrypted volume"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch adds support for booting a server from an"},{"line_number":10,"context_line":"encrypted volume while verifing both encryption"},{"line_number":11,"context_line":"methods: luks and cryptsetup."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Note: manager.create_server method passes wait_until\u003d\u0027ACTIVE\u0027,"},{"line_number":14,"context_line":"so \u0027create_test_server\u0027 function in common/compute.py waits"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"7f231b9d_6c3be6ea","line":11,"range":{"start_line":10,"start_character":17,"end_line":11,"end_character":29},"updated":"2017-06-13 14:58:38.000000000","message":"Not true anymore.","commit_id":"26e2c36bd32981a3e3a7da0dda75d4fc8e156120"},{"author":{"_account_id":19262,"name":"Liron Kuchlani","email":"lkuchlan@redhat.com","username":"lkuchlan"},"change_message_id":"5eb09dce830485a4a6fca7d2e40d190eb29bc063","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Boot server from encrypted volume"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch adds support for booting a server from an"},{"line_number":10,"context_line":"encrypted volume while verifing both encryption"},{"line_number":11,"context_line":"methods: luks and cryptsetup."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Note: manager.create_server method passes wait_until\u003d\u0027ACTIVE\u0027,"},{"line_number":14,"context_line":"so \u0027create_test_server\u0027 function in common/compute.py waits"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"7f231b9d_27b2a795","line":11,"range":{"start_line":10,"start_character":17,"end_line":11,"end_character":29},"in_reply_to":"7f231b9d_6c3be6ea","updated":"2017-06-13 15:00:37.000000000","message":"Thanks","commit_id":"26e2c36bd32981a3e3a7da0dda75d4fc8e156120"}],"tempest/scenario/manager.py":[{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"f6de20b2e3cf64f3babe66d52db2be5d8d860611","unresolved":false,"context_lines":[{"line_number":1258,"context_line":"        client.create_encryption_type("},{"line_number":1259,"context_line":"            type_id, provider\u003dprovider, key_size\u003dkey_size, cipher\u003dcipher,"},{"line_number":1260,"context_line":"            control_location\u003dcontrol_location)[\u0027encryption\u0027]"},{"line_number":1261,"context_line":""},{"line_number":1262,"context_line":"    def create_encrypted_volume(self, encryption_provider, volume_type):"},{"line_number":1263,"context_line":"        volume_type \u003d self.create_volume_type(name\u003dvolume_type)"},{"line_number":1264,"context_line":"        self.create_encryption_type(type_id\u003dvolume_type[\u0027id\u0027],"}],"source_content_type":"text/x-python","patch_set":3,"id":"7f231b9d_2c6a8eb2","line":1261,"updated":"2017-06-13 14:23:33.000000000","message":"adding the extra parameters here with default value might be good idea.","commit_id":"26e2c36bd32981a3e3a7da0dda75d4fc8e156120"},{"author":{"_account_id":19262,"name":"Liron Kuchlani","email":"lkuchlan@redhat.com","username":"lkuchlan"},"change_message_id":"083c5b21d1911ffa8295caf1610db0ab92c6cbb5","unresolved":false,"context_lines":[{"line_number":1258,"context_line":"        client.create_encryption_type("},{"line_number":1259,"context_line":"            type_id, provider\u003dprovider, key_size\u003dkey_size, cipher\u003dcipher,"},{"line_number":1260,"context_line":"            control_location\u003dcontrol_location)[\u0027encryption\u0027]"},{"line_number":1261,"context_line":""},{"line_number":1262,"context_line":"    def create_encrypted_volume(self, encryption_provider, volume_type):"},{"line_number":1263,"context_line":"        volume_type \u003d self.create_volume_type(name\u003dvolume_type)"},{"line_number":1264,"context_line":"        self.create_encryption_type(type_id\u003dvolume_type[\u0027id\u0027],"}],"source_content_type":"text/x-python","patch_set":3,"id":"7f231b9d_e7e4afae","line":1261,"in_reply_to":"7f231b9d_2c6a8eb2","updated":"2017-06-13 14:58:17.000000000","message":"Thanks for your comment,\nDone","commit_id":"26e2c36bd32981a3e3a7da0dda75d4fc8e156120"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"eed9a44c3b69fa57caaef1f72896e05a603ed5d3","unresolved":false,"context_lines":[{"line_number":1263,"context_line":"        volume_type \u003d self.create_volume_type(name\u003dvolume_type)"},{"line_number":1264,"context_line":"        self.create_encryption_type(type_id\u003dvolume_type[\u0027id\u0027],"},{"line_number":1265,"context_line":"                                    provider\u003dencryption_provider,"},{"line_number":1266,"context_line":"                                    key_size\u003d256,"},{"line_number":1267,"context_line":"                                    cipher\u003d\u0027aes-xts-plain64\u0027,"},{"line_number":1268,"context_line":"                                    control_location\u003d\u0027front-end\u0027)"},{"line_number":1269,"context_line":"        return self.create_volume(volume_type\u003dvolume_type[\u0027name\u0027])"},{"line_number":1270,"context_line":""},{"line_number":1271,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"7f231b9d_0d92459f","line":1268,"range":{"start_line":1266,"start_character":36,"end_line":1268,"end_character":65},"updated":"2017-06-13 01:19:29.000000000","message":"Is it more appropriate to make this be contained in **kwargs so that other tests can specify different values?","commit_id":"26e2c36bd32981a3e3a7da0dda75d4fc8e156120"},{"author":{"_account_id":19262,"name":"Liron Kuchlani","email":"lkuchlan@redhat.com","username":"lkuchlan"},"change_message_id":"083c5b21d1911ffa8295caf1610db0ab92c6cbb5","unresolved":false,"context_lines":[{"line_number":1263,"context_line":"        volume_type \u003d self.create_volume_type(name\u003dvolume_type)"},{"line_number":1264,"context_line":"        self.create_encryption_type(type_id\u003dvolume_type[\u0027id\u0027],"},{"line_number":1265,"context_line":"                                    provider\u003dencryption_provider,"},{"line_number":1266,"context_line":"                                    key_size\u003d256,"},{"line_number":1267,"context_line":"                                    cipher\u003d\u0027aes-xts-plain64\u0027,"},{"line_number":1268,"context_line":"                                    control_location\u003d\u0027front-end\u0027)"},{"line_number":1269,"context_line":"        return self.create_volume(volume_type\u003dvolume_type[\u0027name\u0027])"},{"line_number":1270,"context_line":""},{"line_number":1271,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"7f231b9d_0751eb62","line":1268,"range":{"start_line":1266,"start_character":36,"end_line":1268,"end_character":65},"in_reply_to":"7f231b9d_0d92459f","updated":"2017-06-13 14:58:17.000000000","message":"Thanks for your comment, \nI think it\u0027s better to add the extra parameters with default value as Attila suggests.","commit_id":"26e2c36bd32981a3e3a7da0dda75d4fc8e156120"}],"tempest/scenario/test_volume_boot_pattern.py":[{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"4203e1bfd3bd2f4ce11dfa0275389dda374011d8","unresolved":false,"context_lines":[{"line_number":253,"context_line":""},{"line_number":254,"context_line":"    @decorators.idempotent_id(\u0027bd846700-9a0e-4762-9b85-23729620dc3e\u0027)"},{"line_number":255,"context_line":"    @test.services(\u0027compute\u0027, \u0027volume\u0027)"},{"line_number":256,"context_line":"    def test_boot_server_from_encrypted_volume_cryptsetup(self):"},{"line_number":257,"context_line":"        self._boot_server_from_encrypted_volume("},{"line_number":258,"context_line":"            \u0027nova.volume.encryptors.\u0027"},{"line_number":259,"context_line":"            \u0027cryptsetup.CryptsetupEncryptor\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"7f231b9d_3a9b1d73","line":256,"updated":"2017-06-12 06:52:00.000000000","message":"I agree with zhufl. Do we really need to test both in Tempest?","commit_id":"e5d984c02ef192da748b07ba13ba4c7b9f8bec09"},{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"0898e78e3e8692fd3b3480d2dd5edc20bc021cfc","unresolved":false,"context_lines":[{"line_number":253,"context_line":""},{"line_number":254,"context_line":"    @decorators.idempotent_id(\u0027bd846700-9a0e-4762-9b85-23729620dc3e\u0027)"},{"line_number":255,"context_line":"    @test.services(\u0027compute\u0027, \u0027volume\u0027)"},{"line_number":256,"context_line":"    def test_boot_server_from_encrypted_volume_cryptsetup(self):"},{"line_number":257,"context_line":"        self._boot_server_from_encrypted_volume("},{"line_number":258,"context_line":"            \u0027nova.volume.encryptors.\u0027"},{"line_number":259,"context_line":"            \u0027cryptsetup.CryptsetupEncryptor\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"7f231b9d_c4c211ea","line":256,"range":{"start_line":256,"start_character":47,"end_line":256,"end_character":57},"updated":"2017-06-12 01:59:41.000000000","message":"I am not sure whether we should test both luks and cryptsetup in Tempest","commit_id":"e5d984c02ef192da748b07ba13ba4c7b9f8bec09"},{"author":{"_account_id":19262,"name":"Liron Kuchlani","email":"lkuchlan@redhat.com","username":"lkuchlan"},"change_message_id":"58695a874ab9c532bd6428b25d7937e2830b7496","unresolved":false,"context_lines":[{"line_number":253,"context_line":""},{"line_number":254,"context_line":"    @decorators.idempotent_id(\u0027bd846700-9a0e-4762-9b85-23729620dc3e\u0027)"},{"line_number":255,"context_line":"    @test.services(\u0027compute\u0027, \u0027volume\u0027)"},{"line_number":256,"context_line":"    def test_boot_server_from_encrypted_volume_cryptsetup(self):"},{"line_number":257,"context_line":"        self._boot_server_from_encrypted_volume("},{"line_number":258,"context_line":"            \u0027nova.volume.encryptors.\u0027"},{"line_number":259,"context_line":"            \u0027cryptsetup.CryptsetupEncryptor\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"7f231b9d_7d662ff0","line":256,"in_reply_to":"7f231b9d_3a9b1d73","updated":"2017-06-12 07:17:24.000000000","message":"Thanks for your comments, \nI agree with you, test one type encryption method is enough.","commit_id":"e5d984c02ef192da748b07ba13ba4c7b9f8bec09"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"ffe88fd8d56f937c7899436fd69c7d941e164965","unresolved":false,"context_lines":[{"line_number":230,"context_line":""},{"line_number":231,"context_line":"    @decorators.idempotent_id(\u0027cb78919a-e553-4bab-b73b-10cf4d2eb125\u0027)"},{"line_number":232,"context_line":"    @testtools.skipIf(CONF.volume.storage_protocol \u003d\u003d \u0027ceph\u0027,"},{"line_number":233,"context_line":"                      \u0027Currently, Ceph does not support volume encryption\u0027)"},{"line_number":234,"context_line":"    @test.services(\u0027compute\u0027, \u0027volume\u0027)"},{"line_number":235,"context_line":"    def test_boot_server_from_encrypted_volume_luks(self):"},{"line_number":236,"context_line":"        # Create an encrypted volume"}],"source_content_type":"text/x-python","patch_set":6,"id":"5f201791_e729e636","line":233,"updated":"2017-06-27 13:43:50.000000000","message":"Also true if storage_protocol is \u0027nfs\u0027.  And likely some others...\n\nLet\u0027s see what happens on CI runs here:\nhttps://review.openstack.org/#/c/478162/","commit_id":"8c9fb81fc84d4fa1382e1880be0bd02dbff76f36"},{"author":{"_account_id":19262,"name":"Liron Kuchlani","email":"lkuchlan@redhat.com","username":"lkuchlan"},"change_message_id":"7fb631de6296da68d92936f315dc75ad52ae52f8","unresolved":false,"context_lines":[{"line_number":230,"context_line":""},{"line_number":231,"context_line":"    @decorators.idempotent_id(\u0027cb78919a-e553-4bab-b73b-10cf4d2eb125\u0027)"},{"line_number":232,"context_line":"    @testtools.skipIf(CONF.volume.storage_protocol \u003d\u003d \u0027ceph\u0027,"},{"line_number":233,"context_line":"                      \u0027Currently, Ceph does not support volume encryption\u0027)"},{"line_number":234,"context_line":"    @test.services(\u0027compute\u0027, \u0027volume\u0027)"},{"line_number":235,"context_line":"    def test_boot_server_from_encrypted_volume_luks(self):"},{"line_number":236,"context_line":"        # Create an encrypted volume"}],"source_content_type":"text/x-python","patch_set":6,"id":"3f1d235d_6d609202","line":233,"in_reply_to":"5f201791_e729e636","updated":"2017-07-02 08:34:00.000000000","message":"Thanks, nfs was updated","commit_id":"8c9fb81fc84d4fa1382e1880be0bd02dbff76f36"},{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"5898d722ad04a59e010632d59859a9c51336f93f","unresolved":false,"context_lines":[{"line_number":229,"context_line":"        self._delete_server(instance)"},{"line_number":230,"context_line":""},{"line_number":231,"context_line":"    @decorators.idempotent_id(\u0027cb78919a-e553-4bab-b73b-10cf4d2eb125\u0027)"},{"line_number":232,"context_line":"    @testtools.skipIf(CONF.volume.storage_protocol in [\u0027ceph\u0027, \u0027nfs\u0027],"},{"line_number":233,"context_line":"                      \u0027Currently, {} does not support volume encryption \u0027"},{"line_number":234,"context_line":"                      .format(CONF.volume.storage_protocol))"},{"line_number":235,"context_line":"    @test.services(\u0027compute\u0027, \u0027volume\u0027)"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f1d235d_c79cfa5e","line":232,"range":{"start_line":232,"start_character":22,"end_line":232,"end_character":50},"updated":"2017-07-04 03:07:29.000000000","message":"will it be better to add lower()? otherwise Ceph or NFS won\u0027t work","commit_id":"a6eece44eb619cc7c18d9109a60a18917ac2bc20"},{"author":{"_account_id":19262,"name":"Liron Kuchlani","email":"lkuchlan@redhat.com","username":"lkuchlan"},"change_message_id":"def332c0dd81e1ddf835cf7f5b7cd73d0637c93c","unresolved":false,"context_lines":[{"line_number":229,"context_line":"        self._delete_server(instance)"},{"line_number":230,"context_line":""},{"line_number":231,"context_line":"    @decorators.idempotent_id(\u0027cb78919a-e553-4bab-b73b-10cf4d2eb125\u0027)"},{"line_number":232,"context_line":"    @testtools.skipIf(CONF.volume.storage_protocol in [\u0027ceph\u0027, \u0027nfs\u0027],"},{"line_number":233,"context_line":"                      \u0027Currently, {} does not support volume encryption \u0027"},{"line_number":234,"context_line":"                      .format(CONF.volume.storage_protocol))"},{"line_number":235,"context_line":"    @test.services(\u0027compute\u0027, \u0027volume\u0027)"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f1d235d_9904264c","line":232,"range":{"start_line":232,"start_character":22,"end_line":232,"end_character":50},"in_reply_to":"3f1d235d_c79cfa5e","updated":"2017-07-04 04:31:48.000000000","message":"Right, it\u0027s better thanks","commit_id":"a6eece44eb619cc7c18d9109a60a18917ac2bc20"},{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"5898d722ad04a59e010632d59859a9c51336f93f","unresolved":false,"context_lines":[{"line_number":230,"context_line":""},{"line_number":231,"context_line":"    @decorators.idempotent_id(\u0027cb78919a-e553-4bab-b73b-10cf4d2eb125\u0027)"},{"line_number":232,"context_line":"    @testtools.skipIf(CONF.volume.storage_protocol in [\u0027ceph\u0027, \u0027nfs\u0027],"},{"line_number":233,"context_line":"                      \u0027Currently, {} does not support volume encryption \u0027"},{"line_number":234,"context_line":"                      .format(CONF.volume.storage_protocol))"},{"line_number":235,"context_line":"    @test.services(\u0027compute\u0027, \u0027volume\u0027)"},{"line_number":236,"context_line":"    def test_boot_server_from_encrypted_volume_luks(self):"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f1d235d_27b96ecb","line":233,"range":{"start_line":233,"start_character":71,"end_line":233,"end_character":72},"updated":"2017-07-04 03:07:29.000000000","message":"unnecessary space?","commit_id":"a6eece44eb619cc7c18d9109a60a18917ac2bc20"},{"author":{"_account_id":19262,"name":"Liron Kuchlani","email":"lkuchlan@redhat.com","username":"lkuchlan"},"change_message_id":"def332c0dd81e1ddf835cf7f5b7cd73d0637c93c","unresolved":false,"context_lines":[{"line_number":230,"context_line":""},{"line_number":231,"context_line":"    @decorators.idempotent_id(\u0027cb78919a-e553-4bab-b73b-10cf4d2eb125\u0027)"},{"line_number":232,"context_line":"    @testtools.skipIf(CONF.volume.storage_protocol in [\u0027ceph\u0027, \u0027nfs\u0027],"},{"line_number":233,"context_line":"                      \u0027Currently, {} does not support volume encryption \u0027"},{"line_number":234,"context_line":"                      .format(CONF.volume.storage_protocol))"},{"line_number":235,"context_line":"    @test.services(\u0027compute\u0027, \u0027volume\u0027)"},{"line_number":236,"context_line":"    def test_boot_server_from_encrypted_volume_luks(self):"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f1d235d_79ff0a34","line":233,"range":{"start_line":233,"start_character":71,"end_line":233,"end_character":72},"in_reply_to":"3f1d235d_27b96ecb","updated":"2017-07-04 04:31:48.000000000","message":"Done","commit_id":"a6eece44eb619cc7c18d9109a60a18917ac2bc20"},{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"5898d722ad04a59e010632d59859a9c51336f93f","unresolved":false,"context_lines":[{"line_number":250,"context_line":"        server_info \u003d self.servers_client.show_server(server[\u0027id\u0027])[\u0027server\u0027]"},{"line_number":251,"context_line":"        created_volume \u003d server_info[\u0027os-extended-volumes:volumes_attached\u0027]"},{"line_number":252,"context_line":"        self.assertEqual(volume[\u0027id\u0027], created_volume[0][\u0027id\u0027])"},{"line_number":253,"context_line":"        self.assertNotEmpty(created_volume, \"No volume attachment found.\")"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f1d235d_e70ed68b","line":253,"range":{"start_line":253,"start_character":8,"end_line":253,"end_character":74},"updated":"2017-07-04 03:07:29.000000000","message":"this is meaningless after line#252","commit_id":"a6eece44eb619cc7c18d9109a60a18917ac2bc20"},{"author":{"_account_id":19262,"name":"Liron Kuchlani","email":"lkuchlan@redhat.com","username":"lkuchlan"},"change_message_id":"def332c0dd81e1ddf835cf7f5b7cd73d0637c93c","unresolved":false,"context_lines":[{"line_number":250,"context_line":"        server_info \u003d self.servers_client.show_server(server[\u0027id\u0027])[\u0027server\u0027]"},{"line_number":251,"context_line":"        created_volume \u003d server_info[\u0027os-extended-volumes:volumes_attached\u0027]"},{"line_number":252,"context_line":"        self.assertEqual(volume[\u0027id\u0027], created_volume[0][\u0027id\u0027])"},{"line_number":253,"context_line":"        self.assertNotEmpty(created_volume, \"No volume attachment found.\")"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f1d235d_59fe8e37","line":253,"range":{"start_line":253,"start_character":8,"end_line":253,"end_character":74},"in_reply_to":"3f1d235d_e70ed68b","updated":"2017-07-04 04:31:48.000000000","message":"Done","commit_id":"a6eece44eb619cc7c18d9109a60a18917ac2bc20"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"f131b5a068e6ea5384a4f7bee2d0d1ff0bcd58fd","unresolved":false,"context_lines":[{"line_number":229,"context_line":"        self._delete_server(instance)"},{"line_number":230,"context_line":""},{"line_number":231,"context_line":"    @decorators.idempotent_id(\u0027cb78919a-e553-4bab-b73b-10cf4d2eb125\u0027)"},{"line_number":232,"context_line":"    @testtools.skipIf(CONF.volume.storage_protocol.lower() in [\u0027ceph\u0027, \u0027nfs\u0027],"},{"line_number":233,"context_line":"                      \u0027Currently, {} does not support volume encryption\u0027"},{"line_number":234,"context_line":"                      .format(CONF.volume.storage_protocol))"},{"line_number":235,"context_line":"    @test.services(\u0027compute\u0027, \u0027volume\u0027)"},{"line_number":236,"context_line":"    def test_boot_server_from_encrypted_volume_luks(self):"},{"line_number":237,"context_line":"        # Create an encrypted volume"}],"source_content_type":"text/x-python","patch_set":8,"id":"df87a7cf_f57ce021","line":234,"range":{"start_line":232,"start_character":4,"end_line":234,"end_character":60},"updated":"2017-12-01 16:12:24.000000000","message":"This shouldn\u0027t be in Tempest IMO, there is a \"attach_encrypted_volume\" config option for this, correct? Why not avoid running this test if that is False and then it should be configured in the respective Ceph and NFS jobs via their devstack plugins.","commit_id":"3023e75f8fd84bd262ec60d57a6a6db5924d7d16"}]}
