We are thrilled to announce the release of: puppet-neutron 9.0.0: Puppet module for OpenStack Neutron This release is part of the newton release series. For more details, please see below. 9.0.0 ^^^^^ This is the first Mitaka release for puppet-neutron module. New Features ************ * Add 'dnsmasq_dns_servers' option support to dhcp agent settings. * Add logging class to manage olso.log related options init class can still be used for managing the limited number of options Add option _manage_logging_ for init class to make it possible to evaluate logging class separately from init class in one catalog * Add oslo.messaging transport_url parameter via puppet-oslo resource * Add oslo.messaging notitications related options * Add support for oslo_messaging_amqp backend via puppet-oslo resource * Added neutron::plugins::ml2::arista class to manage the arista ml2 driver. * Added neutron::plugins::ml2::arista::l3_arista class to manage the arista ml2 l3 plugin. * Add api_paste type/provider. * service_providers are configured through neutron::server class. * Added octavia lbaas v2 services class. * Added haproxy lbaas v2 services class. * Added option to use either v1 or v2 agent in neutron agents lbaas. * Add ensure_*aas_package booleans for ::neutron::server. In case of installation of neutron API service on standalone node while having enabled FWaaS, VPNaaS or LBaaS as service plugins one has to install their packages otherwise the neutron service will fail to start. * Provide support for VPNaaS service_provider. * Add LBaaS v2 support. * Support the LibreSwan driver for VPNaaS on Red Hat platforms. * Update Cisco ML2 Nexus parameters. * Update PLUMgrid packages & parameters. * Update Nuage orchestration. * Add support for Midonet ML2 driver. * Add support for OpenDaylight driver. * Add support for Bigswitch ML2 driver. * Notify Linuxbridge agent when RabbitMQ parameters change. * Add SSL parameters to communicate with Nova. * Neutron_subnet will now be able to update. * Add support for modern authentification to providers. * Add 'distributed' parameter for neutron_router. * Add 'ha' parameter for neutron_router. * Add IPv6 options to Neutron_subnet type. * On providers, correctly parse csv even with extra output. * Add 'desc' parameter for Neutron_router_interface. * Added the configuration options to configure neutron availability zones for server and agents. * Providers updated to being able to configure router/network with availability zone. * Add support for OVN driver. * Support of PyMySQL driver for MySQL backend. * Add parameters for Neutron QoS support. * Added additional kombu options which are supported by puppet-oslo module Removed unneeded validation checks (covered by puppet-oslo) * Release notes are no longer maintained by hand, we now use the reno tool to manage them. * Configure oslo related options (database, logging, messaging, policy) using puppet-oslo module. oslo.messaging related default values were changed to $::os_service_default Known Issues ************ * VPNaaS service_provider was being configured in a file not being loaded up by neutron server. It has been consolidated with lbaas service configuration into neutron.conf. Deprecation Notes ***************** * _verbose_ option is deprecated and will be removed in future * [DEFAULT]/network_device_mtu option is deprecated and will be removed in Newton. However, new [ml2]/segment_mtu is deprecated too according to neutron/common/config.py. New [DEFAULT]/global_physnet_mtu should be used. * The lbaas v2 agent package ensure in neutron services lbaas has been deprecated, the agent should be installed from neutron agents lbaas. * log_facility is Deprecated and will be removed after Newton cycle. * Deprecate _delete_namespaces parameters, not used anymore in Neutron. * Remove deprecated options dhcp_domain & dhcp_delete_namespaces. * Removed deprecated option external_network_bridge. * Deprecate API parameters for metadata agent, not needed anymore in Mitaka. * Use identity_uri and auth_uri by default and deprecate old auth params. * Set v3 auth related options by default. * The option prevent_arp_spoofing has been deprecated and will be removed in Ocata release. * Deprecated router_id option in l3 agent * nova_url parameter is deprecated, will be removed after Newton cycle. The parameter is not used anymore by Neutron. * Remove QPID messaging support. Qpid messaging driver is removed from oslo.messaging so we won't support anymore. * Deprecate tenant_name option. project_name should be used instead. * verbose option is now deprecated for removal, the parameter has no effect. Bug Fixes ********* * Added python-neutron-lbaas package to be installed with neutron::services::lbaas. this removes a dependency of installing agent on neutron api server to enable the lbaas service. * Fixes bug 1560716 so LinuxBridge configuration file path is the correct one for RDO & UCA packaging. * If Neutron is installed from Ubuntu packages, neutron-server and openvswitch/linuxbridge agents use separate files to load configuration related to ML2 plugin. So in order to use security groups firewall_driver value should be passed to both configuration files (ml2_conf.ini and openvswitch_agent.ini) * Metadata agent config should be applied after package installation. * Add normal bug fixes here, or remove this section. * The package name for the midonet neutron plugin previously used an older naming syntax from times passed that no longer existed in current repositories. To fix this issue the package name was updated to "python-networking-midonet" which is provided by third repository from Midokura. * PLUMgrid neutron plugin assumes the default keystone v2 for a given deployment. The issue is fixed by switching the default config to keystone v3. * PLUMgrid neutron plugin isn't able to specify nova metadata subnet, that is used by PLUMgrid metadata implementation. The issue is fixed by making nova_metadata_subnet configurable. Other Notes *********** * Drop all Qpid support, it was removed from Oslo in Mitaka. * Removed deprecated (for at least one cycle) options from agents: * use_namespaces option from l3/dhcp/lbaas agent * allow_automatic_l3agent_failover from l3 agent * network_device_mtu from l3 agent * auth_password, auth_tenant, auth_user, auth_url, auth_insecure, auth_region from metadata agent * Remove deprecated parameters for keystone::auth, including port, public_protocol, public_address, public_port, internal_protocol, internal_address, admin_protocol, admin_address. Use the new parameters public_url, admin_url and internal_url instead. Changes in puppet-neutron 8.0.0b1..9.0.0 ---------------------------------------- e0826c9 Change wiki to docs 97b026d Prepare 9.0.0 release a50a25d Cleanup README 46a8556 Remove duplicate :osfamily 82aff7b Revert "Deprecate some log options" c93d5a3 add parameter to configure hostname of node df77db2 Add transport_url parameter for oslo.messaging 6136fb9 Add unit test for neutron::config f77ef0e Consolidate service_providers into neutron server a8b631e New config parameters for PLUMgrid Neutron plugin ba53325 Deprecate some log options 64ee2c4 Remove duplicate definition for extension drivers 7896b56 Install lbaas driver with lbaas service class. 7f2c802 Change MidoNet Plugin package name e5fc0b2 Cleanup nova_url warning 8be85ab Add other-requirements.txt for bindep d628206 Deprecate prevent_arp_spoofing option 4757881 Deprecate verbose option in logging 25cf327 Introduce support for oslo.messaging amqp driver configuration d220fb5 Deprecate nova_url parameter c2a1075 Drop deprecated parameters for keystone::auth 931b00c Add support for the oslo db_max_retries option fc243b5 Allow L3 agent setting changes without setting l3_ha to true. ccfdc7e Use oslo module for configuration 1cd4668 Update kombu_ options b88984e Added availability zone hints 24e5df4 Add oslo.messaging notitication related options 2471f3a Add logging class 56d2a46 Test multiple operating systems for db a0f957f Use oslo module to configure oslo related parameters dd4121e Arista ml2 plugin 2fec5ca lbaas v2 service plugin support. 3f01923 Remove deprecated options from agents b7358d0 Don't declare the service when service_enable is false 55b4be5 Totally drop Qpid support 2dcd639 Remove the spaces in the file server.pp 1fb8dd5 Add support for OVN plugin 6ecea69 Added deprecation warning for lbaas agent. b467edb Add purge_config option for all configs 1941fd8 Run db-sync before we manage neutron services 990bbc0 Add Unit Tests for Neutron_config type 0d7a2ca Pass firewall_driver to ML2 plugin conf file 39698c4 Set ini/openstack libs to pass file_path properly 30a9fae Require the neutron package be installed first 2b4cba7 Add ml2 package requirement to neutron::plugins::ml2::mech_driver 44b195d drop useless releasenote d301833 Use global_physnet_mtu to fix MTU settings in Mitaka 39e21ee Add dnsmasq_dns_servers option support db7f162 Write missing tunnel_types option for linuxbridge agent 3052df1 Gemfile: rely on puppet-openstack_spec_helper for dependencies dd6fec3 Fix useless tenant_name parameter being set f2c5b27 Import release notes from stable/mitaka b2ff9e2 Release 8.0.0 5686e0e Fix LinuxBridge Agent configuration file name 1aabf09 Add ensure_absent_val behavior to Nuage neutron plugin type 7baa385 releasenotes: add notes for Mitaka cycle 2b00aea Add support for ovsdb_interface option 35ace1c Add basic structure for ReNo 0b0a245 Deprecate API parameters from metadata agent 0402147 Remove broken checks from providers 8101587 metadata: add nova ssl options 7b403cd Deprecate outdated options 11fec19 Do not use neutron-plugin-ml2 package on Debian d4f299a Move ssl params to [ssl] 50bd74e Workaround package bug and include keystone client f0801dc Cisco nexus config manifest - obsolete parameter (switch_replay_count). Diffstat (except docs and test files) ------------------------------------- .gitignore | 4 + CHANGELOG.md | 5 + Gemfile | 23 +- README.md | 12 +- examples/cisco_ml2.pp | 1 - examples/neutron.pp | 1 - examples/neutron_with_pacemaker.pp | 1 - lib/puppet/provider/neutron.rb | 10 +- .../neutron_agent_linuxbridge/ini_setting.rb | 7 +- .../provider/neutron_agent_ovs/ini_setting.rb | 7 +- .../provider/neutron_api_config/ini_setting.rb | 7 +- lib/puppet/provider/neutron_config/ini_setting.rb | 10 - .../provider/neutron_config/openstackconfig.rb | 15 + .../neutron_dhcp_agent_config/ini_setting.rb | 7 +- .../neutron_fwaas_service_config/ini_setting.rb | 7 +- .../neutron_l3_agent_config/ini_setting.rb | 7 +- .../neutron_lbaas_agent_config/ini_setting.rb | 7 +- .../openstackconfig.rb | 7 +- .../neutron_metadata_agent_config/ini_setting.rb | 7 +- .../neutron_metering_agent_config/ini_setting.rb | 7 +- lib/puppet/provider/neutron_network/neutron.rb | 46 +- .../provider/neutron_plugin_cisco/ini_setting.rb | 7 +- .../ini_setting.rb | 7 +- .../neutron_plugin_cisco_db_conn/ini_setting.rb | 7 +- .../neutron_plugin_cisco_l2network/ini_setting.rb | 7 +- .../neutron_plugin_linuxbridge/ini_setting.rb | 7 +- .../provider/neutron_plugin_midonet/ini_setting.rb | 7 +- .../provider/neutron_plugin_ml2/ini_setting.rb | 7 +- .../provider/neutron_plugin_nuage/ini_setting.rb | 7 +- .../provider/neutron_plugin_nvp/ini_setting.rb | 7 +- .../neutron_plugin_opencontrail/ini_setting.rb | 7 +- .../provider/neutron_plugin_ovn/ini_setting.rb | 10 + .../neutron_plugin_plumgrid/ini_setting.rb | 7 +- .../provider/neutron_plugin_sriov/ini_setting.rb | 7 +- .../neutron_plumlib_plumgrid/ini_setting.rb | 7 +- lib/puppet/provider/neutron_port/neutron.rb | 32 +- lib/puppet/provider/neutron_router/neutron.rb | 69 +-- .../provider/neutron_router_interface/neutron.rb | 12 +- .../neutron_sriov_agent_config/ini_setting.rb | 8 +- lib/puppet/provider/neutron_subnet/neutron.rb | 38 +- .../neutron_vpnaas_agent_config/ini_setting.rb | 7 +- .../openstackconfig.rb | 7 +- lib/puppet/type/neutron_config.rb | 15 +- lib/puppet/type/neutron_lbaas_service_config.rb | 4 +- lib/puppet/type/neutron_network.rb | 4 + lib/puppet/type/neutron_plugin_midonet.rb | 2 +- lib/puppet/type/neutron_plugin_nuage.rb | 5 + lib/puppet/type/neutron_plugin_ovn.rb | 35 ++ lib/puppet/type/neutron_router.rb | 4 + manifests/agents/dhcp.pp | 46 +- manifests/agents/l3.pp | 83 ++-- manifests/agents/lbaas.pp | 68 ++- manifests/agents/metadata.pp | 49 +- manifests/agents/metering.pp | 25 +- manifests/agents/ml2/linuxbridge.pp | 22 +- manifests/agents/ml2/ovs.pp | 42 +- manifests/agents/ml2/sriov.pp | 10 + manifests/agents/vpnaas.pp | 12 +- manifests/config.pp | 6 + manifests/db.pp | 54 +-- manifests/init.pp | 494 +++++++++++++-------- manifests/keystone/auth.pp | 115 +---- manifests/logging.pp | 171 +++++++ manifests/params.pp | 28 +- manifests/plugins/cisco.pp | 24 +- manifests/plugins/midonet.pp | 14 +- manifests/plugins/ml2.pp | 26 +- manifests/plugins/ml2/arista.pp | 64 +++ manifests/plugins/ml2/arista/l3.pp | 77 ++++ manifests/plugins/ml2/cisco/nexus.pp | 14 +- manifests/plugins/ml2/cisco/nexus1000v.pp | 2 - manifests/plugins/nuage.pp | 9 + manifests/plugins/nvp.pp | 12 +- manifests/plugins/opencontrail.pp | 10 + manifests/plugins/ovn.pp | 105 +++++ manifests/plugins/plumgrid.pp | 32 +- manifests/policy.pp | 2 + manifests/server.pp | 152 +++++-- manifests/server/notifications.pp | 40 +- manifests/services/fwaas.pp | 12 +- manifests/services/lbaas.pp | 47 +- manifests/services/lbaas/haproxy.pp | 68 +++ manifests/services/lbaas/octavia.pp | 57 +++ manifests/services/vpnaas.pp | 6 + metadata.json | 11 +- other-requirements.txt | 0 .../add_dnsmasq_dns_servers-2dd26f5c9383f836.yaml | 3 + ...e_to_lbaas_services_class-8d0f51e7be9b5f42.yaml | 5 + .../notes/add_logging_class-f34440ca42c07a89.yaml | 9 + ...d_messaging_transport_url-15c22b42e7e929de.yaml | 3 + .../add_notification_opts-331f756075eaa50a.yaml | 3 + .../add_oslo_messaging_amqp-748568a8325ae49b.yaml | 3 + .../added_arista_ml2_plugin-8bfd0c41981dac50.yaml | 6 + releasenotes/notes/api_paste-b94e191896840944.yaml | 3 + ...ce_provider_configuration-3ce48947a396ad25.yaml | 7 + ...recate_network_device_mtu-d7f15c98605ac2fb.yaml | 6 + releasenotes/notes/drop_qpid-e41ab45c36a910c3.yaml | 3 + .../notes/fix_lb_driver-d429a30889ef8f22.yaml | 5 + ...lbaasv2_agent_and_service-ca5e38a07566ad1e.yaml | 9 + .../notes/log-deprecations-35671d11bd63d41c.yaml | 3 + ...ssing_firewall_driver_ml2-24b48831f2d0e62b.yaml | 7 + releasenotes/notes/mitaka-dece9d43a565e6cb.yaml | 3 + .../notes/mitaka_aas-e5243eaac2354e85.yaml | 14 + .../notes/mitaka_drivers-8c41f528f346a388.yaml | 9 + .../notes/mitaka_metadata-77ebc004c9064934.yaml | 8 + .../notes/mitaka_providers-040ac57a732b1e82.yaml | 11 + ...eutron_availability_zones-80246c2af9a7be08.yaml | 6 + releasenotes/notes/new_auth-2331a620217ccf7c.yaml | 4 + ...cate-prevent-arp-spoofing-71ca70de4ba94b8b.yaml | 4 + ...remove_deprecated_options-772c33dec894edb1.yaml | 11 + .../notes/nova_url_deprec-b4a7a8896bbfb201.yaml | 4 + .../notes/ovn_support-c404cdc8f8624632.yaml | 3 + releasenotes/notes/pymysql-e57bf1f0289dd426.yaml | 3 + releasenotes/notes/qos-13c0b72fe9a5b502.yaml | 3 + ...ove-deprecated-parameters-986fbfeaf482ef1d.yaml | 6 + .../notes/remove_qpid-0b446db43fdea617.yaml | 5 + .../notes/remove_tenant_name-baf2c2864deda6ce.yaml | 3 + .../update_kombu_options-aaa1e16f5f4704ea.yaml | 4 + ...date_midonet_package_name-86a68308aa067cb8.yaml | 7 + .../update_plumgrid_config-82f3f631917f0e50.yaml | 10 + releasenotes/notes/use-reno-1caaec4ba5aa4285.yaml | 4 + .../notes/use_puppet_oslo-868298e248a64ab8.yaml | 5 + .../verbose-deprecation-c3933b9e4aa8f7ad.yaml | 4 + releasenotes/source/_static/.placeholder | 0 releasenotes/source/conf.py | 259 +++++++++++ releasenotes/source/index.rst | 19 + releasenotes/source/mitaka.rst | 6 + releasenotes/source/unreleased.rst | 5 + setup.cfg | 13 + setup.py | 22 + spec/acceptance/basic_neutron_spec.rb | 9 +- spec/acceptance/neutron_config_spec.rb | 53 +-- spec/classes/neutron_agents_dhcp_spec.rb | 31 +- spec/classes/neutron_agents_l3_spec.rb | 59 ++- spec/classes/neutron_agents_lbaas_spec.rb | 19 +- spec/classes/neutron_agents_metadata_spec.rb | 41 +- spec/classes/neutron_agents_metering_spec.rb | 17 +- .../classes/neutron_agents_ml2_linuxbridge_spec.rb | 11 +- spec/classes/neutron_agents_ml2_ovs_spec.rb | 28 +- spec/classes/neutron_agents_ml2_sriov_spec.rb | 7 + spec/classes/neutron_agents_vpnaas_spec.rb | 7 + spec/classes/neutron_config_spec.rb | 170 +++++++ spec/classes/neutron_db_postgresql_spec.rb | 52 +-- spec/classes/neutron_db_spec.rb | 9 +- spec/classes/neutron_db_sync_spec.rb | 34 +- spec/classes/neutron_init_spec.rb | 267 +++++++---- spec/classes/neutron_keystone_auth_spec.rb | 23 - spec/classes/neutron_logging_spec.rb | 130 ++++++ spec/classes/neutron_plugins_cisco_spec.rb | 27 +- spec/classes/neutron_plugins_midonet_spec.rb | 15 +- spec/classes/neutron_plugins_ml2_arista_l3_spec.rb | 87 ++++ spec/classes/neutron_plugins_ml2_arista_spec.rb | 71 +++ .../neutron_plugins_ml2_cisco_nexus1000v_spec.rb | 83 ++++ .../classes/neutron_plugins_ml2_cisco_ucsm_spec.rb | 1 - spec/classes/neutron_plugins_ml2_spec.rb | 25 +- spec/classes/neutron_plugins_nuage_spec.rb | 9 +- spec/classes/neutron_plugins_nvp_spec.rb | 9 +- spec/classes/neutron_plugins_opencontrail_spec.rb | 9 +- spec/classes/neutron_plugins_ovn_spec.rb | 120 +++++ spec/classes/neutron_plugins_plumgrid_spec.rb | 19 +- spec/classes/neutron_policy_spec.rb | 4 + spec/classes/neutron_server_notifications_spec.rb | 22 +- spec/classes/neutron_server_spec.rb | 85 +++- spec/classes/neutron_services_fwaas_spec.rb | 9 +- .../classes/neutron_services_lbaas_haproxy_spec.rb | 63 +++ .../classes/neutron_services_lbaas_octavia_spec.rb | 63 +++ spec/classes/neutron_services_lbaas_spec.rb | 18 +- .../neutron_agent_linuxbridge/ini_setting_spec.rb | 4 +- .../neutron_plugin_nuage/ini_setting_spec.rb | 18 + spec/unit/provider/neutron_router/neutron_spec.rb | 19 +- spec/unit/provider/neutron_spec.rb | 26 +- spec/unit/type/neutron_config_spec.rb | 45 ++ spec/unit/type/neutron_plugin_midonet_spec.rb | 2 +- test-requirements.txt | 4 + tox.ini | 8 + 175 files changed, 3799 insertions(+), 1113 deletions(-) Requirements updates -------------------- diff --git a/other-requirements.txt b/other-requirements.txt new file mode 100644 index 0000000..e69de29 diff --git a/test-requirements.txt b/test-requirements.txt new file mode 100644 index 0000000..bedd666 --- /dev/null +++ b/test-requirements.txt @@ -0,0 +1,4 @@ +# this is required for the docs build jobs +sphinx!=1.2.0,!=1.3b1,<1.3,>=1.1.2 +oslosphinx>=2.5.0 # Apache-2.0 +reno>=0.1.1 # Apache-2.0