)]}'
{"whitebox_tempest_plugin/api/compute/test_validate_selinux_labels.py":[{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"8a1fe7b956c07bdc69e8cfdda8144304d32abf9e","unresolved":false,"context_lines":[{"line_number":40,"context_line":"    def _assert_svirt_labels(self, server):"},{"line_number":41,"context_line":"        root \u003d self.get_server_xml(server[\u0027id\u0027])"},{"line_number":42,"context_line":"        for seclabel in root.findall(\u0027seclabel\u0027):"},{"line_number":43,"context_line":"            if (seclabel.get(\u0027model\u0027) \u003d\u003d \u0027selinux\u0027):"},{"line_number":44,"context_line":"                self.assertIn(\"system_u:system_r:svirt_t:s0\","},{"line_number":45,"context_line":"                              seclabel.find(\u0027label\u0027).text)"},{"line_number":46,"context_line":"                self.assertIn(\"system_u:object_r:svirt_image_t:s0\","}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_751a9117","line":43,"updated":"2020-08-12 21:34:28.000000000","message":"Open question: would there ever be a case where the model is something other than \u0027selinux\u0027 and this test should still run and pass? My gut feeling is - either we\u0027ve configured the dpeloyment properly, and this test runs, and `model` *must* be `selinux`, or this test is skipped entirely. IOW, shouldn\u0027t we assert the model here, instead of having a conditional for it? Maybe I\u0027m way off - as I said, open question :)","commit_id":"6852bf0a26113c27d532176b23aa658ecefb992c"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"051209862ba1a73028ee6f01f65dc2cee9bf027c","unresolved":false,"context_lines":[{"line_number":40,"context_line":"    def _assert_svirt_labels(self, server):"},{"line_number":41,"context_line":"        root \u003d self.get_server_xml(server[\u0027id\u0027])"},{"line_number":42,"context_line":"        for seclabel in root.findall(\u0027seclabel\u0027):"},{"line_number":43,"context_line":"            if (seclabel.get(\u0027model\u0027) \u003d\u003d \u0027selinux\u0027):"},{"line_number":44,"context_line":"                self.assertIn(\"system_u:system_r:svirt_t:s0\","},{"line_number":45,"context_line":"                              seclabel.find(\u0027label\u0027).text)"},{"line_number":46,"context_line":"                self.assertIn(\"system_u:object_r:svirt_image_t:s0\","}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_35f8197b","line":43,"in_reply_to":"9f560f44_751a9117","updated":"2020-08-12 22:07:35.000000000","message":"yes, In downstream the xml for seclabel tags looks like this:\n\n\u003cseclabel type\u003d\u0027dynamic\u0027 model\u003d\u0027selinux\u0027 relabel\u003d\u0027yes\u0027\u003e\n    \u003clabel\u003esystem_u:system_r:svirt_t:s0:c444,c997\u003c/label\u003e\n    \u003cimagelabel\u003esystem_u:object_r:svirt_image_t:s0:c444,c997\u003c/imagelabel\u003e\n  \u003c/seclabel\u003e\n  \u003cseclabel type\u003d\u0027dynamic\u0027 model\u003d\u0027dac\u0027 relabel\u003d\u0027yes\u0027\u003e\n    \u003clabel\u003e+107:+107\u003c/label\u003e\n    \u003cimagelabel\u003e+107:+107\u003c/imagelabel\u003e\n  \u003c/seclabel\u003e\n\nSo We need to pick only the selinux model not dac.","commit_id":"6852bf0a26113c27d532176b23aa658ecefb992c"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"ecc8ca5fd3c6d8eb1f2b9c6149f3d626af8448fa","unresolved":false,"context_lines":[{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    def _assert_svirt_labels(self, server):"},{"line_number":41,"context_line":"        root \u003d self.get_server_xml(server[\u0027id\u0027])"},{"line_number":42,"context_line":"        for seclabel in root.findall(\u0027seclabel\u0027):"},{"line_number":43,"context_line":"            if (seclabel.get(\u0027model\u0027) \u003d\u003d \u0027selinux\u0027):"},{"line_number":44,"context_line":"                self.assertIn(\"system_u:system_r:svirt_t:s0\","},{"line_number":45,"context_line":"                              seclabel.find(\u0027label\u0027).text)"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_3bea83ab","line":42,"range":{"start_line":42,"start_character":7,"end_line":42,"end_character":49},"updated":"2020-08-18 17:57:06.000000000","message":"so if this does not find the sseclable this basically returns an empty list and the test passes when it should fail\nso you need toe get the element first then assert its not empty.","commit_id":"8075b2822c7b2a00e5c6f77e64aef644acb4b8b2"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"adfd4908fd7c9c892495a7c8dd414eb22e11a845","unresolved":false,"context_lines":[{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    def _assert_svirt_labels(self, server):"},{"line_number":41,"context_line":"        root \u003d self.get_server_xml(server[\u0027id\u0027])"},{"line_number":42,"context_line":"        for seclabel in root.findall(\u0027seclabel\u0027):"},{"line_number":43,"context_line":"            if (seclabel.get(\u0027model\u0027) \u003d\u003d \u0027selinux\u0027):"},{"line_number":44,"context_line":"                self.assertIn(\"system_u:system_r:svirt_t:s0\","},{"line_number":45,"context_line":"                              seclabel.find(\u0027label\u0027).text)"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_fce61db0","line":42,"range":{"start_line":42,"start_character":7,"end_line":42,"end_character":49},"in_reply_to":"9f560f44_3bea83ab","updated":"2020-08-20 15:09:42.000000000","message":"Yeah I am aware of this one, will find some other way to deal with this.","commit_id":"8075b2822c7b2a00e5c6f77e64aef644acb4b8b2"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"0b06bb1ea909f05f4248ec3d69debfdafcb41f97","unresolved":false,"context_lines":[{"line_number":41,"context_line":"        root \u003d self.get_server_xml(server[\u0027id\u0027])"},{"line_number":42,"context_line":"        for seclabel in root.findall(\u0027seclabel\u0027):"},{"line_number":43,"context_line":"            if (seclabel.get(\u0027model\u0027) \u003d\u003d \u0027selinux\u0027):"},{"line_number":44,"context_line":"                self.assertIn(\"system_u:system_r:svirt_t:s0\","},{"line_number":45,"context_line":"                              seclabel.find(\u0027label\u0027).text)"},{"line_number":46,"context_line":"                self.assertIn(\"system_u:object_r:svirt_image_t:s0\","},{"line_number":47,"context_line":"                              seclabel.find(\u0027imagelabel\u0027).text)"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"    def test_create_server_with_label_check(self):"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_9fb1fce4","line":46,"range":{"start_line":44,"start_character":0,"end_line":46,"end_character":67},"updated":"2020-08-18 16:58:58.000000000","message":"copying this from the DNM change\n\n\nim not sure we want to assert the exact labels used.\n\nwe could but i dont really want to have to update this if they change in the future.\n\ncan we make this more generic or replace the bool config option with a list of lables to assert so we can drive this via config instead.","commit_id":"8075b2822c7b2a00e5c6f77e64aef644acb4b8b2"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"adfd4908fd7c9c892495a7c8dd414eb22e11a845","unresolved":false,"context_lines":[{"line_number":41,"context_line":"        root \u003d self.get_server_xml(server[\u0027id\u0027])"},{"line_number":42,"context_line":"        for seclabel in root.findall(\u0027seclabel\u0027):"},{"line_number":43,"context_line":"            if (seclabel.get(\u0027model\u0027) \u003d\u003d \u0027selinux\u0027):"},{"line_number":44,"context_line":"                self.assertIn(\"system_u:system_r:svirt_t:s0\","},{"line_number":45,"context_line":"                              seclabel.find(\u0027label\u0027).text)"},{"line_number":46,"context_line":"                self.assertIn(\"system_u:object_r:svirt_image_t:s0\","},{"line_number":47,"context_line":"                              seclabel.find(\u0027imagelabel\u0027).text)"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"    def test_create_server_with_label_check(self):"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_bcf02569","line":46,"range":{"start_line":44,"start_character":0,"end_line":46,"end_character":67},"in_reply_to":"9f560f44_9ce61344","updated":"2020-08-20 15:09:42.000000000","message":"make sense, I will add that","commit_id":"8075b2822c7b2a00e5c6f77e64aef644acb4b8b2"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"1409cf53f40f29a63093fcbcf10e0c49aff778c2","unresolved":false,"context_lines":[{"line_number":41,"context_line":"        root \u003d self.get_server_xml(server[\u0027id\u0027])"},{"line_number":42,"context_line":"        for seclabel in root.findall(\u0027seclabel\u0027):"},{"line_number":43,"context_line":"            if (seclabel.get(\u0027model\u0027) \u003d\u003d \u0027selinux\u0027):"},{"line_number":44,"context_line":"                self.assertIn(\"system_u:system_r:svirt_t:s0\","},{"line_number":45,"context_line":"                              seclabel.find(\u0027label\u0027).text)"},{"line_number":46,"context_line":"                self.assertIn(\"system_u:object_r:svirt_image_t:s0\","},{"line_number":47,"context_line":"                              seclabel.find(\u0027imagelabel\u0027).text)"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"    def test_create_server_with_label_check(self):"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_9ce61344","line":46,"range":{"start_line":44,"start_character":0,"end_line":46,"end_character":67},"in_reply_to":"9f560f44_9fb1fce4","updated":"2020-08-19 17:51:14.000000000","message":"Agreed, I\u0027d rather have the config option not be a simple boolean flags, but rather multiple config options (if necessary) listing the specific values that we assert.","commit_id":"8075b2822c7b2a00e5c6f77e64aef644acb4b8b2"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"8287da177d0413ae4c83b98372b31376b34c3600","unresolved":false,"context_lines":[{"line_number":43,"context_line":"        root \u003d self.get_server_xml(server[\u0027id\u0027])"},{"line_number":44,"context_line":"        self.assertIn(CONF.compute_feature_enabled.selinux_label,"},{"line_number":45,"context_line":"                      root.find(\"./seclabel[@model\u003d\u0027selinux\u0027]/label\").text)"},{"line_number":46,"context_line":"        self.assertIn(CONF.compute_feature_enabled.selinux_imagelabel,"},{"line_number":47,"context_line":"                      root.find(\"./seclabel[@model\u003d\u0027selinux\u0027]/imagelabel\")"},{"line_number":48,"context_line":"                      .text)"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"    def test_create_server_with_label_check(self):"},{"line_number":51,"context_line":"        server \u003d self.create_test_server(wait_until\u003d\"ACTIVE\")"}],"source_content_type":"text/x-python","patch_set":4,"id":"9f560f44_a87f0cdd","line":48,"range":{"start_line":46,"start_character":8,"end_line":48,"end_character":28},"updated":"2020-08-24 18:26:28.000000000","message":"nit, alignment, please do it as such to avoid the hanging .text:\n\n  self.assertIn(\n    CONF.compute_feature_enabled.selinux_imagelabel,\n    root.find(\"./seclabel[@model\u003d\u0027selinux\u0027]/imagelabel\").text)","commit_id":"239f3070a2fe5384a1ac8e85a7a3b542b430d3a4"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"bbd9e6bce6f2ddc1c985ff2649c3d8ea813aa336","unresolved":false,"context_lines":[{"line_number":43,"context_line":"        root \u003d self.get_server_xml(server[\u0027id\u0027])"},{"line_number":44,"context_line":"        self.assertIn(CONF.compute_feature_enabled.selinux_label,"},{"line_number":45,"context_line":"                      root.find(\"./seclabel[@model\u003d\u0027selinux\u0027]/label\").text)"},{"line_number":46,"context_line":"        self.assertIn(CONF.compute_feature_enabled.selinux_imagelabel,"},{"line_number":47,"context_line":"                      root.find(\"./seclabel[@model\u003d\u0027selinux\u0027]/imagelabel\")"},{"line_number":48,"context_line":"                      .text)"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"    def test_create_server_with_label_check(self):"},{"line_number":51,"context_line":"        server \u003d self.create_test_server(wait_until\u003d\"ACTIVE\")"}],"source_content_type":"text/x-python","patch_set":4,"id":"9f560f44_bf227ba1","line":48,"range":{"start_line":46,"start_character":8,"end_line":48,"end_character":28},"in_reply_to":"9f560f44_a87f0cdd","updated":"2020-08-26 14:30:25.000000000","message":"done","commit_id":"239f3070a2fe5384a1ac8e85a7a3b542b430d3a4"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"8287da177d0413ae4c83b98372b31376b34c3600","unresolved":false,"context_lines":[{"line_number":48,"context_line":"                      .text)"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"    def test_create_server_with_label_check(self):"},{"line_number":51,"context_line":"        server \u003d self.create_test_server(wait_until\u003d\"ACTIVE\")"},{"line_number":52,"context_line":"        self._assert_svirt_labels(server)"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"    def test_resize_with_label_check(self):"}],"source_content_type":"text/x-python","patch_set":4,"id":"9f560f44_e8558451","line":51,"range":{"start_line":51,"start_character":41,"end_line":51,"end_character":60},"updated":"2020-08-24 18:26:28.000000000","message":"nit: this isn\u0027t actually necessary, ACTIVE is the default wait_until state.","commit_id":"239f3070a2fe5384a1ac8e85a7a3b542b430d3a4"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"bbd9e6bce6f2ddc1c985ff2649c3d8ea813aa336","unresolved":false,"context_lines":[{"line_number":48,"context_line":"                      .text)"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"    def test_create_server_with_label_check(self):"},{"line_number":51,"context_line":"        server \u003d self.create_test_server(wait_until\u003d\"ACTIVE\")"},{"line_number":52,"context_line":"        self._assert_svirt_labels(server)"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"    def test_resize_with_label_check(self):"}],"source_content_type":"text/x-python","patch_set":4,"id":"9f560f44_ff37d3e1","line":51,"range":{"start_line":51,"start_character":41,"end_line":51,"end_character":60},"in_reply_to":"9f560f44_e8558451","updated":"2020-08-26 14:30:25.000000000","message":"done","commit_id":"239f3070a2fe5384a1ac8e85a7a3b542b430d3a4"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"8287da177d0413ae4c83b98372b31376b34c3600","unresolved":false,"context_lines":[{"line_number":52,"context_line":"        self._assert_svirt_labels(server)"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"    def test_resize_with_label_check(self):"},{"line_number":55,"context_line":"        server \u003d self.create_test_server(wait_until\u003d\"ACTIVE\")"},{"line_number":56,"context_line":"        self._assert_svirt_labels(server)"},{"line_number":57,"context_line":"        self.resize_server(server[\u0027id\u0027], self.new_flavor[\u0027id\u0027])"},{"line_number":58,"context_line":"        self._assert_svirt_labels(server)"}],"source_content_type":"text/x-python","patch_set":4,"id":"9f560f44_284c9cc6","line":55,"range":{"start_line":55,"start_character":41,"end_line":55,"end_character":60},"updated":"2020-08-24 18:26:28.000000000","message":"Ditto","commit_id":"239f3070a2fe5384a1ac8e85a7a3b542b430d3a4"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"bbd9e6bce6f2ddc1c985ff2649c3d8ea813aa336","unresolved":false,"context_lines":[{"line_number":52,"context_line":"        self._assert_svirt_labels(server)"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"    def test_resize_with_label_check(self):"},{"line_number":55,"context_line":"        server \u003d self.create_test_server(wait_until\u003d\"ACTIVE\")"},{"line_number":56,"context_line":"        self._assert_svirt_labels(server)"},{"line_number":57,"context_line":"        self.resize_server(server[\u0027id\u0027], self.new_flavor[\u0027id\u0027])"},{"line_number":58,"context_line":"        self._assert_svirt_labels(server)"}],"source_content_type":"text/x-python","patch_set":4,"id":"9f560f44_5f335ff6","line":55,"range":{"start_line":55,"start_character":41,"end_line":55,"end_character":60},"in_reply_to":"9f560f44_284c9cc6","updated":"2020-08-26 14:30:25.000000000","message":"done","commit_id":"239f3070a2fe5384a1ac8e85a7a3b542b430d3a4"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"8287da177d0413ae4c83b98372b31376b34c3600","unresolved":false,"context_lines":[{"line_number":58,"context_line":"        self._assert_svirt_labels(server)"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"    def test_live_migrate_with_label_check(self):"},{"line_number":61,"context_line":"        server \u003d self.create_test_server(wait_until\u003d\"ACTIVE\")"},{"line_number":62,"context_line":"        self._assert_svirt_labels(server)"},{"line_number":63,"context_line":"        destination_host \u003d self.get_host_other_than(server[\u0027id\u0027])"},{"line_number":64,"context_line":"        self.live_migrate(server[\u0027id\u0027], destination_host, \u0027ACTIVE\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"9f560f44_4868f0f3","line":61,"range":{"start_line":61,"start_character":42,"end_line":61,"end_character":60},"updated":"2020-08-24 18:26:28.000000000","message":"Ditto","commit_id":"239f3070a2fe5384a1ac8e85a7a3b542b430d3a4"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"bbd9e6bce6f2ddc1c985ff2649c3d8ea813aa336","unresolved":false,"context_lines":[{"line_number":58,"context_line":"        self._assert_svirt_labels(server)"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"    def test_live_migrate_with_label_check(self):"},{"line_number":61,"context_line":"        server \u003d self.create_test_server(wait_until\u003d\"ACTIVE\")"},{"line_number":62,"context_line":"        self._assert_svirt_labels(server)"},{"line_number":63,"context_line":"        destination_host \u003d self.get_host_other_than(server[\u0027id\u0027])"},{"line_number":64,"context_line":"        self.live_migrate(server[\u0027id\u0027], destination_host, \u0027ACTIVE\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"9f560f44_7f9f43b3","line":61,"range":{"start_line":61,"start_character":42,"end_line":61,"end_character":60},"in_reply_to":"9f560f44_4868f0f3","updated":"2020-08-26 14:30:25.000000000","message":"done:)","commit_id":"239f3070a2fe5384a1ac8e85a7a3b542b430d3a4"},{"author":{"_account_id":6962,"name":"Kashyap Chamarthy","email":"kchamart@redhat.com","username":"kashyapc"},"change_message_id":"923ca28bef24bd52c2c8081531622e53832ca84e","unresolved":false,"context_lines":[{"line_number":42,"context_line":"    def _assert_svirt_labels(self, server):"},{"line_number":43,"context_line":"        root \u003d self.get_server_xml(server[\u0027id\u0027])"},{"line_number":44,"context_line":"        self.assertIn("},{"line_number":45,"context_line":"            CONF.whitebox.selinux_label,"},{"line_number":46,"context_line":"            root.find(\"./seclabel[@model\u003d\u0027selinux\u0027]/label\").text)"},{"line_number":47,"context_line":"        self.assertIn("},{"line_number":48,"context_line":"            CONF.whitebox.selinux_imagelabel,"},{"line_number":49,"context_line":"            root.find(\"./seclabel[@model\u003d\u0027selinux\u0027]/imagelabel\").text)"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"    def test_create_server_with_label_check(self):"},{"line_number":52,"context_line":"        server \u003d self.create_test_server()"}],"source_content_type":"text/x-python","patch_set":5,"id":"9f560f44_6fe5ac3e","line":49,"range":{"start_line":45,"start_character":1,"end_line":49,"end_character":70},"updated":"2020-09-14 15:48:06.000000000","message":"Okay, it\u0027s good that you\u0027re explicitly checking the labels under @model\u003dselinux; because there can also be \"model\u003d\u0027dac\u0027\".\n\n  ...\n  \u003cseclabel type\u003d\u0027dynamic\u0027 model\u003d\u0027selinux\u0027 relabel\u003d\u0027yes\u0027\u003e\n    \u003clabel\u003esystem_u:system_r:svirt_t:s0:c140,c172\u003c/label\u003e\n    \u003cimagelabel\u003esystem_u:object_r:svirt_image_t:s0:c140,c172\u003c/imagelabel\u003e\n  \u003c/seclabel\u003e\n  \u003cseclabel type\u003d\u0027dynamic\u0027 model\u003d\u0027dac\u0027 relabel\u003d\u0027yes\u0027\u003e\n    \u003clabel\u003e+107:+107\u003c/label\u003e\n    \u003cimagelabel\u003e+107:+107\u003c/imagelabel\u003e\n  \u003c/seclabel\u003e\n  ...","commit_id":"6fbd7f281e796dcbcce09bfffc83f17361b76241"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"81c40a11d8be13c447f12668e7c117c915e9265b","unresolved":false,"context_lines":[{"line_number":42,"context_line":"    def _assert_svirt_labels(self, server):"},{"line_number":43,"context_line":"        root \u003d self.get_server_xml(server[\u0027id\u0027])"},{"line_number":44,"context_line":"        self.assertIn("},{"line_number":45,"context_line":"            CONF.whitebox.selinux_label,"},{"line_number":46,"context_line":"            root.find(\"./seclabel[@model\u003d\u0027selinux\u0027]/label\").text)"},{"line_number":47,"context_line":"        self.assertIn("},{"line_number":48,"context_line":"            CONF.whitebox.selinux_imagelabel,"},{"line_number":49,"context_line":"            root.find(\"./seclabel[@model\u003d\u0027selinux\u0027]/imagelabel\").text)"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"    def test_create_server_with_label_check(self):"},{"line_number":52,"context_line":"        server \u003d self.create_test_server()"}],"source_content_type":"text/x-python","patch_set":5,"id":"9f560f44_8a42ae0e","line":49,"range":{"start_line":45,"start_character":1,"end_line":49,"end_character":70},"in_reply_to":"9f560f44_6fe5ac3e","updated":"2020-09-14 16:18:36.000000000","message":"yup correct","commit_id":"6fbd7f281e796dcbcce09bfffc83f17361b76241"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"d8d2b41f126509374bad7d9348ba4f4092991311","unresolved":false,"context_lines":[{"line_number":24,"context_line":"    \"\"\"Tests the selinux labels for the instance deployed"},{"line_number":25,"context_line":"       on QEMU/KVM virtualized environment"},{"line_number":26,"context_line":"    \"\"\""},{"line_number":27,"context_line":"    min_microversion \u003d \u00272.25\u0027"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"    @classmethod"},{"line_number":30,"context_line":"    def skip_checks(cls):"}],"source_content_type":"text/x-python","patch_set":6,"id":"9f560f44_c56f79f8","line":27,"range":{"start_line":27,"start_character":2,"end_line":27,"end_character":29},"updated":"2020-09-14 17:37:47.000000000","message":"this min version is for adding the auto value to block-livemigrate","commit_id":"afa3af8a25f8eb4d7a0b1175eb2205cb9944e21b"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"d8d2b41f126509374bad7d9348ba4f4092991311","unresolved":false,"context_lines":[{"line_number":57,"context_line":"        self._assert_svirt_labels(server)"},{"line_number":58,"context_line":"        self.resize_server(server[\u0027id\u0027], self.new_flavor[\u0027id\u0027])"},{"line_number":59,"context_line":"        self._assert_svirt_labels(server)"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    def test_live_migrate_with_label_check(self):"},{"line_number":62,"context_line":"        server \u003d self.create_test_server()"},{"line_number":63,"context_line":"        self._assert_svirt_labels(server)"},{"line_number":64,"context_line":"        destination_host \u003d self.get_host_other_than(server[\u0027id\u0027])"},{"line_number":65,"context_line":"        self.live_migrate(server[\u0027id\u0027], destination_host, \u0027ACTIVE\u0027)"},{"line_number":66,"context_line":"        self._assert_svirt_labels(server)"}],"source_content_type":"text/x-python","patch_set":6,"id":"9f560f44_257d95b2","line":66,"range":{"start_line":60,"start_character":0,"end_line":66,"end_character":41},"updated":"2020-09-14 17:37:47.000000000","message":"i guess this test is why that microversion was chosen","commit_id":"afa3af8a25f8eb4d7a0b1175eb2205cb9944e21b"}],"whitebox_tempest_plugin/config.py":[{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"8a1fe7b956c07bdc69e8cfdda8144304d32abf9e","unresolved":false,"context_lines":[{"line_number":167,"context_line":""},{"line_number":168,"context_line":"compute_features_group_opts \u003d ["},{"line_number":169,"context_line":"    cfg.BoolOpt("},{"line_number":170,"context_line":"        \u0027selinux_labels\u0027,"},{"line_number":171,"context_line":"        default\u003dFalse,"},{"line_number":172,"context_line":"        help\u003d\u0027This will enable the test to validate the selinux lables in QEMU\u0027"},{"line_number":173,"context_line":"        \u0027/KVM environment\u0027),"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_d5127d09","line":170,"range":{"start_line":170,"start_character":9,"end_line":170,"end_character":23},"updated":"2020-08-12 21:34:28.000000000","message":"As said on IRC, I\u0027m not sold on this as a compute feature. Let\u0027s leave as is for now, hopefully we\u0027ll come up with something better before merging.","commit_id":"6852bf0a26113c27d532176b23aa658ecefb992c"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"051209862ba1a73028ee6f01f65dc2cee9bf027c","unresolved":false,"context_lines":[{"line_number":167,"context_line":""},{"line_number":168,"context_line":"compute_features_group_opts \u003d ["},{"line_number":169,"context_line":"    cfg.BoolOpt("},{"line_number":170,"context_line":"        \u0027selinux_labels\u0027,"},{"line_number":171,"context_line":"        default\u003dFalse,"},{"line_number":172,"context_line":"        help\u003d\u0027This will enable the test to validate the selinux lables in QEMU\u0027"},{"line_number":173,"context_line":"        \u0027/KVM environment\u0027),"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_f5334161","line":170,"range":{"start_line":170,"start_character":9,"end_line":170,"end_character":23},"in_reply_to":"9f560f44_d5127d09","updated":"2020-08-12 22:07:35.000000000","message":"yeah I am aslo not able to find any other place, may be put it in whitebox or create something whitebox-downstream?? to be dedicated for the downstream only tests???","commit_id":"6852bf0a26113c27d532176b23aa658ecefb992c"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"8a1fe7b956c07bdc69e8cfdda8144304d32abf9e","unresolved":false,"context_lines":[{"line_number":170,"context_line":"        \u0027selinux_labels\u0027,"},{"line_number":171,"context_line":"        default\u003dFalse,"},{"line_number":172,"context_line":"        help\u003d\u0027This will enable the test to validate the selinux lables in QEMU\u0027"},{"line_number":173,"context_line":"        \u0027/KVM environment\u0027),"},{"line_number":174,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_f50d01e9","line":173,"updated":"2020-08-12 21:34:28.000000000","message":"nit:alignment","commit_id":"6852bf0a26113c27d532176b23aa658ecefb992c"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"051209862ba1a73028ee6f01f65dc2cee9bf027c","unresolved":false,"context_lines":[{"line_number":170,"context_line":"        \u0027selinux_labels\u0027,"},{"line_number":171,"context_line":"        default\u003dFalse,"},{"line_number":172,"context_line":"        help\u003d\u0027This will enable the test to validate the selinux lables in QEMU\u0027"},{"line_number":173,"context_line":"        \u0027/KVM environment\u0027),"},{"line_number":174,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_d538bd3e","line":173,"in_reply_to":"9f560f44_f50d01e9","updated":"2020-08-12 22:07:35.000000000","message":"sure","commit_id":"6852bf0a26113c27d532176b23aa658ecefb992c"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"8287da177d0413ae4c83b98372b31376b34c3600","unresolved":false,"context_lines":[{"line_number":165,"context_line":"             \u0027set would be `0: [0,1], 1: [2, 3]`.\u0027)"},{"line_number":166,"context_line":"]"},{"line_number":167,"context_line":""},{"line_number":168,"context_line":"compute_features_group_opts \u003d ["},{"line_number":169,"context_line":"    cfg.StrOpt("},{"line_number":170,"context_line":"        \u0027selinux_label\u0027,"},{"line_number":171,"context_line":"        default\u003dNone,"}],"source_content_type":"text/x-python","patch_set":4,"id":"9f560f44_88b328e9","line":168,"range":{"start_line":168,"start_character":0,"end_line":168,"end_character":27},"updated":"2020-08-24 18:26:28.000000000","message":"They\u0027re not really compute features at this point, are they? I guess lump them into the default [whitebox] section, unless there\u0027s a better idea?","commit_id":"239f3070a2fe5384a1ac8e85a7a3b542b430d3a4"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"bbd9e6bce6f2ddc1c985ff2649c3d8ea813aa336","unresolved":false,"context_lines":[{"line_number":165,"context_line":"             \u0027set would be `0: [0,1], 1: [2, 3]`.\u0027)"},{"line_number":166,"context_line":"]"},{"line_number":167,"context_line":""},{"line_number":168,"context_line":"compute_features_group_opts \u003d ["},{"line_number":169,"context_line":"    cfg.StrOpt("},{"line_number":170,"context_line":"        \u0027selinux_label\u0027,"},{"line_number":171,"context_line":"        default\u003dNone,"}],"source_content_type":"text/x-python","patch_set":4,"id":"9f560f44_df7bef77","line":168,"range":{"start_line":168,"start_character":0,"end_line":168,"end_character":27},"in_reply_to":"9f560f44_88b328e9","updated":"2020-08-26 14:30:25.000000000","message":"yeah it\u0027s not kinda deployment framework check thing, ok I will add it in whitebox then","commit_id":"239f3070a2fe5384a1ac8e85a7a3b542b430d3a4"}]}
