)]}'
{"ansible/group_vars/all.yml":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"749753583f5535bb9cedb1c3c4d3dab6bb283999","unresolved":true,"context_lines":[{"line_number":623,"context_line":"enable_horizon_zun: \"{{ enable_zun | bool }}\""},{"line_number":624,"context_line":"enable_influxdb: \"{{ enable_monasca | bool or (enable_cloudkitty | bool and cloudkitty_storage_backend \u003d\u003d \u0027influxdb\u0027) }}\""},{"line_number":625,"context_line":"enable_ironic: \"no\""},{"line_number":626,"context_line":"enable_ironic_genericswitch: \"{{ enable_neutron | bool and enable_ironic | bool }}\""},{"line_number":627,"context_line":"enable_ironic_ipxe: \"no\""},{"line_number":628,"context_line":"enable_ironic_neutron_agent: \"{{ enable_neutron | bool and enable_ironic | bool }}\""},{"line_number":629,"context_line":"enable_ironic_pxe_uefi: \"no\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"11585a0a_6a810614","line":626,"updated":"2021-03-26 10:29:44.000000000","message":"I don\u0027t think we should have this enabled by default. There are various ML2 drivers that work with ironic.","commit_id":"367bfa8e003b507279925d945364f79d4b3dfea6"},{"author":{"_account_id":22997,"name":"xinliang","email":"xinliang.liu@linaro.org","username":"xinliang.liu"},"change_message_id":"14c797d1f3f2a38543253888119ee654756dfa39","unresolved":false,"context_lines":[{"line_number":623,"context_line":"enable_horizon_zun: \"{{ enable_zun | bool }}\""},{"line_number":624,"context_line":"enable_influxdb: \"{{ enable_monasca | bool or (enable_cloudkitty | bool and cloudkitty_storage_backend \u003d\u003d \u0027influxdb\u0027) }}\""},{"line_number":625,"context_line":"enable_ironic: \"no\""},{"line_number":626,"context_line":"enable_ironic_genericswitch: \"{{ enable_neutron | bool and enable_ironic | bool }}\""},{"line_number":627,"context_line":"enable_ironic_ipxe: \"no\""},{"line_number":628,"context_line":"enable_ironic_neutron_agent: \"{{ enable_neutron | bool and enable_ironic | bool }}\""},{"line_number":629,"context_line":"enable_ironic_pxe_uefi: \"no\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"4f35a9b4_f3e1a564","line":626,"in_reply_to":"11585a0a_6a810614","updated":"2021-03-26 15:56:03.000000000","message":"Agree, will set to no by default.","commit_id":"367bfa8e003b507279925d945364f79d4b3dfea6"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"4135d23da55fa8cdc7ec0b6eef3697dc68ea6bc0","unresolved":true,"context_lines":[{"line_number":949,"context_line":"# Comma-separated type of enabled ml2 type drivers"},{"line_number":950,"context_line":"neutron_type_drivers: \"flat,vlan,vxlan{% if neutron_plugin_agent \u003d\u003d \u0027ovn\u0027 %},geneve{% endif %}\""},{"line_number":951,"context_line":"# Comma-separated types of tenant networks (should be listed in \u0027neutron_type_drivers\u0027)"},{"line_number":952,"context_line":"neutron_tenant_network_types: \"{% if neutron_plugin_agent \u003d\u003d \u0027ovn\u0027 %}geneve{% else %}vxlan{% endif %}{% if enable_ironic | bool %},flat,vlan{% endif %}\""},{"line_number":953,"context_line":""},{"line_number":954,"context_line":"# valid values: [\"dvr\", \"dvr_no_external\"]"},{"line_number":955,"context_line":"neutron_compute_dvr_mode: \"dvr\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"9f73db81_fb3ca4a1","line":952,"range":{"start_line":952,"start_character":131,"end_line":952,"end_character":140},"updated":"2021-03-25 10:17:05.000000000","message":"This really depends. Typically if you are using NGS you would not use flat networks for tenants.","commit_id":"367bfa8e003b507279925d945364f79d4b3dfea6"},{"author":{"_account_id":22997,"name":"xinliang","email":"xinliang.liu@linaro.org","username":"xinliang.liu"},"change_message_id":"6c4a93d69bebe53c6c10f01c85f1c42c157dcd50","unresolved":true,"context_lines":[{"line_number":949,"context_line":"# Comma-separated type of enabled ml2 type drivers"},{"line_number":950,"context_line":"neutron_type_drivers: \"flat,vlan,vxlan{% if neutron_plugin_agent \u003d\u003d \u0027ovn\u0027 %},geneve{% endif %}\""},{"line_number":951,"context_line":"# Comma-separated types of tenant networks (should be listed in \u0027neutron_type_drivers\u0027)"},{"line_number":952,"context_line":"neutron_tenant_network_types: \"{% if neutron_plugin_agent \u003d\u003d \u0027ovn\u0027 %}geneve{% else %}vxlan{% endif %}{% if enable_ironic | bool %},flat,vlan{% endif %}\""},{"line_number":953,"context_line":""},{"line_number":954,"context_line":"# valid values: [\"dvr\", \"dvr_no_external\"]"},{"line_number":955,"context_line":"neutron_compute_dvr_mode: \"dvr\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"cdf86350_862e6204","line":952,"range":{"start_line":952,"start_character":131,"end_line":952,"end_character":140},"in_reply_to":"9f73db81_fb3ca4a1","updated":"2021-03-26 01:16:48.000000000","message":"Sorry, what is NGS? Which Ironic network interface will it use?\nPer my understanding, Ironic flat network interface can handle both pre-configure physical flat and vlan network. And Ironic neutron nework interface only handle vlan network now.\nSo put both here has no side effect and cover all the network cases.","commit_id":"367bfa8e003b507279925d945364f79d4b3dfea6"},{"author":{"_account_id":22997,"name":"xinliang","email":"xinliang.liu@linaro.org","username":"xinliang.liu"},"change_message_id":"14c797d1f3f2a38543253888119ee654756dfa39","unresolved":true,"context_lines":[{"line_number":949,"context_line":"# Comma-separated type of enabled ml2 type drivers"},{"line_number":950,"context_line":"neutron_type_drivers: \"flat,vlan,vxlan{% if neutron_plugin_agent \u003d\u003d \u0027ovn\u0027 %},geneve{% endif %}\""},{"line_number":951,"context_line":"# Comma-separated types of tenant networks (should be listed in \u0027neutron_type_drivers\u0027)"},{"line_number":952,"context_line":"neutron_tenant_network_types: \"{% if neutron_plugin_agent \u003d\u003d \u0027ovn\u0027 %}geneve{% else %}vxlan{% endif %}{% if enable_ironic | bool %},flat,vlan{% endif %}\""},{"line_number":953,"context_line":""},{"line_number":954,"context_line":"# valid values: [\"dvr\", \"dvr_no_external\"]"},{"line_number":955,"context_line":"neutron_compute_dvr_mode: \"dvr\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"c93b0c0a_63868ba8","line":952,"range":{"start_line":952,"start_character":131,"end_line":952,"end_character":140},"in_reply_to":"c52047f0_5060b2b0","updated":"2021-03-26 15:56:03.000000000","message":"Agree, this might be the typical configuration and use case, according to Ironic doc[1]. Use ironic_neutron_agent for handing flat network and genericswitch to handle vlans.\n\nIn my cloud, my use case is a little complicated. I found that this configuration still applicate to my case.\nI enable both enable_ironic_genericswitch and enable_ironic_neutron_agent for using both Ironic flat (for boot-from-volume) and neutron(for multi-tenant local-disk-boot) network interface. We use only VLAN type network which including provision and tenant networks to connected to the physical network.\n\nFor other use cases, admin can custom the value of neutron_tenant_network_types.\n\n[1]: https://docs.openstack.org/ironic/latest/admin/multitenancy.html#configuring-the-networking-service","commit_id":"367bfa8e003b507279925d945364f79d4b3dfea6"},{"author":{"_account_id":22997,"name":"xinliang","email":"xinliang.liu@linaro.org","username":"xinliang.liu"},"change_message_id":"1dc5193cca5ccdf17a513541cb134ede73eb3ac3","unresolved":true,"context_lines":[{"line_number":949,"context_line":"# Comma-separated type of enabled ml2 type drivers"},{"line_number":950,"context_line":"neutron_type_drivers: \"flat,vlan,vxlan{% if neutron_plugin_agent \u003d\u003d \u0027ovn\u0027 %},geneve{% endif %}\""},{"line_number":951,"context_line":"# Comma-separated types of tenant networks (should be listed in \u0027neutron_type_drivers\u0027)"},{"line_number":952,"context_line":"neutron_tenant_network_types: \"{% if neutron_plugin_agent \u003d\u003d \u0027ovn\u0027 %}geneve{% else %}vxlan{% endif %}{% if enable_ironic | bool %},flat,vlan{% endif %}\""},{"line_number":953,"context_line":""},{"line_number":954,"context_line":"# valid values: [\"dvr\", \"dvr_no_external\"]"},{"line_number":955,"context_line":"neutron_compute_dvr_mode: \"dvr\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"e7f2a437_e0405abb","line":952,"range":{"start_line":952,"start_character":131,"end_line":952,"end_character":140},"in_reply_to":"c69567a7_63cdea62","updated":"2021-03-26 10:11:10.000000000","message":"Ah, I get your point now. You are right. But for your described use case I don\u0027t know how to handle the neutron_tenant_network_types configuration automatically if admin enable both networking-baremetal and networking-generic-switch.\n\nBecause networking-baremetal can handle both VLAN and Flat network types. And networking-generic-switch can only handle VLAN network type. \n\nOnly if admin only enable networking-generic-switch Flat should not set here. We can insure this not happen here by:\n{% if enable_ironic_neutron_agent | bool %},flat{% endif %}{% if enable_ironic_neutron_agent | bool or  enable_ironic_genericswitch | bool %},vlan{% endif %}\"\n\nAnd for other use cases, admin can custom the value of neutron_tenant_network_types. OK?","commit_id":"367bfa8e003b507279925d945364f79d4b3dfea6"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"92a426dd4165eadfb317667a0c7d8ff1dcef8718","unresolved":true,"context_lines":[{"line_number":949,"context_line":"# Comma-separated type of enabled ml2 type drivers"},{"line_number":950,"context_line":"neutron_type_drivers: \"flat,vlan,vxlan{% if neutron_plugin_agent \u003d\u003d \u0027ovn\u0027 %},geneve{% endif %}\""},{"line_number":951,"context_line":"# Comma-separated types of tenant networks (should be listed in \u0027neutron_type_drivers\u0027)"},{"line_number":952,"context_line":"neutron_tenant_network_types: \"{% if neutron_plugin_agent \u003d\u003d \u0027ovn\u0027 %}geneve{% else %}vxlan{% endif %}{% if enable_ironic | bool %},flat,vlan{% endif %}\""},{"line_number":953,"context_line":""},{"line_number":954,"context_line":"# valid values: [\"dvr\", \"dvr_no_external\"]"},{"line_number":955,"context_line":"neutron_compute_dvr_mode: \"dvr\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"c69567a7_63cdea62","line":952,"range":{"start_line":952,"start_character":131,"end_line":952,"end_character":140},"in_reply_to":"cdf86350_862e6204","updated":"2021-03-26 09:00:52.000000000","message":"Sorry, NGS is networking-generic-switch.\n\nI know it\u0027s possible to use a flat network, I just think that typically if an admin has enabled NGS, they would only want to allow use of VLAN networks. Maybe I\u0027m wrong.","commit_id":"367bfa8e003b507279925d945364f79d4b3dfea6"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"4acafe1ca46967c77417f9e6cd827462180744e7","unresolved":true,"context_lines":[{"line_number":949,"context_line":"# Comma-separated type of enabled ml2 type drivers"},{"line_number":950,"context_line":"neutron_type_drivers: \"flat,vlan,vxlan{% if neutron_plugin_agent \u003d\u003d \u0027ovn\u0027 %},geneve{% endif %}\""},{"line_number":951,"context_line":"# Comma-separated types of tenant networks (should be listed in \u0027neutron_type_drivers\u0027)"},{"line_number":952,"context_line":"neutron_tenant_network_types: \"{% if neutron_plugin_agent \u003d\u003d \u0027ovn\u0027 %}geneve{% else %}vxlan{% endif %}{% if enable_ironic | bool %},flat,vlan{% endif %}\""},{"line_number":953,"context_line":""},{"line_number":954,"context_line":"# valid values: [\"dvr\", \"dvr_no_external\"]"},{"line_number":955,"context_line":"neutron_compute_dvr_mode: \"dvr\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"c52047f0_5060b2b0","line":952,"range":{"start_line":952,"start_character":131,"end_line":952,"end_character":140},"in_reply_to":"e7f2a437_e0405abb","updated":"2021-03-26 10:28:38.000000000","message":"How about this:\n\n{% if enable_ironic_genericswitch | bool %},vlan{% elif enable_ironic_neutron_agent | bool %},flat{% endif %}\"","commit_id":"367bfa8e003b507279925d945364f79d4b3dfea6"}],"ansible/roles/neutron/tasks/config.yml":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"4135d23da55fa8cdc7ec0b6eef3697dc68ea6bc0","unresolved":true,"context_lines":[{"line_number":378,"context_line":"  notify:"},{"line_number":379,"context_line":"    - \"Restart {{ service_name }} container\""},{"line_number":380,"context_line":""},{"line_number":381,"context_line":"- name: Copying over ml2_conf_genericswitch.ini"},{"line_number":382,"context_line":"  become: true"},{"line_number":383,"context_line":"  vars:"},{"line_number":384,"context_line":"    service_name: \"neutron-server\""},{"line_number":385,"context_line":"    neutron_server: \"{{ neutron_services[service_name] }}\""},{"line_number":386,"context_line":"  template:"},{"line_number":387,"context_line":"    src: \"{{ node_custom_config }}/neutron/ml2_conf_genericswitch.ini\""},{"line_number":388,"context_line":"    dest: \"{{ node_config_directory }}/{{ service_name }}/ml2_conf_genericswitch.ini\""},{"line_number":389,"context_line":"    mode: \"0660\""},{"line_number":390,"context_line":"  when:"},{"line_number":391,"context_line":"    - neutron_server.enabled | bool"},{"line_number":392,"context_line":"    - neutron_server.host_in_groups | bool"},{"line_number":393,"context_line":"    - enable_ironic_genericswitch | bool"},{"line_number":394,"context_line":"  notify:"},{"line_number":395,"context_line":"    - \"Restart {{ service_name }} container\""},{"line_number":396,"context_line":""},{"line_number":397,"context_line":"- name: Copying over bgp_dragent.ini"},{"line_number":398,"context_line":"  become: true"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"2dadf990_a0a58c66","line":395,"range":{"start_line":381,"start_character":0,"end_line":395,"end_character":44},"updated":"2021-03-25 10:17:05.000000000","message":"It\u0027s not necessary, you can just use ml2_conf.ini.","commit_id":"367bfa8e003b507279925d945364f79d4b3dfea6"},{"author":{"_account_id":22997,"name":"xinliang","email":"xinliang.liu@linaro.org","username":"xinliang.liu"},"change_message_id":"6c4a93d69bebe53c6c10f01c85f1c42c157dcd50","unresolved":true,"context_lines":[{"line_number":378,"context_line":"  notify:"},{"line_number":379,"context_line":"    - \"Restart {{ service_name }} container\""},{"line_number":380,"context_line":""},{"line_number":381,"context_line":"- name: Copying over ml2_conf_genericswitch.ini"},{"line_number":382,"context_line":"  become: true"},{"line_number":383,"context_line":"  vars:"},{"line_number":384,"context_line":"    service_name: \"neutron-server\""},{"line_number":385,"context_line":"    neutron_server: \"{{ neutron_services[service_name] }}\""},{"line_number":386,"context_line":"  template:"},{"line_number":387,"context_line":"    src: \"{{ node_custom_config }}/neutron/ml2_conf_genericswitch.ini\""},{"line_number":388,"context_line":"    dest: \"{{ node_config_directory }}/{{ service_name }}/ml2_conf_genericswitch.ini\""},{"line_number":389,"context_line":"    mode: \"0660\""},{"line_number":390,"context_line":"  when:"},{"line_number":391,"context_line":"    - neutron_server.enabled | bool"},{"line_number":392,"context_line":"    - neutron_server.host_in_groups | bool"},{"line_number":393,"context_line":"    - enable_ironic_genericswitch | bool"},{"line_number":394,"context_line":"  notify:"},{"line_number":395,"context_line":"    - \"Restart {{ service_name }} container\""},{"line_number":396,"context_line":""},{"line_number":397,"context_line":"- name: Copying over bgp_dragent.ini"},{"line_number":398,"context_line":"  become: true"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"27caaf0b_5c8d62da","line":395,"range":{"start_line":381,"start_character":0,"end_line":395,"end_character":44},"in_reply_to":"2dadf990_a0a58c66","updated":"2021-03-26 01:16:48.000000000","message":"OK, I haven\u0027t know that.\nBut I think putting switches\u0027 configurations into a separated file is clear and easy to manage.","commit_id":"367bfa8e003b507279925d945364f79d4b3dfea6"}]}
