)]}'
{".zuul.yaml":[{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"a782b32e6e9f5e731130fc087154f68ab78a1508","unresolved":false,"context_lines":[{"line_number":53,"context_line":"            MAX_COMPUTE_NODES: 2"},{"line_number":54,"context_line":"            LIBVIRT_TYPE: kvm"},{"line_number":55,"context_line":"            TEMPEST_PLUGINS: /opt/stack/whitebox-tempest-plugin"},{"line_number":56,"context_line":"            WHITEBOX_PRIVKEY_PATH: /home/tempest/.ssh/id_rsa"},{"line_number":57,"context_line":"        devstack_local_conf:"},{"line_number":58,"context_line":"          post-config:"},{"line_number":59,"context_line":"            $NOVA_CONF:"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"9f560f44_c8a3044f","line":56,"updated":"2020-07-27 15:53:13.000000000","message":"If the default for WHITEBOX_FILE_BACKED_STORAGE_SIZE default that you set in devstack/settings doesn\u0027t apply to upstream CI, you have to set a value here. But I don\u0027t think it should be necessary, picking a smart default value that works in upstream CI should be enough.","commit_id":"43289b3db3667c246f90702e2215e1b44805acd2"}],"devstack/plugin.sh":[{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"a782b32e6e9f5e731130fc087154f68ab78a1508","unresolved":false,"context_lines":[{"line_number":8,"context_line":"    # This needs to come from Zuul, as devstack itself has no idea how many"},{"line_number":9,"context_line":"    # nodes are in the env"},{"line_number":10,"context_line":"    iniset $TEMPEST_CONFIG whitebox max_compute_nodes $MAX_COMPUTE_NODES"},{"line_number":11,"context_line":"    iniset $TEMPEST_CONFIG whitebox available_cinder_storage $WHITEBOX_AVAILABLE_CINDER_STORAGE"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"    iniset $TEMPEST_CONFIG whitebox-nova-compute config_path \"$WHITEBOX_NOVA_COMPUTE_CONFIG_PATH\""},{"line_number":14,"context_line":"    iniset $TEMPEST_CONFIG whitebox-nova-compute restart_command \"$WHITEBOX_NOVA_COMPUTE_RESTART_COMMAND\""}],"source_content_type":"text/x-sh","patch_set":6,"id":"9f560f44_48e1b49a","line":11,"updated":"2020-07-27 15:53:13.000000000","message":"You\u0027d have to set WHITEBOX_FILE_BACKED_MEMORY_SIZE","commit_id":"43289b3db3667c246f90702e2215e1b44805acd2"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"93f456282d0d0492952b52662eef6f39151528b8","unresolved":false,"context_lines":[{"line_number":17,"context_line":"    iniset $TEMPEST_CONFIG whitebox-nova-compute config_path \"$WHITEBOX_NOVA_COMPUTE_CONFIG_PATH\""},{"line_number":18,"context_line":"    iniset $TEMPEST_CONFIG whitebox-nova-compute stop_command \"$WHITEBOX_NOVA_COMPUTE_STOP_COMMAND\""},{"line_number":19,"context_line":"    iniset $TEMPEST_CONFIG whitebox-nova-compute start_command \"$WHITEBOX_NOVA_COMPUTE_START_COMMAND\""},{"line_number":20,"context_line":"    iniset $TEMPEST_CONFIG whitebox-nova-compute restart_command \"$WHITEBOX_NOVA_COMPUTE_RESTART_COMMAND\""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"    iniset $TEMPEST_CONFIG whitebox-libvirt restart_command \"$WHITEBOX_LIBVIRT_RESTART_COMMAND\""},{"line_number":23,"context_line":"    iniset $TEMPEST_CONFIG whitebox-libvirt stop_command \"$WHITEBOX_LIBVIRT_STOP_COMMAND\""}],"source_content_type":"text/x-sh","patch_set":14,"id":"9f560f44_461c2977","line":20,"updated":"2020-08-10 18:15:56.000000000","message":"Why did this get added?","commit_id":"04085a06c9228db7d3ba20c9986ec907efbc501e"}],"devstack/settings":[{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"a782b32e6e9f5e731130fc087154f68ab78a1508","unresolved":false,"context_lines":[{"line_number":1,"context_line":"NOVA_FILTERS\u003d\"$NOVA_FILTERS,NUMATopologyFilter\""},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"WHITEBOX_AVAILABLE_CINDER_STORAGE\u003d${WHITEBOX_AVAILABLE_CINDER_STORAGE:-24}"},{"line_number":4,"context_line":""},{"line_number":5,"context_line":"WHITEBOX_NOVA_COMPUTE_CONFIG_PATH\u003d${WHITEBOX_NOVA_COMPUTE_CONFIG_PATH:-/etc/nova/nova-cpu.conf}"},{"line_number":6,"context_line":"WHITEBOX_NOVA_COMPUTE_RESTART_COMMAND\u003d${WHITEBOX_NOVA_COMPUTE_RESTART_COMMAND:-\u0027systemctl restart devstack@n-cpu\u0027}"}],"source_content_type":"application/octet-stream","patch_set":6,"id":"9f560f44_28da80e8","line":3,"updated":"2020-07-27 15:53:13.000000000","message":"There\u0027d have to be a default value for WHITEBOX_FILE_BACKED_MEMORY_SIZE here.","commit_id":"43289b3db3667c246f90702e2215e1b44805acd2"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"93f456282d0d0492952b52662eef6f39151528b8","unresolved":false,"context_lines":[{"line_number":8,"context_line":"WHITEBOX_NOVA_COMPUTE_START_COMMAND\u003d${WHITEBOX_NOVA_COMPUTE_START_COMMAND:-\u0027systemctl start devstack@n-cpu\u0027}"},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"WHITEBOX_LIBVIRT_RESTART_COMMAND\u003d${WHITEBOX_LIBVIRT_RESTART_COMMAND:-\u0027systemctl restart libvirtd\u0027}"},{"line_number":11,"context_line":"WHITEBOX_LIBVIRT_STOP_COMMAND\u003d${WHITEBOX_LIBVIRT_STOP_COMMAND:-\u0027systemctl stop libvirtd\u0027}"}],"source_content_type":"application/octet-stream","patch_set":14,"id":"9f560f44_a90fd62b","side":"PARENT","line":11,"updated":"2020-08-10 18:15:56.000000000","message":"I\u0027m puzzled as to what\u0027s going on here. I can\u0027t actually find this trailing whitespace on master (I initially wanted to remove it in its own commit)\n\n\u003clater\u003e Oh, in `git show` it\u0027s explained:\n\n  \\ No newline at end of file","commit_id":"f5f21d6c7e9d6037e1165661c383a2a18b51f05b"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"93f456282d0d0492952b52662eef6f39151528b8","unresolved":false,"context_lines":[{"line_number":7,"context_line":"WHITEBOX_NOVA_COMPUTE_CONFIG_PATH\u003d${WHITEBOX_NOVA_COMPUTE_CONFIG_PATH:-/etc/nova/nova-cpu.conf}"},{"line_number":8,"context_line":"WHITEBOX_NOVA_COMPUTE_STOP_COMMAND\u003d${WHITEBOX_NOVA_COMPUTE_STOP_COMMAND:-\u0027systemctl stop devstack@n-cpu\u0027}"},{"line_number":9,"context_line":"WHITEBOX_NOVA_COMPUTE_START_COMMAND\u003d${WHITEBOX_NOVA_COMPUTE_START_COMMAND:-\u0027systemctl start devstack@n-cpu\u0027}"},{"line_number":10,"context_line":"WHITEBOX_NOVA_COMPUTE_RESTART_COMMAND\u003d${WHITEBOX_NOVA_COMPUTE_RESTART_COMMAND:-\u0027systemctl restart devstack@n-cpu\u0027}"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"WHITEBOX_LIBVIRT_RESTART_COMMAND\u003d${WHITEBOX_LIBVIRT_RESTART_COMMAND:-\u0027systemctl restart libvirtd\u0027}"},{"line_number":13,"context_line":"WHITEBOX_LIBVIRT_STOP_COMMAND\u003d${WHITEBOX_LIBVIRT_STOP_COMMAND:-\u0027systemctl stop libvirtd\u0027}"}],"source_content_type":"application/octet-stream","patch_set":14,"id":"9f560f44_6615ed48","line":10,"updated":"2020-08-10 18:15:56.000000000","message":"Ditto, why did this get added?","commit_id":"04085a06c9228db7d3ba20c9986ec907efbc501e"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"2ece4d358823943a40cf6ed477e683bcf5443649","unresolved":false,"context_lines":[{"line_number":2,"context_line":""},{"line_number":3,"context_line":"WHITEBOX_AVAILABLE_CINDER_STORAGE\u003d${WHITEBOX_AVAILABLE_CINDER_STORAGE:-24}"},{"line_number":4,"context_line":"SMT_HOSTS\u003d${SMT_HOSTS:-\u0027\u0027}"},{"line_number":5,"context_line":"WHITEBOX_FILE_BACKED_MEMORY_SIZE\u003d${WHITEBOX_FILE_BACKED_MEMORY_SIZE:-8192}"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"WHITEBOX_NOVA_COMPUTE_CONFIG_PATH\u003d${WHITEBOX_NOVA_COMPUTE_CONFIG_PATH:-/etc/nova/nova-cpu.conf}"},{"line_number":8,"context_line":"WHITEBOX_NOVA_COMPUTE_STOP_COMMAND\u003d${WHITEBOX_NOVA_COMPUTE_STOP_COMMAND:-\u0027systemctl stop devstack@n-cpu\u0027}"}],"source_content_type":"application/octet-stream","patch_set":17,"id":"9f560f44_63d2375e","line":5,"range":{"start_line":5,"start_character":69,"end_line":5,"end_character":73},"updated":"2020-08-24 18:53:18.000000000","message":"Ah, I guess we don\u0027t need Zuul to set anything for us because that\u0027s the default in devstack. I guess this works.","commit_id":"a06d788fcd1f791518bfaf5cd96e6b1f0c13a558"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"76da9f3e225eed173e4da3ccaf4fbbaf6e7bbd3c","unresolved":false,"context_lines":[{"line_number":2,"context_line":""},{"line_number":3,"context_line":"WHITEBOX_AVAILABLE_CINDER_STORAGE\u003d${WHITEBOX_AVAILABLE_CINDER_STORAGE:-24}"},{"line_number":4,"context_line":"SMT_HOSTS\u003d${SMT_HOSTS:-\u0027\u0027}"},{"line_number":5,"context_line":"WHITEBOX_FILE_BACKED_MEMORY_SIZE\u003d${WHITEBOX_FILE_BACKED_MEMORY_SIZE:-8192}"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"WHITEBOX_NOVA_COMPUTE_CONFIG_PATH\u003d${WHITEBOX_NOVA_COMPUTE_CONFIG_PATH:-/etc/nova/nova-cpu.conf}"},{"line_number":8,"context_line":"WHITEBOX_NOVA_COMPUTE_STOP_COMMAND\u003d${WHITEBOX_NOVA_COMPUTE_STOP_COMMAND:-\u0027systemctl stop devstack@n-cpu\u0027}"}],"source_content_type":"application/octet-stream","patch_set":17,"id":"9f560f44_ca551dc4","line":5,"range":{"start_line":5,"start_character":69,"end_line":5,"end_character":73},"in_reply_to":"9f560f44_63d2375e","updated":"2020-09-09 14:19:06.000000000","message":"But we still need to set the tempest.conf value for the file_backed_memory size, right??","commit_id":"a06d788fcd1f791518bfaf5cd96e6b1f0c13a558"}],"whitebox_tempest_plugin/api/compute/test_file_backed_memory.py":[{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"8db5bbf73320b47d48828d1861edbd7c879beb05","unresolved":false,"context_lines":[{"line_number":30,"context_line":"        self._validate_config()"},{"line_number":31,"context_line":"        self.new_flavor \u003d self.create_flavor(vcpus\u003d2, ram\u003d256)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    def _validate_config(self):"},{"line_number":34,"context_line":"        hosts \u003d self.list_compute_hosts()"},{"line_number":35,"context_line":"        for host in hosts:"},{"line_number":36,"context_line":"            ctlplane_address \u003d self.get_ctlplane_address(host)"},{"line_number":37,"context_line":"            service \u003d clients.ServiceManager(ctlplane_address, \u0027libvirt\u0027)"},{"line_number":38,"context_line":"            value \u003d service.get_conf_opt(\u0027libvirt\u0027, \u0027file_backed_memory\u0027)"},{"line_number":39,"context_line":"            if value is None:"},{"line_number":40,"context_line":"                raise self.skipException("},{"line_number":41,"context_line":"                    \"file_backed_memory is not configured\")"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    def _assert_memory_backing_type_mode(self, server):"},{"line_number":44,"context_line":"        root \u003d self.get_server_xml(server[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf51134e_f4d46622","line":41,"range":{"start_line":33,"start_character":0,"end_line":41,"end_character":59},"updated":"2020-06-22 18:55:54.000000000","message":"To keep with the \"declare, don\u0027t introspect\" mantra we\u0027re aiming towards, I\u0027d rather this be removed, and instead use something similar to Tempest\u0027s compute-feature-enabled config section. I wonder if plugins can add items to that config group (so we can have [config-feature-enabled]/libvirt_file_backed_memory). I\u0027ve asked in #openstack-qa.","commit_id":"ad2235a011d97dfb31f2f9de0773dc2ac58809ec"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"57a345097667e69aa8003a98dea923549bd0785e","unresolved":false,"context_lines":[{"line_number":30,"context_line":"        self._validate_config()"},{"line_number":31,"context_line":"        self.new_flavor \u003d self.create_flavor(vcpus\u003d2, ram\u003d256)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    def _validate_config(self):"},{"line_number":34,"context_line":"        hosts \u003d self.list_compute_hosts()"},{"line_number":35,"context_line":"        for host in hosts:"},{"line_number":36,"context_line":"            ctlplane_address \u003d self.get_ctlplane_address(host)"},{"line_number":37,"context_line":"            service \u003d clients.ServiceManager(ctlplane_address, \u0027libvirt\u0027)"},{"line_number":38,"context_line":"            value \u003d service.get_conf_opt(\u0027libvirt\u0027, \u0027file_backed_memory\u0027)"},{"line_number":39,"context_line":"            if value is None:"},{"line_number":40,"context_line":"                raise self.skipException("},{"line_number":41,"context_line":"                    \"file_backed_memory is not configured\")"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    def _assert_memory_backing_type_mode(self, server):"},{"line_number":44,"context_line":"        root \u003d self.get_server_xml(server[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf51134e_8f7b57bc","line":41,"range":{"start_line":33,"start_character":0,"end_line":41,"end_character":59},"in_reply_to":"bf51134e_6f8a43bf","updated":"2020-06-22 19:58:06.000000000","message":"\u003cgmann\u003e and here is how, tempest will add all those plugins defined config opt into tempest namespace - https://github.com/openstack/tempest/blob/a0ee8b4ccfc512a09e1ddb135950b767110aae9b/tempest/config.py#L1210","commit_id":"ad2235a011d97dfb31f2f9de0773dc2ac58809ec"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"5950e29439016bc8626bcab164feb383478ef8c9","unresolved":false,"context_lines":[{"line_number":30,"context_line":"        self._validate_config()"},{"line_number":31,"context_line":"        self.new_flavor \u003d self.create_flavor(vcpus\u003d2, ram\u003d256)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    def _validate_config(self):"},{"line_number":34,"context_line":"        hosts \u003d self.list_compute_hosts()"},{"line_number":35,"context_line":"        for host in hosts:"},{"line_number":36,"context_line":"            ctlplane_address \u003d self.get_ctlplane_address(host)"},{"line_number":37,"context_line":"            service \u003d clients.ServiceManager(ctlplane_address, \u0027libvirt\u0027)"},{"line_number":38,"context_line":"            value \u003d service.get_conf_opt(\u0027libvirt\u0027, \u0027file_backed_memory\u0027)"},{"line_number":39,"context_line":"            if value is None:"},{"line_number":40,"context_line":"                raise self.skipException("},{"line_number":41,"context_line":"                    \"file_backed_memory is not configured\")"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    def _assert_memory_backing_type_mode(self, server):"},{"line_number":44,"context_line":"        root \u003d self.get_server_xml(server[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf51134e_6f8a43bf","line":41,"range":{"start_line":33,"start_character":0,"end_line":41,"end_character":59},"in_reply_to":"bf51134e_f4d46622","updated":"2020-06-22 19:56:45.000000000","message":"\u003ctosky\u003e artom: cinder-tempest-plugin defines additional options for volume-feature-enabled\n\u003cgmann\u003e artom: you can pass any config option (adding in existing group or new group) from tempest plugin and it will be registered in olso under tempest namespace only\n\u003cgmann\u003e artom: this is interface you need to override - https://github.com/openstack/tempest/blob/206a9abec5e317b0644072d1308f74ce4f6a326d/tempest/test_discover/plugins.py#L45","commit_id":"ad2235a011d97dfb31f2f9de0773dc2ac58809ec"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"e264eb2b5973ef62858894f2445f315a5e3a1dbc","unresolved":false,"context_lines":[{"line_number":32,"context_line":"        super(FileBackedMemory, cls).skip_checks()"},{"line_number":33,"context_line":"        if not CONF.compute_feature_enabled.file_backed_memory:"},{"line_number":34,"context_line":"            msg \u003d \"file backed memory is not enabled\""},{"line_number":35,"context_line":"            raise cls.skipException(msg)"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"    def setUp(self):"},{"line_number":38,"context_line":"        super(FileBackedMemory, self).setUp()"}],"source_content_type":"text/x-python","patch_set":5,"id":"bf51134e_19b3524f","line":35,"range":{"start_line":35,"start_character":36,"end_line":35,"end_character":39},"updated":"2020-07-06 18:54:12.000000000","message":"nit: do we really need a separate `msg` variable? Why not just\n\n  raise cls.skipException(\u0027file backed memory is not enabled\u0027)\n\n?","commit_id":"5f4ba2bf5538a7de5d9ae448cdcfbf1ef8a61372"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"9e9d28909ad904ba970e2a98d582cb839a3da101","unresolved":false,"context_lines":[{"line_number":32,"context_line":"        super(FileBackedMemory, cls).skip_checks()"},{"line_number":33,"context_line":"        if not CONF.compute_feature_enabled.file_backed_memory:"},{"line_number":34,"context_line":"            msg \u003d \"file backed memory is not enabled\""},{"line_number":35,"context_line":"            raise cls.skipException(msg)"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"    def setUp(self):"},{"line_number":38,"context_line":"        super(FileBackedMemory, self).setUp()"}],"source_content_type":"text/x-python","patch_set":5,"id":"bf51134e_b9dce646","line":35,"range":{"start_line":35,"start_character":36,"end_line":35,"end_character":39},"in_reply_to":"bf51134e_19b3524f","updated":"2020-07-06 19:12:32.000000000","message":"Sure, will change it","commit_id":"5f4ba2bf5538a7de5d9ae448cdcfbf1ef8a61372"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"e264eb2b5973ef62858894f2445f315a5e3a1dbc","unresolved":false,"context_lines":[{"line_number":38,"context_line":"        super(FileBackedMemory, self).setUp()"},{"line_number":39,"context_line":"        self.new_flavor \u003d self.create_flavor(vcpus\u003d2, ram\u003d256)"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def _assert_memory_backing_type_mode(self, server):"},{"line_number":42,"context_line":"        root \u003d self.get_server_xml(server[\u0027id\u0027])"},{"line_number":43,"context_line":"        source_type \u003d root.find(\u0027./memoryBacking/source\u0027)"},{"line_number":44,"context_line":"        access_mode \u003d root.find(\u0027./memoryBacking/access\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"bf51134e_39bf36fc","line":41,"updated":"2020-07-06 18:54:12.000000000","message":"OK - I had to loop up the spec [1] to grok this - this is enabled via a per-host libvirt config option, not a flavor extra spec or image property.\n\nSo actually, what\u0027s stopping us from running this in the upstream gate?\n\nThe test itself could set [libvirt]/file_backed_memory (and unset it when it\u0027s done). We could even set it on one node and leave it off on the other, and test funky things like migrations (live and cold) between them, and make sure the correct memory backing is configured in each case.\n\n[1] https://docs.openstack.org/nova/latest/admin/file-backed-memory.html","commit_id":"5f4ba2bf5538a7de5d9ae448cdcfbf1ef8a61372"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"9e9d28909ad904ba970e2a98d582cb839a3da101","unresolved":false,"context_lines":[{"line_number":38,"context_line":"        super(FileBackedMemory, self).setUp()"},{"line_number":39,"context_line":"        self.new_flavor \u003d self.create_flavor(vcpus\u003d2, ram\u003d256)"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def _assert_memory_backing_type_mode(self, server):"},{"line_number":42,"context_line":"        root \u003d self.get_server_xml(server[\u0027id\u0027])"},{"line_number":43,"context_line":"        source_type \u003d root.find(\u0027./memoryBacking/source\u0027)"},{"line_number":44,"context_line":"        access_mode \u003d root.find(\u0027./memoryBacking/access\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"bf51134e_d99c3a5d","line":41,"in_reply_to":"bf51134e_39bf36fc","updated":"2020-07-06 19:12:32.000000000","message":"Yes this can be run in upstream gate job as well and even we can run it in downstream by just changing the config and running the whole tempest suite which we are currently doing it but this patch was more to address the below RFE:\nhttps://bugzilla.redhat.com/show_bug.cgi?id\u003d1795933\n\nand moreover there is no way in tempest to validate the host xml to make sure instance is actually using the correct memory backing source and access.\n\nBut yes I can create testcases to check things you mentioned but for that I might need to move from the declarative approach and run the crudini to set/unset/validate the values in nova.conf like setting this on more compute host and leave second one as it is and then validate live/cold migration to validate that this should be failing etc..?","commit_id":"5f4ba2bf5538a7de5d9ae448cdcfbf1ef8a61372"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"d5f442ced90585b8a2a9e5b100392909f9690069","unresolved":false,"context_lines":[{"line_number":38,"context_line":"        super(FileBackedMemory, self).setUp()"},{"line_number":39,"context_line":"        self.new_flavor \u003d self.create_flavor(vcpus\u003d2, ram\u003d256)"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def _assert_memory_backing_type_mode(self, server):"},{"line_number":42,"context_line":"        root \u003d self.get_server_xml(server[\u0027id\u0027])"},{"line_number":43,"context_line":"        source_type \u003d root.find(\u0027./memoryBacking/source\u0027)"},{"line_number":44,"context_line":"        access_mode \u003d root.find(\u0027./memoryBacking/access\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"bf51134e_dc64164c","line":41,"in_reply_to":"bf51134e_3c8392ce","updated":"2020-07-07 17:20:16.000000000","message":"from value , I mean file_backed_memory\u003d\u003csize\u003e","commit_id":"5f4ba2bf5538a7de5d9ae448cdcfbf1ef8a61372"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1dad181e5ccfe7d9ab65904fb3afc62aa032773b","unresolved":false,"context_lines":[{"line_number":38,"context_line":"        super(FileBackedMemory, self).setUp()"},{"line_number":39,"context_line":"        self.new_flavor \u003d self.create_flavor(vcpus\u003d2, ram\u003d256)"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def _assert_memory_backing_type_mode(self, server):"},{"line_number":42,"context_line":"        root \u003d self.get_server_xml(server[\u0027id\u0027])"},{"line_number":43,"context_line":"        source_type \u003d root.find(\u0027./memoryBacking/source\u0027)"},{"line_number":44,"context_line":"        access_mode \u003d root.find(\u0027./memoryBacking/access\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"bf51134e_7cefdc86","line":41,"in_reply_to":"bf51134e_7c2d1c45","updated":"2020-07-06 20:18:10.000000000","message":"for the devstack job set it to say 8GB\n\nthe upstream vms only have 8GB of ram total and as a result the vms normally only have at most 3-4 GB free for openstack to run the l2 vms\n\nso 8G is more then enough and we wont actully use that much anyway.\n\nthe upstream vms should have 80G of diskspace total but when use file backed memory it does not preallocate all the memory it just set a limit on how much file backed memory can be used.\n\nwe can contol the amount vai a config option for the plugin but 8GB is probably going to be fine upstream or downstream.","commit_id":"5f4ba2bf5538a7de5d9ae448cdcfbf1ef8a61372"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"02e5dc850f44c177990035d68c5faefd7de1f0c2","unresolved":false,"context_lines":[{"line_number":38,"context_line":"        super(FileBackedMemory, self).setUp()"},{"line_number":39,"context_line":"        self.new_flavor \u003d self.create_flavor(vcpus\u003d2, ram\u003d256)"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def _assert_memory_backing_type_mode(self, server):"},{"line_number":42,"context_line":"        root \u003d self.get_server_xml(server[\u0027id\u0027])"},{"line_number":43,"context_line":"        source_type \u003d root.find(\u0027./memoryBacking/source\u0027)"},{"line_number":44,"context_line":"        access_mode \u003d root.find(\u0027./memoryBacking/access\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"bf51134e_3c8392ce","line":41,"in_reply_to":"bf51134e_7cefdc86","updated":"2020-07-07 17:19:15.000000000","message":"ok, so we need to set two things here in nova.conf:\n\n1. reserved_host_memory_mb \u003d 0\n2. then use size value from tempest.conf and set it to the nova.conf restart the required nova services and then run the tests and after completion revert it back. Am I understanding it correctly??","commit_id":"5f4ba2bf5538a7de5d9ae448cdcfbf1ef8a61372"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"bbcdfa3e2be657fce2bcc0db7cefce7b0d9457f9","unresolved":false,"context_lines":[{"line_number":38,"context_line":"        super(FileBackedMemory, self).setUp()"},{"line_number":39,"context_line":"        self.new_flavor \u003d self.create_flavor(vcpus\u003d2, ram\u003d256)"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def _assert_memory_backing_type_mode(self, server):"},{"line_number":42,"context_line":"        root \u003d self.get_server_xml(server[\u0027id\u0027])"},{"line_number":43,"context_line":"        source_type \u003d root.find(\u0027./memoryBacking/source\u0027)"},{"line_number":44,"context_line":"        access_mode \u003d root.find(\u0027./memoryBacking/access\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"bf51134e_dc3a68c2","line":41,"in_reply_to":"bf51134e_d99c3a5d","updated":"2020-07-06 19:31:22.000000000","message":"I\u0027ll let you decide which test cases are worth it (so feel free to ignore the ones I mentioned above), but I think having this in the upstream gate is worthwhile, so let\u0027s enable that with how we usually do it:\n\n  with service_manager.config_options(\u0027libvirt\u0027, \u0027file_backed_memory\u0027, \u003csize\u003e):\n    \u003cdo stuff\u003e\n\nThis is obviously very pseudo-code, and would probably benefit from waiting until https://review.opendev.org/#/c/736820/ merges.","commit_id":"5f4ba2bf5538a7de5d9ae448cdcfbf1ef8a61372"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"e7e8a35f04578d591a4d0575f3cbf3d2561aefad","unresolved":false,"context_lines":[{"line_number":38,"context_line":"        super(FileBackedMemory, self).setUp()"},{"line_number":39,"context_line":"        self.new_flavor \u003d self.create_flavor(vcpus\u003d2, ram\u003d256)"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def _assert_memory_backing_type_mode(self, server):"},{"line_number":42,"context_line":"        root \u003d self.get_server_xml(server[\u0027id\u0027])"},{"line_number":43,"context_line":"        source_type \u003d root.find(\u0027./memoryBacking/source\u0027)"},{"line_number":44,"context_line":"        access_mode \u003d root.find(\u0027./memoryBacking/access\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"bf51134e_7c2d1c45","line":41,"in_reply_to":"bf51134e_dc3a68c2","updated":"2020-07-06 20:00:52.000000000","message":"But , Isn\u0027t the size here depends on per host basis used in the env? that\u0027s why I left it to set it at the time of deployment using tripleo params. \n\nhow can we pick one standard memory size for the configuration?? and also we might need to change the reserved_host memory in the config as well, better to change it to 0 if we use file_backed_memory.\n\n\nThat\u0027s why I thought of leaving it to the deployment to set the config and then run the validation check to assert the xml  and making sure it is correct after live migration/resize operation.","commit_id":"5f4ba2bf5538a7de5d9ae448cdcfbf1ef8a61372"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"e264eb2b5973ef62858894f2445f315a5e3a1dbc","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        server \u003d self.resize_server(server[\u0027id\u0027], self.new_flavor[\u0027id\u0027])"},{"line_number":52,"context_line":"        self._assert_memory_backing_type_mode(server)"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"    def test_live_migrate_file_backed_Server(self):"},{"line_number":55,"context_line":"        server_1 \u003d self.create_test_server(wait_until\u003d\"ACTIVE\")"},{"line_number":56,"context_line":"        self._assert_memory_backing_type_mode(server_1)"},{"line_number":57,"context_line":"        destination_host \u003d self.get_host_other_than(server_1[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":5,"id":"bf51134e_b97d0670","line":54,"range":{"start_line":54,"start_character":38,"end_line":54,"end_character":39},"updated":"2020-07-06 18:54:12.000000000","message":"nit: lower case this","commit_id":"5f4ba2bf5538a7de5d9ae448cdcfbf1ef8a61372"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"9e9d28909ad904ba970e2a98d582cb839a3da101","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        server \u003d self.resize_server(server[\u0027id\u0027], self.new_flavor[\u0027id\u0027])"},{"line_number":52,"context_line":"        self._assert_memory_backing_type_mode(server)"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"    def test_live_migrate_file_backed_Server(self):"},{"line_number":55,"context_line":"        server_1 \u003d self.create_test_server(wait_until\u003d\"ACTIVE\")"},{"line_number":56,"context_line":"        self._assert_memory_backing_type_mode(server_1)"},{"line_number":57,"context_line":"        destination_host \u003d self.get_host_other_than(server_1[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":5,"id":"bf51134e_f9cade4c","line":54,"range":{"start_line":54,"start_character":38,"end_line":54,"end_character":39},"in_reply_to":"bf51134e_b97d0670","updated":"2020-07-06 19:12:32.000000000","message":"done","commit_id":"5f4ba2bf5538a7de5d9ae448cdcfbf1ef8a61372"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"a782b32e6e9f5e731130fc087154f68ab78a1508","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        super(FileBackedMemory, self).setUp()"},{"line_number":48,"context_line":"        self.new_flavor \u003d self.create_flavor(vcpus\u003d2, ram\u003d256)"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"    def _assert_memory_backing_type_mode(self, server):"},{"line_number":51,"context_line":"        root \u003d self.get_server_xml(server[\u0027id\u0027])"},{"line_number":52,"context_line":"        source_type \u003d root.find(\u0027./memoryBacking/source\u0027)"},{"line_number":53,"context_line":"        access_mode \u003d root.find(\u0027./memoryBacking/access\u0027)"}],"source_content_type":"text/x-python","patch_set":6,"id":"9f560f44_a8bdf069","line":50,"range":{"start_line":50,"start_character":8,"end_line":50,"end_character":40},"updated":"2020-07-27 15:53:13.000000000","message":"It\u0027s specifically asserting \u0027shared\u0027 mode, I think it should be named as such.","commit_id":"43289b3db3667c246f90702e2215e1b44805acd2"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"9ba2189b23b46e66914c148a0f819a11df8fe362","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        super(FileBackedMemory, self).setUp()"},{"line_number":48,"context_line":"        self.new_flavor \u003d self.create_flavor(vcpus\u003d2, ram\u003d256)"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"    def _assert_memory_backing_type_mode(self, server):"},{"line_number":51,"context_line":"        root \u003d self.get_server_xml(server[\u0027id\u0027])"},{"line_number":52,"context_line":"        source_type \u003d root.find(\u0027./memoryBacking/source\u0027)"},{"line_number":53,"context_line":"        access_mode \u003d root.find(\u0027./memoryBacking/access\u0027)"}],"source_content_type":"text/x-python","patch_set":6,"id":"9f560f44_812ef5a2","line":50,"range":{"start_line":50,"start_character":8,"end_line":50,"end_character":40},"in_reply_to":"9f560f44_a8bdf069","updated":"2020-07-28 15:03:23.000000000","message":"actually it\u0027s asserting both shared mode and file type. How about i change it to something like\n_assert_shared_mode_file_type()??","commit_id":"43289b3db3667c246f90702e2215e1b44805acd2"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"a782b32e6e9f5e731130fc087154f68ab78a1508","unresolved":false,"context_lines":[{"line_number":62,"context_line":"                                     \u0027file_backed_memory\u0027, self.size)):"},{"line_number":63,"context_line":"            ctlplane_address \u003d self.get_ctlplane_address(hosts[1])"},{"line_number":64,"context_line":"            service \u003d clients.ServiceManager(ctlplane_address, \u0027nova-compute\u0027)"},{"line_number":65,"context_line":"            with service.config_options((\u0027libvirt\u0027,"},{"line_number":66,"context_line":"                                         \u0027file_backed_memory\u0027, self.size)):"},{"line_number":67,"context_line":"                server \u003d self.create_test_server()"},{"line_number":68,"context_line":"                self._assert_memory_backing_type_mode(server)"},{"line_number":69,"context_line":"                server \u003d self.resize_server("}],"source_content_type":"text/x-python","patch_set":6,"id":"9f560f44_a84b3085","line":66,"range":{"start_line":65,"start_character":0,"end_line":66,"end_character":75},"updated":"2020-07-27 15:53:13.000000000","message":"I\u0027m confused - why are we nesting these, and setting the same file_backed_memory on both hosts? Is this test just making sure a resize from file backed to file backed works? If that\u0027s the case, we should un-nest these context managers, and rename the test method to be more explicit.","commit_id":"43289b3db3667c246f90702e2215e1b44805acd2"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"9ba2189b23b46e66914c148a0f819a11df8fe362","unresolved":false,"context_lines":[{"line_number":62,"context_line":"                                     \u0027file_backed_memory\u0027, self.size)):"},{"line_number":63,"context_line":"            ctlplane_address \u003d self.get_ctlplane_address(hosts[1])"},{"line_number":64,"context_line":"            service \u003d clients.ServiceManager(ctlplane_address, \u0027nova-compute\u0027)"},{"line_number":65,"context_line":"            with service.config_options((\u0027libvirt\u0027,"},{"line_number":66,"context_line":"                                         \u0027file_backed_memory\u0027, self.size)):"},{"line_number":67,"context_line":"                server \u003d self.create_test_server()"},{"line_number":68,"context_line":"                self._assert_memory_backing_type_mode(server)"},{"line_number":69,"context_line":"                server \u003d self.resize_server("}],"source_content_type":"text/x-python","patch_set":6,"id":"9f560f44_45750895","line":66,"range":{"start_line":65,"start_character":0,"end_line":66,"end_character":75},"in_reply_to":"9f560f44_a84b3085","updated":"2020-07-28 15:03:23.000000000","message":"I am not completely sure if the resize_to_same host has been enabled here so thus setting it on both the host. I mean we can set that params too but that I thought is too much for this test:)\n\nDo we have any other way to set the value and then unset it for multiple hosts?? like adding the ctlplane_address as a list or tuple and then set/unset it?? for time being I just did like this but the plan is to change the code on client.py to enable the conf. on all the host present in the environment and remove the nested thing.","commit_id":"43289b3db3667c246f90702e2215e1b44805acd2"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"a782b32e6e9f5e731130fc087154f68ab78a1508","unresolved":false,"context_lines":[{"line_number":78,"context_line":"                                     \u0027file_backed_memory\u0027, self.size)):"},{"line_number":79,"context_line":"            ctlplane_address \u003d self.get_ctlplane_address(hosts[1])"},{"line_number":80,"context_line":"            service \u003d clients.ServiceManager(ctlplane_address, \u0027nova-compute\u0027)"},{"line_number":81,"context_line":"            with service.config_options((\u0027libvirt\u0027,"},{"line_number":82,"context_line":"                                         \u0027file_backed_memory\u0027, self.size)):"},{"line_number":83,"context_line":"                server_1 \u003d self.create_test_server(wait_until\u003d\"ACTIVE\")"},{"line_number":84,"context_line":"                self._assert_memory_backing_type_mode(server_1)"},{"line_number":85,"context_line":"                destination_host \u003d self.get_host_other_than(server_1[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":6,"id":"9f560f44_68591859","line":82,"range":{"start_line":81,"start_character":0,"end_line":82,"end_character":75},"updated":"2020-07-27 15:53:13.000000000","message":"Ditto, re: nesting. But in this case it\u0027s more clear that we\u0027re live migrating from a file backed host to a file backed host, so the method name is OK.","commit_id":"43289b3db3667c246f90702e2215e1b44805acd2"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"93f456282d0d0492952b52662eef6f39151528b8","unresolved":false,"context_lines":[{"line_number":39,"context_line":"        # 2 compute host"},{"line_number":40,"context_line":"        if not CONF.whitebox.file_backed_memory_size:"},{"line_number":41,"context_line":"            raise cls.skipException(\"file backed memory is not enabled\")"},{"line_number":42,"context_line":"        if CONF.compute.min_compute_nodes !\u003d 2:"},{"line_number":43,"context_line":"            msg \u003d \"Not equal to 2 compute nodes,\""},{"line_number":44,"context_line":"            \"skipping file backed memory resize/migration test\""},{"line_number":45,"context_line":"            raise cls.skipException(msg)"}],"source_content_type":"text/x-python","patch_set":14,"id":"9f560f44_c9c7aa95","line":42,"range":{"start_line":42,"start_character":42,"end_line":42,"end_character":44},"updated":"2020-08-10 18:15:56.000000000","message":"Since \u0027min\u0027 indicated a minimum, ideally we\u0027d use a \u003e\u003d 2 or \u003e 1 here, and the message would be something like \"need at least 2 compute nodes to run file backed migration tests\"","commit_id":"04085a06c9228db7d3ba20c9986ec907efbc501e"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"93f456282d0d0492952b52662eef6f39151528b8","unresolved":false,"context_lines":[{"line_number":65,"context_line":"                                     \u0027file_backed_memory\u0027, self.size),"},{"line_number":66,"context_line":"                                    (\u0027DEFAULT\u0027,"},{"line_number":67,"context_line":"                                     \u0027ram_allocation_ratio\u0027, \u00271\u0027),"},{"line_number":68,"context_line":"                                    (\u0027DEFAULT\u0027,"},{"line_number":69,"context_line":"                                     \u0027allow_resize_to_same_host\u0027, \u0027False\u0027)),"},{"line_number":70,"context_line":"            host2_sm.config_options((\u0027libvirt\u0027,"},{"line_number":71,"context_line":"                                     \u0027file_backed_memory\u0027, self.size),"},{"line_number":72,"context_line":"                                    (\u0027DEFAULT\u0027,"}],"source_content_type":"text/x-python","patch_set":14,"id":"9f560f44_6942de10","line":69,"range":{"start_line":68,"start_character":36,"end_line":69,"end_character":76},"updated":"2020-08-10 18:15:56.000000000","message":"This is a controller/scheduler option, it makes no sense in n-cpu.conf. You can just drop it. It\u0027s not set in either [1] or [2] (I can\u0027t remember if this is a per-cell thing or not). Unless... this is needed downstream? But then can\u0027t the deployment just set the option?\n\n[1] https://zuul.opendev.org/t/openstack/build/8bdd4a5207b44afaa651073305bd70f8/log/controller/logs/etc/nova/nova_cell1_conf.txt\n[2] https://zuul.opendev.org/t/openstack/build/8bdd4a5207b44afaa651073305bd70f8/log/controller/logs/etc/nova/nova_conf.txt","commit_id":"04085a06c9228db7d3ba20c9986ec907efbc501e"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"93f456282d0d0492952b52662eef6f39151528b8","unresolved":false,"context_lines":[{"line_number":71,"context_line":"                                     \u0027file_backed_memory\u0027, self.size),"},{"line_number":72,"context_line":"                                    (\u0027DEFAULT\u0027,"},{"line_number":73,"context_line":"                                     \u0027ram_allocation_ratio\u0027, \u00271\u0027),"},{"line_number":74,"context_line":"                                    (\u0027DEFAULT\u0027,"},{"line_number":75,"context_line":"                                     \u0027allow_resize_to_same_host\u0027, \u0027False\u0027))"},{"line_number":76,"context_line":"        ):"},{"line_number":77,"context_line":"            server \u003d self.create_test_server()"},{"line_number":78,"context_line":"            self._assert_shared_mode_and_file_type(server)"}],"source_content_type":"text/x-python","patch_set":14,"id":"9f560f44_895812fa","line":75,"range":{"start_line":74,"start_character":36,"end_line":75,"end_character":75},"updated":"2020-08-10 18:15:56.000000000","message":"Ditto.","commit_id":"04085a06c9228db7d3ba20c9986ec907efbc501e"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"93f456282d0d0492952b52662eef6f39151528b8","unresolved":false,"context_lines":[{"line_number":95,"context_line":"                                    (\u0027DEFAULT\u0027,"},{"line_number":96,"context_line":"                                     \u0027ram_allocation_ratio\u0027, \u00271\u0027))"},{"line_number":97,"context_line":"        ):"},{"line_number":98,"context_line":"            server_1 \u003d self.create_test_server(wait_until\u003d\"ACTIVE\")"},{"line_number":99,"context_line":"            self._assert_shared_mode_and_file_type(server_1)"},{"line_number":100,"context_line":"            destination_host \u003d self.get_host_other_than(server_1[\u0027id\u0027])"},{"line_number":101,"context_line":"            self.live_migrate(server_1[\u0027id\u0027], destination_host, \u0027ACTIVE\u0027)"}],"source_content_type":"text/x-python","patch_set":14,"id":"9f560f44_49071acb","line":98,"range":{"start_line":98,"start_character":13,"end_line":98,"end_character":20},"updated":"2020-08-10 18:15:56.000000000","message":"Not sure why we need the _1, there\u0027s only 1 server in this test.","commit_id":"04085a06c9228db7d3ba20c9986ec907efbc501e"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"b501a9e3838c3205cebcd8e86a3cfbfb8c17c7b0","unresolved":false,"context_lines":[{"line_number":57,"context_line":"        self.assertEqual(\u0027shared\u0027, access_mode.get(\u0027mode\u0027))"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"    def test_resize_file_backed_server_on_diff_host(self):"},{"line_number":60,"context_line":"        host1, host2 \u003d [self.get_ctlplane_address(host) for host in"},{"line_number":61,"context_line":"                        self.list_compute_hosts()]"},{"line_number":62,"context_line":"        host1_sm \u003d clients.NovaServiceManager(host1, \u0027nova-compute\u0027,"},{"line_number":63,"context_line":"                                              self.os_admin.services_client)"}],"source_content_type":"text/x-python","patch_set":16,"id":"9f560f44_3b16c856","line":60,"updated":"2020-08-21 14:42:08.000000000","message":"The recent NSM change to get it working downstream now requires hostname instead of ctrlplane address: https://review.opendev.org/#/c/746605/.  Example of what the change required when initializing NSM can be found here: https://opendev.org/openstack/whitebox-tempest-plugin/src/branch/master/whitebox_tempest_plugin/api/compute/test_cpu_pinning.py#L493","commit_id":"ce3ba4e077bb70de401714283e362d88b04c964f"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"b501a9e3838c3205cebcd8e86a3cfbfb8c17c7b0","unresolved":false,"context_lines":[{"line_number":79,"context_line":"                server[\u0027id\u0027], self.new_flavor[\u0027id\u0027])"},{"line_number":80,"context_line":"            self._assert_shared_mode_and_file_type(server)"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"    def test_live_migrate_file_backed_server(self):"},{"line_number":83,"context_line":"        host1, host2 \u003d [self.get_ctlplane_address(host) for host in"},{"line_number":84,"context_line":"                        self.list_compute_hosts()]"},{"line_number":85,"context_line":"        host1_sm \u003d clients.NovaServiceManager(host1, \u0027nova-compute\u0027,"}],"source_content_type":"text/x-python","patch_set":16,"id":"9f560f44_9b2554c5","line":82,"updated":"2020-08-21 14:42:08.000000000","message":"Ditto as #L60","commit_id":"ce3ba4e077bb70de401714283e362d88b04c964f"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"b501a9e3838c3205cebcd8e86a3cfbfb8c17c7b0","unresolved":false,"context_lines":[{"line_number":106,"context_line":"        server_1 \u003d self.create_test_server(wait_until\u003d\"ACTIVE\")"},{"line_number":107,"context_line":"        destination_host \u003d self.get_host_other_than(server_1[\u0027id\u0027])"},{"line_number":108,"context_line":"        destination_address \u003d self.get_ctlplane_address(destination_host)"},{"line_number":109,"context_line":"        host1_sm \u003d clients.NovaServiceManager(destination_address,"},{"line_number":110,"context_line":"                                              \u0027nova-compute\u0027,"},{"line_number":111,"context_line":"                                              self.os_admin.services_client)"},{"line_number":112,"context_line":"        with host1_sm.config_options((\u0027libvirt\u0027,"}],"source_content_type":"text/x-python","patch_set":16,"id":"9f560f44_3b3d28dd","line":109,"updated":"2020-08-21 14:42:08.000000000","message":"Ditto as #L60","commit_id":"ce3ba4e077bb70de401714283e362d88b04c964f"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"2ece4d358823943a40cf6ed477e683bcf5443649","unresolved":false,"context_lines":[{"line_number":24,"context_line":""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"class FileBackedMemory(base.BaseWhiteboxComputeTest):"},{"line_number":27,"context_line":"    \"\"\"Test the support of file backed memory in reself.size"},{"line_number":28,"context_line":"    and live migration testcase with validating the memory"},{"line_number":29,"context_line":"    backed source type and access mode of an instance"},{"line_number":30,"context_line":"    \"\"\""}],"source_content_type":"text/x-python","patch_set":17,"id":"9f560f44_83cdcbb8","line":27,"range":{"start_line":27,"start_character":49,"end_line":27,"end_character":60},"updated":"2020-08-24 18:53:18.000000000","message":"wat","commit_id":"a06d788fcd1f791518bfaf5cd96e6b1f0c13a558"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"bf28223b306607fcf77dea671b28b52d44bc25d4","unresolved":false,"context_lines":[{"line_number":24,"context_line":""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"class FileBackedMemory(base.BaseWhiteboxComputeTest):"},{"line_number":27,"context_line":"    \"\"\"Test the support of file backed memory in reself.size"},{"line_number":28,"context_line":"    and live migration testcase with validating the memory"},{"line_number":29,"context_line":"    backed source type and access mode of an instance"},{"line_number":30,"context_line":"    \"\"\""}],"source_content_type":"text/x-python","patch_set":17,"id":"9f560f44_ffccf361","line":27,"range":{"start_line":27,"start_character":49,"end_line":27,"end_character":60},"in_reply_to":"9f560f44_83cdcbb8","updated":"2020-08-26 14:52:00.000000000","message":"hahaha that\u0027s me being lazy and replacing all the size with self.size:)will change that","commit_id":"a06d788fcd1f791518bfaf5cd96e6b1f0c13a558"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"2ece4d358823943a40cf6ed477e683bcf5443649","unresolved":false,"context_lines":[{"line_number":34,"context_line":"    @classmethod"},{"line_number":35,"context_line":"    def skip_checks(cls):"},{"line_number":36,"context_line":"        super(FileBackedMemory, cls).skip_checks()"},{"line_number":37,"context_line":"        # TODO(Paras): Modify the test to run the service"},{"line_number":38,"context_line":"        # set/get conf, service start/stop opt on more than"},{"line_number":39,"context_line":"        # 2 compute host"},{"line_number":40,"context_line":"        if not CONF.whitebox.file_backed_memory_size:"},{"line_number":41,"context_line":"            raise cls.skipException(\"file backed memory is not enabled\")"},{"line_number":42,"context_line":"        if (CONF.compute.min_compute_nodes \u003c 2 or"}],"source_content_type":"text/x-python","patch_set":17,"id":"9f560f44_03b9bb13","line":39,"range":{"start_line":37,"start_character":0,"end_line":39,"end_character":24},"updated":"2020-08-24 18:53:18.000000000","message":"I\u0027m not sure I understand this TODO.","commit_id":"a06d788fcd1f791518bfaf5cd96e6b1f0c13a558"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"bf28223b306607fcf77dea671b28b52d44bc25d4","unresolved":false,"context_lines":[{"line_number":34,"context_line":"    @classmethod"},{"line_number":35,"context_line":"    def skip_checks(cls):"},{"line_number":36,"context_line":"        super(FileBackedMemory, cls).skip_checks()"},{"line_number":37,"context_line":"        # TODO(Paras): Modify the test to run the service"},{"line_number":38,"context_line":"        # set/get conf, service start/stop opt on more than"},{"line_number":39,"context_line":"        # 2 compute host"},{"line_number":40,"context_line":"        if not CONF.whitebox.file_backed_memory_size:"},{"line_number":41,"context_line":"            raise cls.skipException(\"file backed memory is not enabled\")"},{"line_number":42,"context_line":"        if (CONF.compute.min_compute_nodes \u003c 2 or"}],"source_content_type":"text/x-python","patch_set":17,"id":"9f560f44_5f1fdfb5","line":39,"range":{"start_line":37,"start_character":0,"end_line":39,"end_character":24},"in_reply_to":"9f560f44_03b9bb13","updated":"2020-08-26 14:52:00.000000000","message":"this currently just work on exactly two compute host in future may be will find a way to restart set/unset conf on env with as many host as possible, may be some method in client itself to introspect and find total compute hosts and then loop it accordingly for config changes and restart services, I can remove it if it\u0027s not worth:)","commit_id":"a06d788fcd1f791518bfaf5cd96e6b1f0c13a558"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"76da9f3e225eed173e4da3ccaf4fbbaf6e7bbd3c","unresolved":false,"context_lines":[{"line_number":34,"context_line":"    @classmethod"},{"line_number":35,"context_line":"    def skip_checks(cls):"},{"line_number":36,"context_line":"        super(FileBackedMemory, cls).skip_checks()"},{"line_number":37,"context_line":"        # TODO(Paras): Modify the test to run the service"},{"line_number":38,"context_line":"        # set/get conf, service start/stop opt on more than"},{"line_number":39,"context_line":"        # 2 compute host"},{"line_number":40,"context_line":"        if not CONF.whitebox.file_backed_memory_size:"},{"line_number":41,"context_line":"            raise cls.skipException(\"file backed memory is not enabled\")"},{"line_number":42,"context_line":"        if (CONF.compute.min_compute_nodes \u003c 2 or"}],"source_content_type":"text/x-python","patch_set":17,"id":"9f560f44_ca04fd16","line":39,"range":{"start_line":37,"start_character":0,"end_line":39,"end_character":24},"in_reply_to":"9f560f44_0fa2879a","updated":"2020-09-09 14:19:06.000000000","message":"cool","commit_id":"a06d788fcd1f791518bfaf5cd96e6b1f0c13a558"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"3bace46c9ddd195148e44ceb6aa3c0c359c5cf96","unresolved":false,"context_lines":[{"line_number":34,"context_line":"    @classmethod"},{"line_number":35,"context_line":"    def skip_checks(cls):"},{"line_number":36,"context_line":"        super(FileBackedMemory, cls).skip_checks()"},{"line_number":37,"context_line":"        # TODO(Paras): Modify the test to run the service"},{"line_number":38,"context_line":"        # set/get conf, service start/stop opt on more than"},{"line_number":39,"context_line":"        # 2 compute host"},{"line_number":40,"context_line":"        if not CONF.whitebox.file_backed_memory_size:"},{"line_number":41,"context_line":"            raise cls.skipException(\"file backed memory is not enabled\")"},{"line_number":42,"context_line":"        if (CONF.compute.min_compute_nodes \u003c 2 or"}],"source_content_type":"text/x-python","patch_set":17,"id":"9f560f44_0fa2879a","line":39,"range":{"start_line":37,"start_character":0,"end_line":39,"end_character":24},"in_reply_to":"9f560f44_5f1fdfb5","updated":"2020-09-09 13:49:14.000000000","message":"I\u0027d rather it be removed, it\u0027s pretty clear from L42 that the test needs 2 compute hosts, if we ever change that we can change the logic here as well.","commit_id":"a06d788fcd1f791518bfaf5cd96e6b1f0c13a558"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"2ece4d358823943a40cf6ed477e683bcf5443649","unresolved":false,"context_lines":[{"line_number":41,"context_line":"            raise cls.skipException(\"file backed memory is not enabled\")"},{"line_number":42,"context_line":"        if (CONF.compute.min_compute_nodes \u003c 2 or"},{"line_number":43,"context_line":"                CONF.whitebox.max_compute_nodes \u003e 2):"},{"line_number":44,"context_line":"            msg \u003d \"Need exactly 2 compute nodes,\""},{"line_number":45,"context_line":"            \"skipping file backed memory resize/migration test\""},{"line_number":46,"context_line":"            raise cls.skipException(msg)"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"    def setUp(self):"}],"source_content_type":"text/x-python","patch_set":17,"id":"9f560f44_23515fda","line":45,"range":{"start_line":44,"start_character":18,"end_line":45,"end_character":63},"updated":"2020-08-24 18:53:18.000000000","message":"This passes pep8? Eww. How about inlining the msg into the raise below:\n\n  raise cls.skipException(\n    \"Need exactly 2 compute nodes, skipping file backed \"\n    \"memory tests.\")","commit_id":"a06d788fcd1f791518bfaf5cd96e6b1f0c13a558"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"bf28223b306607fcf77dea671b28b52d44bc25d4","unresolved":false,"context_lines":[{"line_number":41,"context_line":"            raise cls.skipException(\"file backed memory is not enabled\")"},{"line_number":42,"context_line":"        if (CONF.compute.min_compute_nodes \u003c 2 or"},{"line_number":43,"context_line":"                CONF.whitebox.max_compute_nodes \u003e 2):"},{"line_number":44,"context_line":"            msg \u003d \"Need exactly 2 compute nodes,\""},{"line_number":45,"context_line":"            \"skipping file backed memory resize/migration test\""},{"line_number":46,"context_line":"            raise cls.skipException(msg)"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"    def setUp(self):"}],"source_content_type":"text/x-python","patch_set":17,"id":"9f560f44_5f74fffd","line":45,"range":{"start_line":44,"start_character":18,"end_line":45,"end_character":63},"in_reply_to":"9f560f44_23515fda","updated":"2020-08-26 14:52:00.000000000","message":"artom failed pep8:)","commit_id":"a06d788fcd1f791518bfaf5cd96e6b1f0c13a558"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"2ece4d358823943a40cf6ed477e683bcf5443649","unresolved":false,"context_lines":[{"line_number":76,"context_line":"            self._assert_shared_mode_and_file_type(server)"},{"line_number":77,"context_line":"            server \u003d self.resize_server("},{"line_number":78,"context_line":"                server[\u0027id\u0027], self.new_flavor[\u0027id\u0027])"},{"line_number":79,"context_line":"            self._assert_shared_mode_and_file_type(server)"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"    def test_live_migrate_file_backed_server(self):"},{"line_number":82,"context_line":"        host1, host2 \u003d self.list_compute_hosts()"}],"source_content_type":"text/x-python","patch_set":17,"id":"9f560f44_03fc1bb3","line":79,"updated":"2020-08-24 18:53:18.000000000","message":"I wonder if, in the interest of speed and efficiency, to avoid needlessly setting configs and restarting services, we could inline the live migration right after the resize?","commit_id":"a06d788fcd1f791518bfaf5cd96e6b1f0c13a558"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"bf28223b306607fcf77dea671b28b52d44bc25d4","unresolved":false,"context_lines":[{"line_number":76,"context_line":"            self._assert_shared_mode_and_file_type(server)"},{"line_number":77,"context_line":"            server \u003d self.resize_server("},{"line_number":78,"context_line":"                server[\u0027id\u0027], self.new_flavor[\u0027id\u0027])"},{"line_number":79,"context_line":"            self._assert_shared_mode_and_file_type(server)"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"    def test_live_migrate_file_backed_server(self):"},{"line_number":82,"context_line":"        host1, host2 \u003d self.list_compute_hosts()"}],"source_content_type":"text/x-python","patch_set":17,"id":"9f560f44_9fc85722","line":79,"in_reply_to":"9f560f44_03fc1bb3","updated":"2020-08-26 14:52:00.000000000","message":"I got your point, I personally want to make it separate tests as there might be a time when we want to just run live migration or resize and also while troubleshooting any issue related to these features it may be an another overhead.","commit_id":"a06d788fcd1f791518bfaf5cd96e6b1f0c13a558"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"3bace46c9ddd195148e44ceb6aa3c0c359c5cf96","unresolved":false,"context_lines":[{"line_number":76,"context_line":"            self._assert_shared_mode_and_file_type(server)"},{"line_number":77,"context_line":"            server \u003d self.resize_server("},{"line_number":78,"context_line":"                server[\u0027id\u0027], self.new_flavor[\u0027id\u0027])"},{"line_number":79,"context_line":"            self._assert_shared_mode_and_file_type(server)"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"    def test_live_migrate_file_backed_server(self):"},{"line_number":82,"context_line":"        host1, host2 \u003d self.list_compute_hosts()"}],"source_content_type":"text/x-python","patch_set":17,"id":"9f560f44_8fb7b7d8","line":79,"in_reply_to":"9f560f44_9fc85722","updated":"2020-09-09 13:49:14.000000000","message":"Fair enough.","commit_id":"a06d788fcd1f791518bfaf5cd96e6b1f0c13a558"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"2ece4d358823943a40cf6ed477e683bcf5443649","unresolved":false,"context_lines":[{"line_number":94,"context_line":"                                    (\u0027DEFAULT\u0027,"},{"line_number":95,"context_line":"                                     \u0027ram_allocation_ratio\u0027, \u00271\u0027))"},{"line_number":96,"context_line":"        ):"},{"line_number":97,"context_line":"            server \u003d self.create_test_server(wait_until\u003d\"ACTIVE\")"},{"line_number":98,"context_line":"            self._assert_shared_mode_and_file_type(server)"},{"line_number":99,"context_line":"            destination_host \u003d self.get_host_other_than(server[\u0027id\u0027])"},{"line_number":100,"context_line":"            self.live_migrate(server[\u0027id\u0027], destination_host, \u0027ACTIVE\u0027)"}],"source_content_type":"text/x-python","patch_set":17,"id":"9f560f44_e321274f","line":97,"range":{"start_line":97,"start_character":45,"end_line":97,"end_character":64},"updated":"2020-08-24 18:53:18.000000000","message":"nit: no need for this","commit_id":"a06d788fcd1f791518bfaf5cd96e6b1f0c13a558"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"bf28223b306607fcf77dea671b28b52d44bc25d4","unresolved":false,"context_lines":[{"line_number":94,"context_line":"                                    (\u0027DEFAULT\u0027,"},{"line_number":95,"context_line":"                                     \u0027ram_allocation_ratio\u0027, \u00271\u0027))"},{"line_number":96,"context_line":"        ):"},{"line_number":97,"context_line":"            server \u003d self.create_test_server(wait_until\u003d\"ACTIVE\")"},{"line_number":98,"context_line":"            self._assert_shared_mode_and_file_type(server)"},{"line_number":99,"context_line":"            destination_host \u003d self.get_host_other_than(server[\u0027id\u0027])"},{"line_number":100,"context_line":"            self.live_migrate(server[\u0027id\u0027], destination_host, \u0027ACTIVE\u0027)"}],"source_content_type":"text/x-python","patch_set":17,"id":"9f560f44_dfce4f2b","line":97,"range":{"start_line":97,"start_character":45,"end_line":97,"end_character":64},"in_reply_to":"9f560f44_e321274f","updated":"2020-08-26 14:52:00.000000000","message":"ack","commit_id":"a06d788fcd1f791518bfaf5cd96e6b1f0c13a558"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"25fe6b2957927a9b891bea5af4df17b4c3b371b3","unresolved":false,"context_lines":[{"line_number":23,"context_line":"CONF \u003d config.CONF"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"class FileBackedMemory(base.BaseWhiteboxComputeTest):"},{"line_number":27,"context_line":"    \"\"\"Test the support of file backed memory in resize"},{"line_number":28,"context_line":"    and live migration testcase with validating the memory"},{"line_number":29,"context_line":"    backed source type and access mode of an instance"}],"source_content_type":"text/x-python","patch_set":18,"id":"9f560f44_23467a7c","line":26,"range":{"start_line":26,"start_character":6,"end_line":26,"end_character":22},"updated":"2020-09-10 01:17:54.000000000","message":"it might be nice to add hard reboot, shelve, suspend and pause to this list also.\n\nresize covers the cold migate code path.\n\nif we add rebuild that would also cover most of evacuate.\n\n\nthese could all be added in a follow up\nbut the most imporatnt move operations are already covered below. it would be nice to cover the other lifecycle operations at some point however.","commit_id":"55b7b5d6f731a6a8cceec9bb2e78ce5278084f6b"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"e4221ef73e3c3790bb45f43a47187953b6a58d8b","unresolved":false,"context_lines":[{"line_number":55,"context_line":""},{"line_number":56,"context_line":"    def test_resize_file_backed_server_on_diff_host(self):"},{"line_number":57,"context_line":"        host1, host2 \u003d self.list_compute_hosts()"},{"line_number":58,"context_line":"        host1_sm \u003d clients.NovaServiceManager(host1, \u0027nova-compute\u0027,"},{"line_number":59,"context_line":"                                              self.os_admin.services_client)"},{"line_number":60,"context_line":"        host2_sm \u003d clients.NovaServiceManager(host2, \u0027nova-compute\u0027,"},{"line_number":61,"context_line":"                                              self.os_admin.services_client)"}],"source_content_type":"text/x-python","patch_set":18,"id":"9f560f44_4f0e3532","line":58,"updated":"2020-09-09 19:58:41.000000000","message":"Updates based on NSM changes LGTM in order to work downstream.","commit_id":"55b7b5d6f731a6a8cceec9bb2e78ce5278084f6b"}],"whitebox_tempest_plugin/config.py":[{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"50e6b3bfa1510d9237d4e1cb331d666d8160032b","unresolved":false,"context_lines":[{"line_number":102,"context_line":"             \u0027privilege management (ie, no sudo).\u0027,"},{"line_number":103,"context_line":"        deprecated_opts\u003d[cfg.DeprecatedOpt(\u0027stop_command\u0027,"},{"line_number":104,"context_line":"                                           group\u003d\u0027whitebox-nova-libvirt\u0027)]),"},{"line_number":105,"context_line":"    cfg.StrOpt("},{"line_number":106,"context_line":"        \u0027config_path\u0027,"},{"line_number":107,"context_line":"        help\u003d\u0027Command to get the nova.conf config file, without any \u0027"},{"line_number":108,"context_line":"             \u0027privilege management (ie, no sudo).\u0027),"},{"line_number":109,"context_line":"]"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"database_group \u003d cfg.OptGroup("}],"source_content_type":"text/x-python","patch_set":4,"id":"bf51134e_d79041f0","line":108,"range":{"start_line":105,"start_character":0,"end_line":108,"end_character":52},"updated":"2020-06-22 23:55:49.000000000","message":"I will remove this as we don\u0027t need this now","commit_id":"60179fd13dda285f88ad587f7c51f209afece81e"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"04ff74f63965f242ac36cea62bf569a312fc9984","unresolved":false,"context_lines":[{"line_number":102,"context_line":"             \u0027privilege management (ie, no sudo).\u0027,"},{"line_number":103,"context_line":"        deprecated_opts\u003d[cfg.DeprecatedOpt(\u0027stop_command\u0027,"},{"line_number":104,"context_line":"                                           group\u003d\u0027whitebox-nova-libvirt\u0027)]),"},{"line_number":105,"context_line":"    cfg.StrOpt("},{"line_number":106,"context_line":"        \u0027config_path\u0027,"},{"line_number":107,"context_line":"        help\u003d\u0027Command to get the nova.conf config file, without any \u0027"},{"line_number":108,"context_line":"             \u0027privilege management (ie, no sudo).\u0027),"},{"line_number":109,"context_line":"]"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"database_group \u003d cfg.OptGroup("}],"source_content_type":"text/x-python","patch_set":4,"id":"bf51134e_f73745fe","line":108,"range":{"start_line":105,"start_character":0,"end_line":108,"end_character":52},"in_reply_to":"bf51134e_77b0558b","updated":"2020-06-23 00:05:41.000000000","message":"Yup correct that can also be used, I was just using the nova.conf in /var/lib/config-data/xxx/nova_libvirt/etc/nova.conf so just added it here but yes you are right L80 conf can be used.\n\nAnyways I am gonna remove it after your final blessings!","commit_id":"60179fd13dda285f88ad587f7c51f209afece81e"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"75e16321e2aae274f8df3008efbce5915d927de3","unresolved":false,"context_lines":[{"line_number":102,"context_line":"             \u0027privilege management (ie, no sudo).\u0027,"},{"line_number":103,"context_line":"        deprecated_opts\u003d[cfg.DeprecatedOpt(\u0027stop_command\u0027,"},{"line_number":104,"context_line":"                                           group\u003d\u0027whitebox-nova-libvirt\u0027)]),"},{"line_number":105,"context_line":"    cfg.StrOpt("},{"line_number":106,"context_line":"        \u0027config_path\u0027,"},{"line_number":107,"context_line":"        help\u003d\u0027Command to get the nova.conf config file, without any \u0027"},{"line_number":108,"context_line":"             \u0027privilege management (ie, no sudo).\u0027),"},{"line_number":109,"context_line":"]"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"database_group \u003d cfg.OptGroup("}],"source_content_type":"text/x-python","patch_set":4,"id":"bf51134e_77b0558b","line":108,"range":{"start_line":105,"start_character":0,"end_line":108,"end_character":52},"in_reply_to":"bf51134e_d79041f0","updated":"2020-06-22 23:58:51.000000000","message":"Yeah, also, you put this in the libvirt service, when we already had L80, so I was confused :)","commit_id":"60179fd13dda285f88ad587f7c51f209afece81e"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"e264eb2b5973ef62858894f2445f315a5e3a1dbc","unresolved":false,"context_lines":[{"line_number":148,"context_line":"             \u0027An example with Nvidia would be 10de\u0027),"},{"line_number":149,"context_line":"]"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"compute_opts \u003d ["},{"line_number":152,"context_line":"    cfg.BoolOpt("},{"line_number":153,"context_line":"        \u0027file_backed_memory\u0027,"},{"line_number":154,"context_line":"        default\u003dFalse,"}],"source_content_type":"text/x-python","patch_set":5,"id":"bf51134e_19451244","line":151,"range":{"start_line":151,"start_character":0,"end_line":151,"end_character":12},"updated":"2020-07-06 18:54:12.000000000","message":"nit: I\u0027d keep this in line with the tempest naming - ie \"compute_features_group\"","commit_id":"5f4ba2bf5538a7de5d9ae448cdcfbf1ef8a61372"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"9e9d28909ad904ba970e2a98d582cb839a3da101","unresolved":false,"context_lines":[{"line_number":148,"context_line":"             \u0027An example with Nvidia would be 10de\u0027),"},{"line_number":149,"context_line":"]"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"compute_opts \u003d ["},{"line_number":152,"context_line":"    cfg.BoolOpt("},{"line_number":153,"context_line":"        \u0027file_backed_memory\u0027,"},{"line_number":154,"context_line":"        default\u003dFalse,"}],"source_content_type":"text/x-python","patch_set":5,"id":"bf51134e_b9e6a6e7","line":151,"range":{"start_line":151,"start_character":0,"end_line":151,"end_character":12},"in_reply_to":"bf51134e_19451244","updated":"2020-07-06 19:12:32.000000000","message":"ok , I can change this","commit_id":"5f4ba2bf5538a7de5d9ae448cdcfbf1ef8a61372"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1dad181e5ccfe7d9ab65904fb3afc62aa032773b","unresolved":false,"context_lines":[{"line_number":149,"context_line":"]"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"compute_opts \u003d ["},{"line_number":152,"context_line":"    cfg.BoolOpt("},{"line_number":153,"context_line":"        \u0027file_backed_memory\u0027,"},{"line_number":154,"context_line":"        default\u003dFalse,"},{"line_number":155,"context_line":"        help\u003d\u0027The file-backed memory feature in Openstack allows a Nova node\u0027"}],"source_content_type":"text/x-python","patch_set":5,"id":"bf51134e_5cc018e1","line":152,"range":{"start_line":152,"start_character":2,"end_line":152,"end_character":16},"updated":"2020-07-06 20:18:10.000000000","message":"dont make this a bool make it an int with the same units as the nova option.\n\n\nif its set to 0 then we can skip the tests that need it","commit_id":"5f4ba2bf5538a7de5d9ae448cdcfbf1ef8a61372"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"8c9d5889a8abba5033253bc8b5b6eaa72704ea6b","unresolved":false,"context_lines":[{"line_number":149,"context_line":"]"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"compute_opts \u003d ["},{"line_number":152,"context_line":"    cfg.BoolOpt("},{"line_number":153,"context_line":"        \u0027file_backed_memory\u0027,"},{"line_number":154,"context_line":"        default\u003dFalse,"},{"line_number":155,"context_line":"        help\u003d\u0027The file-backed memory feature in Openstack allows a Nova node\u0027"}],"source_content_type":"text/x-python","patch_set":5,"id":"bf51134e_fc5e4c43","line":152,"range":{"start_line":152,"start_character":2,"end_line":152,"end_character":16},"in_reply_to":"bf51134e_5cc018e1","updated":"2020-07-06 20:24:48.000000000","message":"I thought the idea was to set [libvirt]/file_backed_memory in nova.conf in the test code itself, so this option would just become the size to set..\n\nOh I see now. What I wrote is correct, but if this is 0, the the test that would set [libvirt]/file_backed_memory would skip.Yep, makes sense.","commit_id":"5f4ba2bf5538a7de5d9ae448cdcfbf1ef8a61372"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"02e5dc850f44c177990035d68c5faefd7de1f0c2","unresolved":false,"context_lines":[{"line_number":149,"context_line":"]"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"compute_opts \u003d ["},{"line_number":152,"context_line":"    cfg.BoolOpt("},{"line_number":153,"context_line":"        \u0027file_backed_memory\u0027,"},{"line_number":154,"context_line":"        default\u003dFalse,"},{"line_number":155,"context_line":"        help\u003d\u0027The file-backed memory feature in Openstack allows a Nova node\u0027"}],"source_content_type":"text/x-python","patch_set":5,"id":"bf51134e_83240bb1","line":152,"range":{"start_line":152,"start_character":2,"end_line":152,"end_character":16},"in_reply_to":"bf51134e_fc5e4c43","updated":"2020-07-07 17:19:15.000000000","message":"ok yeah we can do that way to use the conf option for the size and if it\u0027s 0 or not defined we can skip the test.","commit_id":"5f4ba2bf5538a7de5d9ae448cdcfbf1ef8a61372"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"a782b32e6e9f5e731130fc087154f68ab78a1508","unresolved":false,"context_lines":[{"line_number":148,"context_line":"             \u0027An example with Nvidia would be 10de\u0027),"},{"line_number":149,"context_line":"]"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"compute_features_group_opts \u003d ["},{"line_number":152,"context_line":"    cfg.IntOpt("},{"line_number":153,"context_line":"        \u0027file_backed_memory_size\u0027,"},{"line_number":154,"context_line":"        default\u003d0,"}],"source_content_type":"text/x-python","patch_set":6,"id":"9f560f44_48737416","line":151,"updated":"2020-07-27 15:53:13.000000000","message":"If we\u0027re using this value to *set* the config option, it\u0027s not really an \"enabled compute feature\", is it? I\u0027d move this to the main [whitebox] section similar to how available_cinder_storage is there. And update the help text to explain that whitebox uses this value to *set* the [libvirt]/file_backed_memory config option.","commit_id":"43289b3db3667c246f90702e2215e1b44805acd2"},{"author":{"_account_id":31239,"name":"Paras Babbar","email":"pbabbar@redhat.com","username":"pbabbar"},"change_message_id":"9ba2189b23b46e66914c148a0f819a11df8fe362","unresolved":false,"context_lines":[{"line_number":148,"context_line":"             \u0027An example with Nvidia would be 10de\u0027),"},{"line_number":149,"context_line":"]"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"compute_features_group_opts \u003d ["},{"line_number":152,"context_line":"    cfg.IntOpt("},{"line_number":153,"context_line":"        \u0027file_backed_memory_size\u0027,"},{"line_number":154,"context_line":"        default\u003d0,"}],"source_content_type":"text/x-python","patch_set":6,"id":"9f560f44_c58e3877","line":151,"in_reply_to":"9f560f44_48737416","updated":"2020-07-28 15:03:23.000000000","message":"yeah correct, we can do this","commit_id":"43289b3db3667c246f90702e2215e1b44805acd2"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"93f456282d0d0492952b52662eef6f39151528b8","unresolved":false,"context_lines":[{"line_number":92,"context_line":"        \u0027stop_command\u0027,"},{"line_number":93,"context_line":"        help\u003d\u0027Command to stop the nova-compute service, without any \u0027"},{"line_number":94,"context_line":"             \u0027privilege management (ie, no sudo).\u0027),"},{"line_number":95,"context_line":"    cfg.StrOpt("},{"line_number":96,"context_line":"        \u0027restart_command\u0027,"},{"line_number":97,"context_line":"        help\u003d\u0027Command to restart the nova-compute service, without any \u0027"},{"line_number":98,"context_line":"             \u0027privilege management (ie, no sudo).\u0027),"},{"line_number":99,"context_line":"]"},{"line_number":100,"context_line":""},{"line_number":101,"context_line":"libvirt_group \u003d cfg.OptGroup("},{"line_number":102,"context_line":"    name\u003d\u0027whitebox-libvirt\u0027,"}],"source_content_type":"text/x-python","patch_set":14,"id":"9f560f44_69f49ef1","line":99,"range":{"start_line":95,"start_character":0,"end_line":99,"end_character":1},"updated":"2020-08-10 18:15:56.000000000","message":"Ditto, why?","commit_id":"04085a06c9228db7d3ba20c9986ec907efbc501e"}]}
