)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"ae18badda6bb21e13685146c76be7326b1c05161","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":31,"id":"d8953f04_17a2a7ea","updated":"2022-10-31 16:03:45.000000000","message":"Apart from a typo and a skipper suggestion, it works fine on my environment and looks good to me.","commit_id":"6fe0376599f26628cdc1970a61b7ba5b23c765e9"},{"author":{"_account_id":32053,"name":"Denys Mishchenko","email":"denis@mischenko.org.ua","username":"arddennis"},"change_message_id":"e0b8fbe5cfb046df21211d6f187f3cd8c6bf7d17","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":31,"id":"7fb6ef30_821146d9","updated":"2023-02-24 14:27:17.000000000","message":"As this is only for CI and this scenario won\u0027t be used versus any real cloud I remove my objection. Maybe my comments can go using separate change...","commit_id":"6fe0376599f26628cdc1970a61b7ba5b23c765e9"},{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"5ad0f522346273483f29b9218010c4c6f60549d7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":31,"id":"2d8fc3f6_bb3a8f6d","updated":"2023-03-27 17:14:11.000000000","message":"I\u0027m gonna propose follow-up patch to cover Denys comments.","commit_id":"6fe0376599f26628cdc1970a61b7ba5b23c765e9"},{"author":{"_account_id":32053,"name":"Denys Mishchenko","email":"denis@mischenko.org.ua","username":"arddennis"},"change_message_id":"520f6230ee06964dc72dfe8d25603b15e04ceb38","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":31,"id":"fb4a666c_b28ca10e","updated":"2022-12-27 10:03:38.000000000","message":"Incorrect assertion versus amount of hosts. We check that 2 is grater or equal to the amount of hosts. We should either change this to equal if this is only for CI and we make sure we have these two hosts or change it to len(hosts) \u003e\u003d 2\n\nAlso, this test tries to assign host to a new aggregate. What if we already have it assigned? Is this test is only for the CI and it is not supposed to be run versus other environments?","commit_id":"6fe0376599f26628cdc1970a61b7ba5b23c765e9"},{"author":{"_account_id":3031,"name":"Sam Morrison","email":"sorrison@gmail.com","username":"sorrison"},"change_message_id":"b887520e358d913742497d5bd451758fc7fde335","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":31,"id":"29facb85_2e60e355","updated":"2022-10-27 00:59:09.000000000","message":"Nice!","commit_id":"6fe0376599f26628cdc1970a61b7ba5b23c765e9"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"65ec30a4d10032cba1375d7ee9036f423598848c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":31,"id":"eed13348_5f64b06f","updated":"2021-10-15 17:26:28.000000000","message":"Test passed: https://storage.gra.cloud.ovh.net/v1/AUTH_dcaab5e32b234d56b626f72581e3644c/zuul_opendev_logs_988/695349/31/check/octavia-v2-dsvm-scenario-two-node/988593a/testr_results.html","commit_id":"6fe0376599f26628cdc1970a61b7ba5b23c765e9"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"c7463a8d8e92b48fae9f8fea6b7da84c5a664e45","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":31,"id":"f51d230a_111b458d","updated":"2021-10-15 14:11:20.000000000","message":"recheck","commit_id":"6fe0376599f26628cdc1970a61b7ba5b23c765e9"}],"octavia_tempest_plugin/tests/az_scenario/v2/test_load_balancer.py":[{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"a7f8e081cd94b5261ca8d3c0481c7b404ab430e3","unresolved":false,"context_lines":[{"line_number":84,"context_line":"            self.lb_admin_availability_zone_profile_client"},{"line_number":85,"context_line":"            .create_availability_zone_profile("},{"line_number":86,"context_line":"                **availability_zone_profile_kwargs))"},{"line_number":87,"context_line":"        self.addClassResourceCleanup("},{"line_number":88,"context_line":"            self.lb_admin_availability_zone_profile_client"},{"line_number":89,"context_line":"            .cleanup_availability_zone_profile,"},{"line_number":90,"context_line":"            az_profile[const.ID])"}],"source_content_type":"text/x-python","patch_set":10,"id":"3fa7e38b_8c4b7d26","line":87,"range":{"start_line":87,"start_character":13,"end_line":87,"end_character":36},"updated":"2019-12-06 08:43:58.000000000","message":"you\u0027d better use addCleanup() which calls cleanup function at the end of the test_* functions and not during the object destruction (it will scale better if we have multiple tests in this class)","commit_id":"f5f485a3c6f873b0b669ff18fd8ae6fe8780cdd2"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"a7f8e081cd94b5261ca8d3c0481c7b404ab430e3","unresolved":false,"context_lines":[{"line_number":113,"context_line":"        self.addCleanup(self.os_admin_aggregates_client.delete_aggregate,"},{"line_number":114,"context_line":"                        aggregate[\u0027id\u0027])"},{"line_number":115,"context_line":"        aggregate_name \u003d kwargs[\u0027name\u0027]"},{"line_number":116,"context_line":"        availability_zone \u003d kwargs[\u0027availability_zone\u0027]"},{"line_number":117,"context_line":"        self.assertEqual(aggregate[\u0027name\u0027], aggregate_name)"},{"line_number":118,"context_line":"        self.assertEqual(aggregate[\u0027availability_zone\u0027], availability_zone)"},{"line_number":119,"context_line":"        return aggregate"}],"source_content_type":"text/x-python","patch_set":10,"id":"3fa7e38b_8c64ddb4","line":116,"range":{"start_line":116,"start_character":35,"end_line":116,"end_character":54},"updated":"2019-12-06 08:43:58.000000000","message":"it\u0027s available as a const.AVAILABILITY_ZONE","commit_id":"f5f485a3c6f873b0b669ff18fd8ae6fe8780cdd2"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"a7f8e081cd94b5261ca8d3c0481c7b404ab430e3","unresolved":false,"context_lines":[{"line_number":114,"context_line":"                        aggregate[\u0027id\u0027])"},{"line_number":115,"context_line":"        aggregate_name \u003d kwargs[\u0027name\u0027]"},{"line_number":116,"context_line":"        availability_zone \u003d kwargs[\u0027availability_zone\u0027]"},{"line_number":117,"context_line":"        self.assertEqual(aggregate[\u0027name\u0027], aggregate_name)"},{"line_number":118,"context_line":"        self.assertEqual(aggregate[\u0027availability_zone\u0027], availability_zone)"},{"line_number":119,"context_line":"        return aggregate"},{"line_number":120,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"3fa7e38b_4c0825d8","line":117,"range":{"start_line":117,"start_character":35,"end_line":117,"end_character":41},"updated":"2019-12-06 08:43:58.000000000","message":"const.NAME","commit_id":"f5f485a3c6f873b0b669ff18fd8ae6fe8780cdd2"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"a7f8e081cd94b5261ca8d3c0481c7b404ab430e3","unresolved":false,"context_lines":[{"line_number":160,"context_line":"        self._setup_lb_network_kwargs(lb_kwargs, 4, use_fixed_ip\u003dTrue)"},{"line_number":161,"context_line":"        lb \u003d self.mem_lb_client.create_loadbalancer(**lb_kwargs)"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"        self.addClassResourceCleanup("},{"line_number":164,"context_line":"            self.mem_lb_client.cleanup_loadbalancer,"},{"line_number":165,"context_line":"            lb[const.ID])"},{"line_number":166,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"3fa7e38b_0c59cdfb","line":163,"range":{"start_line":163,"start_character":13,"end_line":163,"end_character":36},"updated":"2019-12-06 08:43:58.000000000","message":"same here (addCleanup)","commit_id":"f5f485a3c6f873b0b669ff18fd8ae6fe8780cdd2"},{"author":{"_account_id":10273,"name":"Adam Harwell","email":"flux.adam@gmail.com","username":"rm_you"},"change_message_id":"90dca87735a89af9aba36d7350a0e653148c392a","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        # Create a shared availability zone profile"},{"line_number":48,"context_line":"        availability_zone_profile_name \u003d data_utils.rand_name("},{"line_number":49,"context_line":"            \"lb_admin_availabilityzoneprofile-setup\")"},{"line_number":50,"context_line":"        availability_zone_data \u003d {const.LOADBALANCER_TOPOLOGY: const.SINGLE}"},{"line_number":51,"context_line":"        availability_zone_data_json \u003d jsonutils.dumps(availability_zone_data)"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"        availability_zone_profile_kwargs \u003d {"}],"source_content_type":"text/x-python","patch_set":12,"id":"3fa7e38b_5eca6e6f","line":50,"range":{"start_line":50,"start_character":34,"end_line":50,"end_character":61},"updated":"2019-12-17 20:22:14.000000000","message":"Err, this is part of a flavor, not an AZ...\nThis should be specifying a COMPUTE_ZONE and MANAGEMENT_NETWORK :(","commit_id":"abaef6d12494315160f6b84d4634e9324d740864"},{"author":{"_account_id":10273,"name":"Adam Harwell","email":"flux.adam@gmail.com","username":"rm_you"},"change_message_id":"90dca87735a89af9aba36d7350a0e653148c392a","unresolved":false,"context_lines":[{"line_number":44,"context_line":"                .is_version_supported(cls.api_version, \u00272.14\u0027)):"},{"line_number":45,"context_line":"            return"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"        # Create a shared availability zone profile"},{"line_number":48,"context_line":"        availability_zone_profile_name \u003d data_utils.rand_name("},{"line_number":49,"context_line":"            \"lb_admin_availabilityzoneprofile-setup\")"},{"line_number":50,"context_line":"        availability_zone_data \u003d {const.LOADBALANCER_TOPOLOGY: const.SINGLE}"},{"line_number":51,"context_line":"        availability_zone_data_json \u003d jsonutils.dumps(availability_zone_data)"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"        availability_zone_profile_kwargs \u003d {"},{"line_number":54,"context_line":"            const.NAME: availability_zone_profile_name,"},{"line_number":55,"context_line":"            const.PROVIDER_NAME: CONF.load_balancer.provider,"},{"line_number":56,"context_line":"            const.AVAILABILITY_ZONE_DATA: availability_zone_data_json"},{"line_number":57,"context_line":"        }"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        cls.availability_zone_profile \u003d ("},{"line_number":60,"context_line":"            cls.lb_admin_availability_zone_profile_client"},{"line_number":61,"context_line":"            .create_availability_zone_profile("},{"line_number":62,"context_line":"                **availability_zone_profile_kwargs))"},{"line_number":63,"context_line":"        cls.addClassResourceCleanup("},{"line_number":64,"context_line":"            cls.lb_admin_availability_zone_profile_client"},{"line_number":65,"context_line":"            .cleanup_availability_zone_profile,"},{"line_number":66,"context_line":"            cls.availability_zone_profile[const.ID])"},{"line_number":67,"context_line":"        cls.availability_zone_profile_id \u003d ("},{"line_number":68,"context_line":"            cls.availability_zone_profile[const.ID])"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    def _create_az_and_profile(self, az_name):"},{"line_number":71,"context_line":"        \"\"\"Creates an AZ and profile"}],"source_content_type":"text/x-python","patch_set":12,"id":"3fa7e38b_fe8eba24","line":68,"range":{"start_line":47,"start_character":0,"end_line":68,"end_character":52},"updated":"2019-12-17 20:22:14.000000000","message":"I think all of this needs to be removed -- it\u0027s a duplicate of the code below, except done incorrectly.","commit_id":"abaef6d12494315160f6b84d4634e9324d740864"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"ad0e57ec2d648e08c0ff8c626f879f3ff9d93d74","unresolved":true,"context_lines":[{"line_number":153,"context_line":"        self.assertEqual(az_name, server[\u0027OS-EXT-AZ:availability_zone\u0027])"},{"line_number":154,"context_line":"        self.assertEqual(az_name, lb[const.AVAILABILITY_ZONE])"},{"line_number":155,"context_line":""},{"line_number":156,"context_line":"        try:"},{"line_number":157,"context_line":"            self.mem_lb_client.delete_loadbalancer(lb[const.ID])"},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"            waiters.wait_for_deleted_status_or_not_found("},{"line_number":160,"context_line":"                self.mem_lb_client.show_loadbalancer, lb[const.ID],"},{"line_number":161,"context_line":"                const.PROVISIONING_STATUS,"},{"line_number":162,"context_line":"                CONF.load_balancer.lb_build_interval,"},{"line_number":163,"context_line":"                CONF.load_balancer.lb_build_timeout)"},{"line_number":164,"context_line":"        except Exception:"},{"line_number":165,"context_line":"            pass"},{"line_number":166,"context_line":""},{"line_number":167,"context_line":"    @decorators.idempotent_id(\u00278aa57ed9-23e4-4b47-b2ba-aa574bf689fb\u0027)"},{"line_number":168,"context_line":"    def test_load_balancer_create_in_az(self):"},{"line_number":169,"context_line":"        \"\"\"Test creating a LB in an availability zone"}],"source_content_type":"text/x-python","patch_set":26,"id":"9356bedb_30c3559f","line":166,"range":{"start_line":156,"start_character":7,"end_line":166,"end_character":0},"updated":"2021-02-16 09:56:41.000000000","message":"do we need this? we already have the addCleanup for the loadbalancer","commit_id":"a8501892b604689dc8495b63032499242db1dc68"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"ae18badda6bb21e13685146c76be7326b1c05161","unresolved":true,"context_lines":[{"line_number":145,"context_line":""},{"line_number":146,"context_line":"        amphorae \u003d self.lb_admin_amphora_client.list_amphorae("},{"line_number":147,"context_line":"            query_params\u003d\u0027loadbalancer_id\u003d%s\u0027 % lb[const.ID])"},{"line_number":148,"context_line":"        self.assertEqual(1, len(amphorae))"},{"line_number":149,"context_line":"        compute_id \u003d amphorae[0][\u0027compute_id\u0027]"},{"line_number":150,"context_line":"        server \u003d self.os_admin_servers_client.show_server(compute_id)[\u0027server\u0027]"},{"line_number":151,"context_line":""}],"source_content_type":"text/x-python","patch_set":31,"id":"f0199bab_539a8d3c","line":148,"range":{"start_line":148,"start_character":0,"end_line":148,"end_character":42},"updated":"2022-10-31 16:03:45.000000000","message":"Maybe we should prevent this job from running on Active/standby CI/jobs/gates using additional skipper(s)?","commit_id":"6fe0376599f26628cdc1970a61b7ba5b23c765e9"},{"author":{"_account_id":32053,"name":"Denys Mishchenko","email":"denis@mischenko.org.ua","username":"arddennis"},"change_message_id":"e0b8fbe5cfb046df21211d6f187f3cd8c6bf7d17","unresolved":true,"context_lines":[{"line_number":145,"context_line":""},{"line_number":146,"context_line":"        amphorae \u003d self.lb_admin_amphora_client.list_amphorae("},{"line_number":147,"context_line":"            query_params\u003d\u0027loadbalancer_id\u003d%s\u0027 % lb[const.ID])"},{"line_number":148,"context_line":"        self.assertEqual(1, len(amphorae))"},{"line_number":149,"context_line":"        compute_id \u003d amphorae[0][\u0027compute_id\u0027]"},{"line_number":150,"context_line":"        server \u003d self.os_admin_servers_client.show_server(compute_id)[\u0027server\u0027]"},{"line_number":151,"context_line":""}],"source_content_type":"text/x-python","patch_set":31,"id":"adc483a8_4545b553","line":148,"range":{"start_line":148,"start_character":0,"end_line":148,"end_character":42},"in_reply_to":"f0199bab_539a8d3c","updated":"2023-02-24 14:27:17.000000000","message":"Maybe the following assert can be used:\nself.assertGreaterEqual(len(amphorae), 1)\n\nat the end only AZ name is verified and only on first amphorae... There is no definition that topology is single, we just rely on a default or configuration.","commit_id":"6fe0376599f26628cdc1970a61b7ba5b23c765e9"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"ae18badda6bb21e13685146c76be7326b1c05161","unresolved":true,"context_lines":[{"line_number":159,"context_line":"        * Create 2 nova aggregates and AZs"},{"line_number":160,"context_line":"        * Create 2 octavia AZ"},{"line_number":161,"context_line":"        * Create LB in each AZ"},{"line_number":162,"context_line":"        * Confirm desigated AZ matches compute AZ"},{"line_number":163,"context_line":"        \"\"\""},{"line_number":164,"context_line":""},{"line_number":165,"context_line":"        # We have to do this here as the api_version and clients are not"}],"source_content_type":"text/x-python","patch_set":31,"id":"4344a9d8_0189c7f3","line":162,"range":{"start_line":162,"start_character":18,"end_line":162,"end_character":27},"updated":"2022-10-31 16:03:45.000000000","message":"typo: designated","commit_id":"6fe0376599f26628cdc1970a61b7ba5b23c765e9"},{"author":{"_account_id":32053,"name":"Denys Mishchenko","email":"denis@mischenko.org.ua","username":"arddennis"},"change_message_id":"520f6230ee06964dc72dfe8d25603b15e04ceb38","unresolved":true,"context_lines":[{"line_number":181,"context_line":"                                            availability_zone\u003daz2_name)"},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"        hosts \u003d self._get_hosts()"},{"line_number":184,"context_line":"        self.assertGreaterEqual(2, len(hosts))"},{"line_number":185,"context_line":"        host1 \u003d hosts[0]"},{"line_number":186,"context_line":"        host2 \u003d hosts[1]"},{"line_number":187,"context_line":"        self._add_host(aggregate1[const.ID], host1)"}],"source_content_type":"text/x-python","patch_set":31,"id":"d51d3246_ceba80f4","line":184,"range":{"start_line":184,"start_character":7,"end_line":184,"end_character":46},"updated":"2022-12-27 10:03:38.000000000","message":"I guess 2 should be less or equal to len(hosts). Lets say I have 9 hosts which is grater than 2, should we fail?","commit_id":"6fe0376599f26628cdc1970a61b7ba5b23c765e9"},{"author":{"_account_id":32053,"name":"Denys Mishchenko","email":"denis@mischenko.org.ua","username":"arddennis"},"change_message_id":"520f6230ee06964dc72dfe8d25603b15e04ceb38","unresolved":true,"context_lines":[{"line_number":184,"context_line":"        self.assertGreaterEqual(2, len(hosts))"},{"line_number":185,"context_line":"        host1 \u003d hosts[0]"},{"line_number":186,"context_line":"        host2 \u003d hosts[1]"},{"line_number":187,"context_line":"        self._add_host(aggregate1[const.ID], host1)"},{"line_number":188,"context_line":"        self._add_host(aggregate2[const.ID], host2)"},{"line_number":189,"context_line":""},{"line_number":190,"context_line":"        self._check_aggregate_details(aggregate1, aggregate1_name, az1_name,"},{"line_number":191,"context_line":"                                      [host1])"}],"source_content_type":"text/x-python","patch_set":31,"id":"e95229b1_7e9b911c","line":188,"range":{"start_line":187,"start_character":0,"end_line":188,"end_character":51},"updated":"2022-12-27 10:03:38.000000000","message":"what if the nodes are already in some availability zone?\nWe\u0027ll get \u0027Cannot add host to aggregate... One or more hosts already in availability zone(s)\u0027\n\nMaybe we should check this before aggregate created? Is this is only for CI?","commit_id":"6fe0376599f26628cdc1970a61b7ba5b23c765e9"}],"octavia_tempest_plugin/tests/scenario/v2/test_load_balancer.py":[{"author":{"_account_id":10273,"name":"Adam Harwell","email":"flux.adam@gmail.com","username":"rm_you"},"change_message_id":"c366154863ababdcbc3954098d988401cc007fe7","unresolved":false,"context_lines":[{"line_number":34,"context_line":"    @classmethod"},{"line_number":35,"context_line":"    def setup_clients(cls):"},{"line_number":36,"context_line":"        super(LoadBalancerScenarioTest, cls).setup_clients()"},{"line_number":37,"context_line":"        cls.aggregates_client \u003d cls.os_admin.aggregates_client"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    @classmethod"},{"line_number":40,"context_line":"    def resource_setup(cls):"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_1fff7f01","line":37,"updated":"2019-11-21 05:10:15.000000000","message":"We should just go ahead and add this to the main clients section in the test_base.py setup_clients probably.","commit_id":"aa44b2fe09aa01014da2aef3299f5c406e11017a"}],"zuul.d/jobs.yaml":[{"author":{"_account_id":7249,"name":"Ann Taraday","email":"akamyshnikova@mirantis.com","username":"AKamyshnikova"},"change_message_id":"b4eade114ef6f25876914856eced7c0c879fc7b7","unresolved":false,"context_lines":[{"line_number":526,"context_line":"              loadbalancer_topology: ACTIVE_STANDBY"},{"line_number":527,"context_line":""},{"line_number":528,"context_line":"- job:"},{"line_number":529,"context_line":"    name: octavia-v2-az-dsvm-scenario-two-node"},{"line_number":530,"context_line":"    parent: octavia-dsvm-live-two-node-base"},{"line_number":531,"context_line":"    vars:"},{"line_number":532,"context_line":"      tempest_concurrency: 2"}],"source_content_type":"text/x-yaml","patch_set":17,"id":"9f560f44_16a0c08f","line":529,"range":{"start_line":529,"start_character":9,"end_line":529,"end_character":46},"updated":"2020-08-07 06:49:27.000000000","message":"Do we really need a separate job for these tests? Or it is a common practice to add new tests non-voting?","commit_id":"1508c8161bf944359cf5e0584a030452266e2bd1"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"868c1a8f714cf2833ddb317b14d08c98b2b903b9","unresolved":false,"context_lines":[{"line_number":526,"context_line":"              loadbalancer_topology: ACTIVE_STANDBY"},{"line_number":527,"context_line":""},{"line_number":528,"context_line":"- job:"},{"line_number":529,"context_line":"    name: octavia-v2-az-dsvm-scenario-two-node"},{"line_number":530,"context_line":"    parent: octavia-dsvm-live-two-node-base"},{"line_number":531,"context_line":"    vars:"},{"line_number":532,"context_line":"      tempest_concurrency: 2"}],"source_content_type":"text/x-yaml","patch_set":17,"id":"9f560f44_b8168c48","line":529,"range":{"start_line":529,"start_character":9,"end_line":529,"end_character":46},"in_reply_to":"9f560f44_16a0c08f","updated":"2020-09-03 18:43:19.000000000","message":"I agree, we should merge this into the existing two-node tests.","commit_id":"1508c8161bf944359cf5e0584a030452266e2bd1"}]}
