)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"79acad5c50ac73a88de1b258c45cb1e32cf064b0","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     Rafal Lewandowski \u003crafal@stackhpc.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2023-09-19 11:38:09 +0200"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Added ML2/OVN and ML2/OVS setting checks for neutron"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: Ie00572f3ff9d3500abd5519bd472e2134c318886"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"2c0e0621_7c5e74e3","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":5},"updated":"2023-09-22 10:51:35.000000000","message":"Please use present tense in the commit message, s/Added/Add/\n\nAlso a sentence or two explaining the change in a bit more detail would be nice.","commit_id":"f50797260613c0fd6b407ad8006d2b31fb4bb454"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"95939d02695e11a8619f0a90a9373b6f2a9a72ea","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Rafal Lewandowski \u003crafal@stackhpc.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2023-09-19 11:38:09 +0200"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Added ML2/OVN and ML2/OVS setting checks for neutron"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: Ie00572f3ff9d3500abd5519bd472e2134c318886"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"c8037425_2f1d2bef","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":5},"in_reply_to":"2c0e0621_7c5e74e3","updated":"2023-09-22 12:02:44.000000000","message":"Done","commit_id":"f50797260613c0fd6b407ad8006d2b31fb4bb454"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"d4844ca647bcfd123594e5e29fc75fb021401bf2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"356e39fa_be5d7f9b","updated":"2023-09-26 14:31:34.000000000","message":"Only the upgrade.yml change is necessary.","commit_id":"9a9ce066d1dfe286f9cd785fdeab95036789283e"},{"author":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"change_message_id":"7048d2689483a83a6d43fffad6b7b12b05d8f02e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":13,"id":"6c8406eb_955385dd","updated":"2023-09-27 11:51:43.000000000","message":"Merging since it\u0027s OVN related - approved for single company commit exception","commit_id":"d3d67dc02c9aceff4ef45c5747df5412b1d11ab4"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"5f40bf4cfbff96f4eefae8261de22703377ae9d3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":13,"id":"661cc921_d7f06b9f","updated":"2023-09-27 11:49:55.000000000","message":"Nice!","commit_id":"d3d67dc02c9aceff4ef45c5747df5412b1d11ab4"}],"ansible/roles/neutron/tasks/deploy.yml":[{"author":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"change_message_id":"1d57d72c762abb92d5f5a153a3facfbb0030317e","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- import_tasks: neutron_plugin_agent_check.yml"},{"line_number":3,"context_line":"- import_tasks: register.yml"},{"line_number":4,"context_line":""},{"line_number":5,"context_line":"- include_tasks: clone.yml"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"484c6be6_86ece7ee","line":2,"updated":"2023-09-14 11:31:15.000000000","message":"add a visually strategic newline ;-)","commit_id":"8c0bda9bfce6011d6fca44e3e3eef485775057cd"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"6bec39602f614c60dd151ba07eb10d47c9691868","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- import_tasks: neutron_plugin_agent_check.yml"},{"line_number":3,"context_line":"- import_tasks: register.yml"},{"line_number":4,"context_line":""},{"line_number":5,"context_line":"- include_tasks: clone.yml"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"ad6e3c81_c89a8097","line":2,"in_reply_to":"484c6be6_86ece7ee","updated":"2023-09-14 11:39:46.000000000","message":"Done","commit_id":"8c0bda9bfce6011d6fca44e3e3eef485775057cd"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"779f6e6927b403c762f02f5b797112ff173cef37","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- import_tasks: neutron_plugin_agent_check.yml"},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"- import_tasks: register.yml"},{"line_number":5,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":7,"id":"314c620b_c025292f","line":2,"updated":"2023-09-14 18:30:07.000000000","message":"Why is this not just in precheck.yml? Then it would fail when running the prechecks command.","commit_id":"a2e4cbb7d7e8286ef94555933cafda55b0b9ade6"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"960a451e053352883db74ba8ff8002c0f65ea670","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- import_tasks: neutron_plugin_agent_check.yml"},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"- import_tasks: register.yml"},{"line_number":5,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":7,"id":"2de2c66d_cc3ccc95","line":2,"in_reply_to":"314c620b_c025292f","updated":"2023-09-15 08:42:44.000000000","message":"Because it would be best to have this check run every time someone wants to run reconfigure.","commit_id":"a2e4cbb7d7e8286ef94555933cafda55b0b9ade6"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"d4844ca647bcfd123594e5e29fc75fb021401bf2","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- import_tasks: neutron_plugin_agent_check.yml"},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"- import_tasks: register.yml"},{"line_number":5,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":11,"id":"49e28899_83b441e5","line":2,"updated":"2023-09-26 14:31:34.000000000","message":"If we\u0027re including it here then we should also include it in upgrade.yml.","commit_id":"9a9ce066d1dfe286f9cd785fdeab95036789283e"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"fb0f7c616d9bd3959a9e8c943ad9460679def5b0","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- import_tasks: neutron_plugin_agent_check.yml"},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"- import_tasks: register.yml"},{"line_number":5,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":11,"id":"0688e2e1_07c2f15e","line":2,"in_reply_to":"49e28899_83b441e5","updated":"2023-09-27 07:07:01.000000000","message":"Done","commit_id":"9a9ce066d1dfe286f9cd785fdeab95036789283e"}],"ansible/roles/neutron/tasks/neutron_plugin_agent_check.yml":[{"author":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"change_message_id":"1d57d72c762abb92d5f5a153a3facfbb0030317e","unresolved":true,"context_lines":[{"line_number":12,"context_line":"- name: Get list of OVS bridges"},{"line_number":13,"context_line":"  become: true"},{"line_number":14,"context_line":"  command: docker exec openvswitch_vswitchd ovs-vsctl list-br"},{"line_number":15,"context_line":"  register: bridge_list"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"- name: Check for ML2/OVS presence"},{"line_number":18,"context_line":"  assert:"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"dd2ef7a2_47ffd3f9","line":15,"range":{"start_line":15,"start_character":0,"end_line":15,"end_character":23},"updated":"2023-09-14 11:31:15.000000000","message":"we\u0027re not using this?","commit_id":"8c0bda9bfce6011d6fca44e3e3eef485775057cd"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"6bec39602f614c60dd151ba07eb10d47c9691868","unresolved":false,"context_lines":[{"line_number":12,"context_line":"- name: Get list of OVS bridges"},{"line_number":13,"context_line":"  become: true"},{"line_number":14,"context_line":"  command: docker exec openvswitch_vswitchd ovs-vsctl list-br"},{"line_number":15,"context_line":"  register: bridge_list"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"- name: Check for ML2/OVS presence"},{"line_number":18,"context_line":"  assert:"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"c5297fdd_7bcd4af9","line":15,"range":{"start_line":15,"start_character":0,"end_line":15,"end_character":23},"in_reply_to":"dd2ef7a2_47ffd3f9","updated":"2023-09-14 11:39:46.000000000","message":"Done","commit_id":"8c0bda9bfce6011d6fca44e3e3eef485775057cd"},{"author":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"change_message_id":"1d57d72c762abb92d5f5a153a3facfbb0030317e","unresolved":true,"context_lines":[{"line_number":17,"context_line":"- name: Check for ML2/OVS presence"},{"line_number":18,"context_line":"  assert:"},{"line_number":19,"context_line":"    that: neutron_plugin_agent \u003d\u003d \u0027openvswitch\u0027"},{"line_number":20,"context_line":"    fail_msg: \"ML2/OVS agent detected, neutron_plugin_agent is not set to \u0027openvswitch\u0027, Kolla-Ansible does not support this migration operation.\""},{"line_number":21,"context_line":"  when:"},{"line_number":22,"context_line":"    - container_facts[\u0027ovn_controller\u0027] is defined"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"- name: Check for ML2/OVN presence"},{"line_number":25,"context_line":"  assert:"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"da0161c6_f17ca8cd","line":22,"range":{"start_line":20,"start_character":0,"end_line":22,"end_character":50},"updated":"2023-09-14 11:31:15.000000000","message":"ovn_controller is OVN, not ML2/OVS, right?","commit_id":"8c0bda9bfce6011d6fca44e3e3eef485775057cd"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"6bec39602f614c60dd151ba07eb10d47c9691868","unresolved":false,"context_lines":[{"line_number":17,"context_line":"- name: Check for ML2/OVS presence"},{"line_number":18,"context_line":"  assert:"},{"line_number":19,"context_line":"    that: neutron_plugin_agent \u003d\u003d \u0027openvswitch\u0027"},{"line_number":20,"context_line":"    fail_msg: \"ML2/OVS agent detected, neutron_plugin_agent is not set to \u0027openvswitch\u0027, Kolla-Ansible does not support this migration operation.\""},{"line_number":21,"context_line":"  when:"},{"line_number":22,"context_line":"    - container_facts[\u0027ovn_controller\u0027] is defined"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"- name: Check for ML2/OVN presence"},{"line_number":25,"context_line":"  assert:"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"62d22dd0_f1a0adaf","line":22,"range":{"start_line":20,"start_character":0,"end_line":22,"end_character":50},"in_reply_to":"da0161c6_f17ca8cd","updated":"2023-09-14 11:39:46.000000000","message":"Done","commit_id":"8c0bda9bfce6011d6fca44e3e3eef485775057cd"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"d4844ca647bcfd123594e5e29fc75fb021401bf2","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- name: Get container facts"},{"line_number":3,"context_line":"  become: true"},{"line_number":4,"context_line":"  kolla_container_facts:"}],"source_content_type":"text/x-yaml","patch_set":11,"id":"9cb44394_c5112d06","line":1,"updated":"2023-09-26 14:31:34.000000000","message":"I like how this has ended up.","commit_id":"9a9ce066d1dfe286f9cd785fdeab95036789283e"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"d4844ca647bcfd123594e5e29fc75fb021401bf2","unresolved":true,"context_lines":[{"line_number":29,"context_line":"  assert:"},{"line_number":30,"context_line":"    that:"},{"line_number":31,"context_line":"      - neutron_plugin_agent \u003d\u003d \u0027openvswitch\u0027"},{"line_number":32,"context_line":"      - container_volume_facts[\u0027ovn_nb_db\u0027] is not defined"},{"line_number":33,"context_line":"      - container_volume_facts[\u0027ovn_sb_db\u0027] is not defined"},{"line_number":34,"context_line":"    fail_msg: \"ML2/OVS agent detected, neutron_plugin_agent is not set to \u0027openvswitch\u0027, Kolla-Ansible does not support this migration operation.\""},{"line_number":35,"context_line":"  when: container_facts[\u0027neutron_openvswitch_agent\u0027] is defined"}],"source_content_type":"text/x-yaml","patch_set":11,"id":"91d63b46_14facc33","line":33,"range":{"start_line":32,"start_character":0,"end_line":33,"end_character":58},"updated":"2023-09-26 14:31:34.000000000","message":"nit: these two would be caught by the previous task.","commit_id":"9a9ce066d1dfe286f9cd785fdeab95036789283e"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"fb0f7c616d9bd3959a9e8c943ad9460679def5b0","unresolved":false,"context_lines":[{"line_number":29,"context_line":"  assert:"},{"line_number":30,"context_line":"    that:"},{"line_number":31,"context_line":"      - neutron_plugin_agent \u003d\u003d \u0027openvswitch\u0027"},{"line_number":32,"context_line":"      - container_volume_facts[\u0027ovn_nb_db\u0027] is not defined"},{"line_number":33,"context_line":"      - container_volume_facts[\u0027ovn_sb_db\u0027] is not defined"},{"line_number":34,"context_line":"    fail_msg: \"ML2/OVS agent detected, neutron_plugin_agent is not set to \u0027openvswitch\u0027, Kolla-Ansible does not support this migration operation.\""},{"line_number":35,"context_line":"  when: container_facts[\u0027neutron_openvswitch_agent\u0027] is defined"}],"source_content_type":"text/x-yaml","patch_set":11,"id":"cbd6c583_4ef3848b","line":33,"range":{"start_line":32,"start_character":0,"end_line":33,"end_character":58},"in_reply_to":"91d63b46_14facc33","updated":"2023-09-27 07:07:01.000000000","message":"Ack","commit_id":"9a9ce066d1dfe286f9cd785fdeab95036789283e"}],"ansible/roles/neutron/tasks/precheck.yml":[{"author":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"change_message_id":"557a943f83069c36deb9839bb69f8a5bde8c7af2","unresolved":true,"context_lines":[{"line_number":66,"context_line":"  when:"},{"line_number":67,"context_line":"    - enable_ironic_neutron_agent | bool"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"- name: Check for ML2/OVN presence"},{"line_number":70,"context_line":"  assert:"},{"line_number":71,"context_line":"    that: neutron_plugin_agent \u003d\u003d \u0027ovn\u0027"},{"line_number":72,"context_line":"    fail_msg: \"ML2/OVN agent detected, neutron_plugin_agent is not set to \u0027ovn\u0027, Kolla-Ansible does not support this migration operation.\""}],"source_content_type":"text/x-yaml","patch_set":10,"id":"45aa7436_fe5c4545","line":69,"updated":"2023-09-22 12:23:52.000000000","message":"Why not import neutron_plugin_agent_check.yml?","commit_id":"549c98ea58e95f2df9436b40963f16adbc48b337"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"362ac2d288faa3420649560d2771bd8e8c0718ee","unresolved":false,"context_lines":[{"line_number":66,"context_line":"  when:"},{"line_number":67,"context_line":"    - enable_ironic_neutron_agent | bool"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"- name: Check for ML2/OVN presence"},{"line_number":70,"context_line":"  assert:"},{"line_number":71,"context_line":"    that: neutron_plugin_agent \u003d\u003d \u0027ovn\u0027"},{"line_number":72,"context_line":"    fail_msg: \"ML2/OVN agent detected, neutron_plugin_agent is not set to \u0027ovn\u0027, Kolla-Ansible does not support this migration operation.\""}],"source_content_type":"text/x-yaml","patch_set":10,"id":"a29dafc8_4e3268e4","line":69,"in_reply_to":"45aa7436_fe5c4545","updated":"2023-09-22 12:43:46.000000000","message":"Done","commit_id":"549c98ea58e95f2df9436b40963f16adbc48b337"}],"ansible/roles/prechecks/tasks/main.yml":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"37f9af96325e97278c031aa45db682837a58a904","unresolved":true,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":"- import_tasks: database_checks.yml"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"- import_tasks: ovs_checks.yml"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"8e40f65a_d587db9e","line":25,"updated":"2023-09-14 09:48:56.000000000","message":"This should be a neutron-specific precheck, in ansible/roles/neutron/tasks/precheck.yml","commit_id":"f12112e39f24ed7065f35b961db34977b2c127ba"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"5d859643a1ce183e7feb20c392b5659f155ad10c","unresolved":false,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":"- import_tasks: database_checks.yml"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"- import_tasks: ovs_checks.yml"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"cfe04172_f18ee5fe","line":25,"in_reply_to":"8e40f65a_d587db9e","updated":"2023-09-14 10:14:20.000000000","message":"I have added it as independent check for neutron as we want it to run every time.","commit_id":"f12112e39f24ed7065f35b961db34977b2c127ba"}],"ansible/roles/prechecks/tasks/ovs_checks.yml":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"37f9af96325e97278c031aa45db682837a58a904","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- name: Get list of OVS bridges"},{"line_number":3,"context_line":"  become: true"},{"line_number":4,"context_line":"  command: docker exec openvswitch_vswitchd ovs-vsctl list-br"},{"line_number":5,"context_line":"  register: bridge_list"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"- name: Check for ML2/OVS presence"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"c0406992_fe388980","line":4,"updated":"2023-09-14 09:48:56.000000000","message":"We can\u0027t assume that this container is present or running. There is a kolla_container_facts module that can be used to check whether containers are running.\n\nWe might want to consider the case where the system has been deployed but the container is not running for some reason.","commit_id":"f12112e39f24ed7065f35b961db34977b2c127ba"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"5d859643a1ce183e7feb20c392b5659f155ad10c","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- name: Get list of OVS bridges"},{"line_number":3,"context_line":"  become: true"},{"line_number":4,"context_line":"  command: docker exec openvswitch_vswitchd ovs-vsctl list-br"},{"line_number":5,"context_line":"  register: bridge_list"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"- name: Check for ML2/OVS presence"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"c713dcb1_9b29b15f","line":4,"in_reply_to":"c0406992_fe388980","updated":"2023-09-14 10:14:20.000000000","message":"Done","commit_id":"f12112e39f24ed7065f35b961db34977b2c127ba"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"37f9af96325e97278c031aa45db682837a58a904","unresolved":true,"context_lines":[{"line_number":8,"context_line":"  assert:"},{"line_number":9,"context_line":"    that: not bridge_list.stdout | regex_search(\u0027^br-tun\u0027, multiline\u003dTrue, ignorecase\u003dTrue)"},{"line_number":10,"context_line":"    fail_msg: \"ML2/OVS agent detected, neutron_plugin_agent is not set to \u0027openvswitch\u0027, Kolla-Ansible does not support this migration operation.\""},{"line_number":11,"context_line":"  when: neutron_plugin_agent !\u003d \u0027openvswitch\u0027"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"- name: Check for ML2/OVN presence"},{"line_number":14,"context_line":"  assert:"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"8eca9789_3990c67d","line":11,"updated":"2023-09-14 09:48:56.000000000","message":"Need to be careful about drivers other than OVS and OVN, e.g. linuxbridge.","commit_id":"f12112e39f24ed7065f35b961db34977b2c127ba"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"5d859643a1ce183e7feb20c392b5659f155ad10c","unresolved":false,"context_lines":[{"line_number":8,"context_line":"  assert:"},{"line_number":9,"context_line":"    that: not bridge_list.stdout | regex_search(\u0027^br-tun\u0027, multiline\u003dTrue, ignorecase\u003dTrue)"},{"line_number":10,"context_line":"    fail_msg: \"ML2/OVS agent detected, neutron_plugin_agent is not set to \u0027openvswitch\u0027, Kolla-Ansible does not support this migration operation.\""},{"line_number":11,"context_line":"  when: neutron_plugin_agent !\u003d \u0027openvswitch\u0027"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"- name: Check for ML2/OVN presence"},{"line_number":14,"context_line":"  assert:"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"d24115b0_6baccdf2","line":11,"in_reply_to":"8eca9789_3990c67d","updated":"2023-09-14 10:14:20.000000000","message":"Linuxbridge is marked as experimental by neutron team, and I do not have access to  deployments using other agents.","commit_id":"f12112e39f24ed7065f35b961db34977b2c127ba"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"779f6e6927b403c762f02f5b797112ff173cef37","unresolved":false,"context_lines":[{"line_number":8,"context_line":"  assert:"},{"line_number":9,"context_line":"    that: not bridge_list.stdout | regex_search(\u0027^br-tun\u0027, multiline\u003dTrue, ignorecase\u003dTrue)"},{"line_number":10,"context_line":"    fail_msg: \"ML2/OVS agent detected, neutron_plugin_agent is not set to \u0027openvswitch\u0027, Kolla-Ansible does not support this migration operation.\""},{"line_number":11,"context_line":"  when: neutron_plugin_agent !\u003d \u0027openvswitch\u0027"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"- name: Check for ML2/OVN presence"},{"line_number":14,"context_line":"  assert:"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"3d5fe0ad_5396948c","line":11,"in_reply_to":"d24115b0_6baccdf2","updated":"2023-09-14 18:30:07.000000000","message":"Unfortunately that doesn\u0027t mean we can ignore it or other plugins. I think the current code handles it better though.","commit_id":"f12112e39f24ed7065f35b961db34977b2c127ba"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"37f9af96325e97278c031aa45db682837a58a904","unresolved":true,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"- name: Check for ML2/OVN presence"},{"line_number":14,"context_line":"  assert:"},{"line_number":15,"context_line":"    that: not bridge_list.stdout | regex_search(\u0027^breth2-ovs\u0027, multiline\u003dTrue, ignorecase\u003dTrue)"},{"line_number":16,"context_line":"    fail_msg: \"ML2/OVN agent detected, neutron_plugin_agent is not set to \u0027ovn\u0027, Kolla-Ansible does not support this migration operation.\""},{"line_number":17,"context_line":"  when: neutron_plugin_agent !\u003d \u0027ovn\u0027"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"dc92ecee_200c322e","line":15,"updated":"2023-09-14 09:48:56.000000000","message":"I don\u0027t think this condition makes sense. breth2-ovs is a bit of a kayobe-ism, and very hard-coded to your test setup.\n\nI also think that an OVN setup could have this type of interface.","commit_id":"f12112e39f24ed7065f35b961db34977b2c127ba"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"779f6e6927b403c762f02f5b797112ff173cef37","unresolved":false,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"- name: Check for ML2/OVN presence"},{"line_number":14,"context_line":"  assert:"},{"line_number":15,"context_line":"    that: not bridge_list.stdout | regex_search(\u0027^breth2-ovs\u0027, multiline\u003dTrue, ignorecase\u003dTrue)"},{"line_number":16,"context_line":"    fail_msg: \"ML2/OVN agent detected, neutron_plugin_agent is not set to \u0027ovn\u0027, Kolla-Ansible does not support this migration operation.\""},{"line_number":17,"context_line":"  when: neutron_plugin_agent !\u003d \u0027ovn\u0027"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"658e9e54_5aa61524","line":15,"in_reply_to":"0636e9b0_e834d2f2","updated":"2023-09-14 18:30:07.000000000","message":"What I tried to say (but perhaps didn\u0027t well enough) is that container presence may not be enough - strictly we should check for volumes too in case containers aren\u0027t running.","commit_id":"f12112e39f24ed7065f35b961db34977b2c127ba"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"edd735339e8d92df2b11fb111001766f9cb73d23","unresolved":false,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"- name: Check for ML2/OVN presence"},{"line_number":14,"context_line":"  assert:"},{"line_number":15,"context_line":"    that: not bridge_list.stdout | regex_search(\u0027^breth2-ovs\u0027, multiline\u003dTrue, ignorecase\u003dTrue)"},{"line_number":16,"context_line":"    fail_msg: \"ML2/OVN agent detected, neutron_plugin_agent is not set to \u0027ovn\u0027, Kolla-Ansible does not support this migration operation.\""},{"line_number":17,"context_line":"  when: neutron_plugin_agent !\u003d \u0027ovn\u0027"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"51adc99f_590e7362","line":15,"in_reply_to":"658e9e54_5aa61524","updated":"2023-09-19 12:07:19.000000000","message":"I\u0027ve added the volume check.","commit_id":"f12112e39f24ed7065f35b961db34977b2c127ba"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"1886dc1083de225bb0859ddd389f5422f0593764","unresolved":false,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"- name: Check for ML2/OVN presence"},{"line_number":14,"context_line":"  assert:"},{"line_number":15,"context_line":"    that: not bridge_list.stdout | regex_search(\u0027^breth2-ovs\u0027, multiline\u003dTrue, ignorecase\u003dTrue)"},{"line_number":16,"context_line":"    fail_msg: \"ML2/OVN agent detected, neutron_plugin_agent is not set to \u0027ovn\u0027, Kolla-Ansible does not support this migration operation.\""},{"line_number":17,"context_line":"  when: neutron_plugin_agent !\u003d \u0027ovn\u0027"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"0636e9b0_e834d2f2","line":15,"in_reply_to":"c381c92f_118903ee","updated":"2023-09-14 11:01:20.000000000","message":"It makes sense to check for container presence, I\u0027ve changed it.","commit_id":"f12112e39f24ed7065f35b961db34977b2c127ba"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"dd9fdb82c6f19f08da374f73452d6c7f79b0bf99","unresolved":true,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"- name: Check for ML2/OVN presence"},{"line_number":14,"context_line":"  assert:"},{"line_number":15,"context_line":"    that: not bridge_list.stdout | regex_search(\u0027^breth2-ovs\u0027, multiline\u003dTrue, ignorecase\u003dTrue)"},{"line_number":16,"context_line":"    fail_msg: \"ML2/OVN agent detected, neutron_plugin_agent is not set to \u0027ovn\u0027, Kolla-Ansible does not support this migration operation.\""},{"line_number":17,"context_line":"  when: neutron_plugin_agent !\u003d \u0027ovn\u0027"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"c381c92f_118903ee","line":15,"in_reply_to":"dc92ecee_200c322e","updated":"2023-09-14 09:59:45.000000000","message":"A better test of OVN presence would be the existence of the OVN containers, or ovn_nb_db or ovn_sb_db Docker volumes (as a backup in case containers aren\u0027t running, but this would only fail on the controllers).\n\nFor OVS we might say that if we can detect the presence of OVS (either the containers or openvswitch_db docker volume) and absence of OVN based on the above condition.\n\nSomething like (pseudocode):\n\nhas_ovn: \u003cOVN containers or volumes present\u003e\nhas_ovs: \u003cOVS containers or volumes present\u003e\n\nThen assertion tasks could be:\n\nassert not has_ovn when agent \u003d\u003d ovs\n\nassert not has_ovs or has_ovn when agent \u003d\u003d ovn\n\nassert not has_ovs and not has_ovn when agent not in [ovs, ovn]\n\nDoes that make sense?","commit_id":"f12112e39f24ed7065f35b961db34977b2c127ba"}],"releasenotes/notes/ml2ovs_precheck-c859504004f6884b.yaml":[{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"79acad5c50ac73a88de1b258c45cb1e32cf064b0","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Added a neutron precheck for ML2/OVS and ML2/OVN presence."},{"line_number":5,"context_line":"    It will fail if neutron_plugin_agent is set to \u0027ovn\u0027"},{"line_number":6,"context_line":"    and use if ML2/OVS is detected and vice versa."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"f31c80b1_4dfd2512","line":4,"updated":"2023-09-22 10:51:35.000000000","message":"If you want a precheck, it should be added there and not to deploy? Otherwise the wording is misleading. \"A check has been added at the start of the deploy phase\"?\n\nBut having this fail in precheck already would be nice, if someone runs the prechecks and they say \"all green\", we shouldn\u0027t fail during deploy for this.","commit_id":"f50797260613c0fd6b407ad8006d2b31fb4bb454"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"95939d02695e11a8619f0a90a9373b6f2a9a72ea","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Added a neutron precheck for ML2/OVS and ML2/OVN presence."},{"line_number":5,"context_line":"    It will fail if neutron_plugin_agent is set to \u0027ovn\u0027"},{"line_number":6,"context_line":"    and use if ML2/OVS is detected and vice versa."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fdcb6f28_6f043015","line":4,"in_reply_to":"f31c80b1_4dfd2512","updated":"2023-09-22 12:02:44.000000000","message":"It is better to have it run during reconfigure as well, so that\u0027s why it\u0027s not a precheck.\n\nI could also add it to prechecks, would that be feasible?","commit_id":"f50797260613c0fd6b407ad8006d2b31fb4bb454"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"48a02e2aa711ad9aa617d71c3c3014b7200f6e16","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Added a neutron precheck for ML2/OVS and ML2/OVN presence."},{"line_number":5,"context_line":"    It will fail if neutron_plugin_agent is set to \u0027ovn\u0027"},{"line_number":6,"context_line":"    and use if ML2/OVS is detected and vice versa."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"2180fb27_20c363a5","line":4,"in_reply_to":"fdcb6f28_6f043015","updated":"2023-09-22 12:13:29.000000000","message":"Done","commit_id":"f50797260613c0fd6b407ad8006d2b31fb4bb454"},{"author":{"_account_id":32553,"name":"Sven Kieske","email":"sven_oss@posteo.de","username":"skieske"},"change_message_id":"31dee245d23955b17c6740310ee432dbd0de0c37","unresolved":true,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Added a neutron precheck for ML2/OVS and ML2/OVN presence."},{"line_number":5,"context_line":"    It will fail if neutron_plugin_agent is set to \u0027ovn\u0027"},{"line_number":6,"context_line":"    and use if ML2/OVS is detected and vice versa."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"ca061d57_3e96e487","line":6,"range":{"start_line":5,"start_character":4,"end_line":6,"end_character":50},"updated":"2023-09-22 09:37:57.000000000","message":"I can\u0027t parse this sentence, when will it fail?","commit_id":"f50797260613c0fd6b407ad8006d2b31fb4bb454"},{"author":{"_account_id":32553,"name":"Sven Kieske","email":"sven_oss@posteo.de","username":"skieske"},"change_message_id":"9830ffdc741cf8132708169a95e8d79a159d6ac8","unresolved":true,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Added a neutron precheck for ML2/OVS and ML2/OVN presence."},{"line_number":5,"context_line":"    It will fail if neutron_plugin_agent is set to \u0027ovn\u0027"},{"line_number":6,"context_line":"    and use if ML2/OVS is detected and vice versa."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"344fbf79_ca7e5601","line":6,"range":{"start_line":5,"start_character":4,"end_line":6,"end_character":50},"in_reply_to":"2f097972_3788b1a9","updated":"2023-09-22 10:27:31.000000000","message":"I guess you mean:\n\n\"It will fail if neutron_plugin_agent is set to \u0027ovn\u0027 but ML2/OVS is used and vice versa.\"","commit_id":"f50797260613c0fd6b407ad8006d2b31fb4bb454"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"95939d02695e11a8619f0a90a9373b6f2a9a72ea","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Added a neutron precheck for ML2/OVS and ML2/OVN presence."},{"line_number":5,"context_line":"    It will fail if neutron_plugin_agent is set to \u0027ovn\u0027"},{"line_number":6,"context_line":"    and use if ML2/OVS is detected and vice versa."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"791b0885_79dcb428","line":6,"range":{"start_line":5,"start_character":4,"end_line":6,"end_character":50},"in_reply_to":"2f097972_3788b1a9","updated":"2023-09-22 12:02:44.000000000","message":"I\u0027ve updated the release note.","commit_id":"f50797260613c0fd6b407ad8006d2b31fb4bb454"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"79acad5c50ac73a88de1b258c45cb1e32cf064b0","unresolved":true,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Added a neutron precheck for ML2/OVS and ML2/OVN presence."},{"line_number":5,"context_line":"    It will fail if neutron_plugin_agent is set to \u0027ovn\u0027"},{"line_number":6,"context_line":"    and use if ML2/OVS is detected and vice versa."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"4b09e7c8_4f06ffbd","line":6,"range":{"start_line":5,"start_character":4,"end_line":6,"end_character":50},"in_reply_to":"344fbf79_ca7e5601","updated":"2023-09-22 10:51:35.000000000","message":"s/use if/use of/ I guess\n\nand please use double backticks for quoting \"ovn\" and also neutron_plugin_agent.","commit_id":"f50797260613c0fd6b407ad8006d2b31fb4bb454"},{"author":{"_account_id":32553,"name":"Sven Kieske","email":"sven_oss@posteo.de","username":"skieske"},"change_message_id":"86a7c27284465dd99fcee826101d9da34cdafc45","unresolved":true,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Added a neutron precheck for ML2/OVS and ML2/OVN presence."},{"line_number":5,"context_line":"    It will fail if neutron_plugin_agent is set to \u0027ovn\u0027"},{"line_number":6,"context_line":"    and use if ML2/OVS is detected and vice versa."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"2f097972_3788b1a9","line":6,"range":{"start_line":5,"start_character":4,"end_line":6,"end_character":50},"in_reply_to":"8724a9a6_905da053","updated":"2023-09-22 10:21:39.000000000","message":"maybe I\u0027m not awake but \"and use if ML2/OVN is detected\" is missing at least a word, no? what is \"used\" here, that is missing, or I can just not parse it.\n\nDo you mean something like \"It will fail if neutron_plugin_agent is **not** set to \u0027ovn\u0027\n    and either `ovn_controller` is defined or any ovn container volumes are detected.\" ? Because that is what the check does.","commit_id":"f50797260613c0fd6b407ad8006d2b31fb4bb454"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"a172ad4cd60dc0b1034cc99425c620f7a575ce1e","unresolved":true,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Added a neutron precheck for ML2/OVS and ML2/OVN presence."},{"line_number":5,"context_line":"    It will fail if neutron_plugin_agent is set to \u0027ovn\u0027"},{"line_number":6,"context_line":"    and use if ML2/OVS is detected and vice versa."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"8724a9a6_905da053","line":6,"range":{"start_line":5,"start_character":4,"end_line":6,"end_character":50},"in_reply_to":"ca061d57_3e96e487","updated":"2023-09-22 10:00:51.000000000","message":"It means it will also fail when opposite conditions are true - neutron_plugin_agent is set to \u0027openvswitch\u0027 and use if ML2/OVN is detected.","commit_id":"f50797260613c0fd6b407ad8006d2b31fb4bb454"},{"author":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"change_message_id":"286e8aef035c883506ac35083fb0186fab1c5ca1","unresolved":true,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Added a neutron check for ML2/OVS and ML2/OVN presence"},{"line_number":5,"context_line":"    at the start of deploy phase. It will fail if"},{"line_number":6,"context_line":"    neutron_plugin_agent is set to \"ovn\" and use of ML2/OVS"},{"line_number":7,"context_line":"    container detected. In case where neutron_plugin_agent"},{"line_number":8,"context_line":"    is set to \"openvswitch\" the check will fail when it detects"},{"line_number":9,"context_line":"    ML2/OVN container or any of the OVN specific volumes."}],"source_content_type":"text/x-yaml","patch_set":12,"id":"159b1c00_401ff5f6","line":6,"range":{"start_line":6,"start_character":35,"end_line":6,"end_character":36},"updated":"2023-09-26 19:13:23.000000000","message":"nit: ``ovn`` (double backquote instead of quote)","commit_id":"66d2e15b3595064ca95d9808e36213ed374e08b6"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"a66a69ab6d163b367a3a245f1ae095625d5873b1","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Added a neutron check for ML2/OVS and ML2/OVN presence"},{"line_number":5,"context_line":"    at the start of deploy phase. It will fail if"},{"line_number":6,"context_line":"    neutron_plugin_agent is set to \"ovn\" and use of ML2/OVS"},{"line_number":7,"context_line":"    container detected. In case where neutron_plugin_agent"},{"line_number":8,"context_line":"    is set to \"openvswitch\" the check will fail when it detects"},{"line_number":9,"context_line":"    ML2/OVN container or any of the OVN specific volumes."}],"source_content_type":"text/x-yaml","patch_set":12,"id":"c161b807_18e0efd1","line":6,"range":{"start_line":6,"start_character":35,"end_line":6,"end_character":36},"in_reply_to":"159b1c00_401ff5f6","updated":"2023-09-27 07:07:29.000000000","message":"Done","commit_id":"66d2e15b3595064ca95d9808e36213ed374e08b6"},{"author":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"change_message_id":"286e8aef035c883506ac35083fb0186fab1c5ca1","unresolved":true,"context_lines":[{"line_number":5,"context_line":"    at the start of deploy phase. It will fail if"},{"line_number":6,"context_line":"    neutron_plugin_agent is set to \"ovn\" and use of ML2/OVS"},{"line_number":7,"context_line":"    container detected. In case where neutron_plugin_agent"},{"line_number":8,"context_line":"    is set to \"openvswitch\" the check will fail when it detects"},{"line_number":9,"context_line":"    ML2/OVN container or any of the OVN specific volumes."}],"source_content_type":"text/x-yaml","patch_set":12,"id":"c1ebd75a_0980956d","line":8,"range":{"start_line":8,"start_character":14,"end_line":8,"end_character":27},"updated":"2023-09-26 19:13:23.000000000","message":"nit: ``openvswitch`` (double backquote instead of quote)","commit_id":"66d2e15b3595064ca95d9808e36213ed374e08b6"},{"author":{"_account_id":34940,"name":"Rafal Lewandowski","display_name":"Rafal Lewandowski","email":"rafal@stackhpc.com","username":"rav"},"change_message_id":"a66a69ab6d163b367a3a245f1ae095625d5873b1","unresolved":false,"context_lines":[{"line_number":5,"context_line":"    at the start of deploy phase. It will fail if"},{"line_number":6,"context_line":"    neutron_plugin_agent is set to \"ovn\" and use of ML2/OVS"},{"line_number":7,"context_line":"    container detected. In case where neutron_plugin_agent"},{"line_number":8,"context_line":"    is set to \"openvswitch\" the check will fail when it detects"},{"line_number":9,"context_line":"    ML2/OVN container or any of the OVN specific volumes."}],"source_content_type":"text/x-yaml","patch_set":12,"id":"82b49f8e_194686dd","line":8,"range":{"start_line":8,"start_character":14,"end_line":8,"end_character":27},"in_reply_to":"c1ebd75a_0980956d","updated":"2023-09-27 07:07:29.000000000","message":"Done","commit_id":"66d2e15b3595064ca95d9808e36213ed374e08b6"}]}
