#
-# This is 2013.1.2 release
+# This is 2013.2 release
#
%global release_name havana
Name: openstack-neutron
Version: 2013.2
-Release: 1%{?dist}
+Release: 11%{?dist}
Provides: openstack-quantum = %{version}-%{release}
Obsoletes: openstack-quantum < 2013.2-0.3.b3
Source90: neutron-dist.conf
#
-# patches_base=2013.2
+# patches_base=2013.2+1
#
Patch0001: 0001-use-parallel-installed-versions-in-RHEL6.patch
# as setup.py build imports neutron.openstack.common.setup
# which will then check for these
BuildRequires: python-sqlalchemy0.7
-BuildRequires: python-webob1.0
+BuildRequires: python-webob1.2
BuildRequires: python-paste-deploy1.5
BuildRequires: python-routes1.12
+BuildRequires: python-jinja2-26
BuildRequires: dos2unix
BuildRequires: python-pbr
BuildRequires: python-d2to1
+Requires: dnsmasq-utils
Requires: python-neutron = %{version}-%{release}
Requires: openstack-utils
Requires: python-keystone
%description
-Quantum is a virtual network service for Openstack. Just like
+Neutron is a virtual network service for Openstack. Just like
OpenStack Nova provides an API to dynamically request and configure
-virtual servers, Quantum provides an API to dynamically request and
+virtual servers, Neutron provides an API to dynamically request and
configure virtual networks. These networks connect "interfaces" from
other OpenStack services (e.g., virtual NICs from Nova VMs). The
-Quantum API supports extensions to provide advanced network
+Neutron API supports extensions to provide advanced network
capabilities (e.g., QoS, ACLs, network monitoring, etc.)
%package -n python-neutron
-Summary: Quantum Python libraries
+Summary: Neutron Python libraries
Group: Applications/System
Provides: python-quantum = %{version}-%{release}
Requires: python-alembic
Requires: python-amqplib
Requires: python-anyjson
+Requires: python-babel
Requires: python-eventlet
Requires: python-greenlet
Requires: python-httplib2
Requires: python-iso8601
+Requires: python-jinja2-26
+Requires: python-keystoneclient
Requires: python-kombu
Requires: python-lxml
Requires: python-paste-deploy1.5
Requires: python-routes1.12
Requires: python-sqlalchemy0.7
-Requires: python-webob1.0
+Requires: python-webob1.2
Requires: python-netaddr
-Requires: python-oslo-config
+Requires: python-oslo-config >= 1:1.2.0
Requires: python-qpid
Requires: python-neutronclient
Requires: sudo
%description -n python-neutron
-Quantum provides an API to dynamically request and configure virtual
+Neutron provides an API to dynamically request and configure virtual
networks.
This package contains the neutron Python library.
%package -n openstack-neutron-bigswitch
-Summary: Quantum Big Switch plugin
+Summary: Neutron Big Switch plugin
Group: Applications/System
Provides: openstack-quantum-bigswitch = %{version}-%{release}
%description -n openstack-neutron-bigswitch
-Quantum provides an API to dynamically request and configure virtual
+Neutron provides an API to dynamically request and configure virtual
networks.
This package contains the neutron plugin that implements virtual
%package -n openstack-neutron-brocade
-Summary: Quantum Brocade plugin
+Summary: Neutron Brocade plugin
Group: Applications/System
Provides: openstack-quantum-brocade = %{version}-%{release}
%description -n openstack-neutron-brocade
-Quantum provides an API to dynamically request and configure virtual
+Neutron provides an API to dynamically request and configure virtual
networks.
This package contains the neutron plugin that implements virtual
%package -n openstack-neutron-cisco
-Summary: Quantum Cisco plugin
+Summary: Neutron Cisco plugin
Group: Applications/System
Provides: openstack-quantum-cisco = %{version}-%{release}
%description -n openstack-neutron-cisco
-Quantum provides an API to dynamically request and configure virtual
+Neutron provides an API to dynamically request and configure virtual
networks.
This package contains the neutron plugin that implements virtual
%package -n openstack-neutron-hyperv
-Summary: Quantum Hyper-V plugin
+Summary: Neutron Hyper-V plugin
Group: Applications/System
Provides: openstack-quantum-hyperv = %{version}-%{release}
%description -n openstack-neutron-hyperv
-Quantum provides an API to dynamically request and configure virtual
+Neutron provides an API to dynamically request and configure virtual
networks.
This package contains the neutron plugin that implements virtual
%package -n openstack-neutron-linuxbridge
-Summary: Quantum linuxbridge plugin
+Summary: Neutron linuxbridge plugin
Group: Applications/System
Provides: openstack-quantum-linuxbridge = %{version}-%{release}
%description -n openstack-neutron-linuxbridge
-Quantum provides an API to dynamically request and configure virtual
+Neutron provides an API to dynamically request and configure virtual
networks.
This package contains the neutron plugin that implements virtual
%package -n openstack-neutron-midonet
-Summary: Quantum MidoNet plugin
+Summary: Neutron MidoNet plugin
Group: Applications/System
Provides: openstack-quantum-midonet = %{version}-%{release}
%description -n openstack-neutron-midonet
-Quantum provides an API to dynamically request and configure virtual
+Neutron provides an API to dynamically request and configure virtual
networks.
This package contains the neutron plugin that implements virtual
%package -n openstack-neutron-ml2
-Summary: Quantum ML2 plugin
+Summary: Neutron ML2 plugin
Group: Applications/System
Provides: openstack-quantum-ml2 = %{version}-%{release}
%description -n openstack-neutron-ml2
-Quantum provides an API to dynamically request and configure virtual
+Neutron provides an API to dynamically request and configure virtual
networks.
This package contains a neutron plugin that allows the use of drivers
%package -n openstack-neutron-mellanox
-Summary: Quantum Mellanox plugin
+Summary: Neutron Mellanox plugin
Group: Applications/System
Provides: openstack-quantum-mellanox = %{version}-%{release}
%description -n openstack-neutron-mellanox
-This plugin implements Quantum v2 APIs with support for Mellanox embedded
+This plugin implements Neutron v2 APIs with support for Mellanox embedded
switch functionality as part of the VPI (Ethernet/InfiniBand) HCA.
%package -n openstack-neutron-nicira
-Summary: Quantum Nicira plugin
+Summary: Neutron Nicira plugin
Group: Applications/System
Provides: openstack-quantum-nicira = %{version}-%{release}
%description -n openstack-neutron-nicira
-Quantum provides an API to dynamically request and configure virtual
+Neutron provides an API to dynamically request and configure virtual
networks.
This package contains the neutron plugin that implements virtual
%package -n openstack-neutron-openvswitch
-Summary: Quantum openvswitch plugin
+Summary: Neutron openvswitch plugin
Group: Applications/System
Provides: openstack-quantum-openvswitch = %{version}-%{release}
%description -n openstack-neutron-openvswitch
-Quantum provides an API to dynamically request and configure virtual
+Neutron provides an API to dynamically request and configure virtual
networks.
This package contains the neutron plugin that implements virtual
%package -n openstack-neutron-plumgrid
-Summary: Quantum PLUMgrid plugin
+Summary: Neutron PLUMgrid plugin
Group: Applications/System
Provides: openstack-quantum-plumgrid = %{version}-%{release}
%description -n openstack-neutron-plumgrid
-Quantum provides an API to dynamically request and configure virtual
+Neutron provides an API to dynamically request and configure virtual
networks.
This package contains the neutron plugin that implements virtual
%package -n openstack-neutron-ryu
-Summary: Quantum Ryu plugin
+Summary: Neutron Ryu plugin
Group: Applications/System
Provides: openstack-quantum-ryu = %{version}-%{release}
%description -n openstack-neutron-ryu
-Quantum provides an API to dynamically request and configure virtual
+Neutron provides an API to dynamically request and configure virtual
networks.
This package contains the neutron plugin that implements virtual
%package -n openstack-neutron-nec
-Summary: Quantum NEC plugin
+Summary: Neutron NEC plugin
Group: Applications/System
Provides: openstack-quantum-nec = %{version}-%{release}
%description -n openstack-neutron-nec
-Quantum provides an API to dynamically request and configure virtual
+Neutron provides an API to dynamically request and configure virtual
networks.
This package contains the neutron plugin that implements virtual
%package -n openstack-neutron-metaplugin
-Summary: Quantum meta plugin
+Summary: Neutron meta plugin
Group: Applications/System
Provides: openstack-quantum-metaplugin = %{version}-%{release}
%description -n openstack-neutron-metaplugin
-Quantum provides an API to dynamically request and configure virtual
+Neutron provides an API to dynamically request and configure virtual
networks.
This package contains the neutron plugin that implements virtual
Group: Applications/System
Requires: openstack-neutron = %{version}-%{release}
-Requires: python-jinja2-26
%description -n openstack-neutron-vpn-agent
Neutron provides an API to implement VPN as a service
%patch0001 -p1
-find neutron -name \*.py -exec sed -i '/\/usr\/bin\/env python/d' {} \;
+find neutron -name \*.py -exec sed -i '/\/usr\/bin\/env python/{d;q}' {} +
chmod 644 neutron/plugins/cisco/README
# Install version info file
cat > %{buildroot}%{_sysconfdir}/neutron/release <<EOF
-[Quantum]
+[Neutron]
vendor = Fedora Project
-product = OpenStack Quantum
+product = OpenStack Neutron
package = %{release}
EOF
%pre
-getent group neutron >/dev/null || groupadd -o -r neutron --gid 164
+getent group neutron >/dev/null || groupadd -r neutron
getent passwd neutron >/dev/null || \
- useradd -o --uid 164 -r -g neutron -d %{_sharedstatedir}/neutron -s /sbin/nologin \
- -c "OpenStack Quantum Daemons" neutron
+ useradd -r -g neutron -d %{_sharedstatedir}/neutron -s /sbin/nologin \
+ -c "OpenStack Neutron Daemons" neutron
exit 0
done
fi
+%pretrans
+if rpm --quiet -q openstack-quantum; then
+ mkdir -p %{_localstatedir}/lib/rpm-state/
+
+ # Create a script for restoring init script enabling that we can also
+ # use as a flag to detect quantum -> grizzly upgrades in %posttrans
+ chkconfig --type sysv --list|grep ^quantum| \
+ sed -re 's/[0-6]:off//g
+ s/([0-6]):on\s*/\1/g
+ s/quantum/neutron/g
+ s/^([a-z0-9-]+)\s+([0-6]+)/chkconfig --levels \2 \1 on/' > %{_localstatedir}/lib/rpm-state/UPGRADE_FROM_QUANTUM
+fi
+
+%posttrans
+# Handle migration from quantum -> neutron
+if [ -e %{_localstatedir}/lib/rpm-state/UPGRADE_FROM_QUANTUM ];then
+ # Migrate existing config files
+ for i in `find /etc/quantum -name *.rpmsave`;do
+ new=${i//quantum/neutron}
+ new=${new/%.rpmsave/}
+ sed -e '/^sql_connection/ b
+ /^admin_user/ b
+ s/quantum/neutron/g
+ s/Quantum/Neutron/g' $i > $new
+ done
+
+ # Re-create plugin.ini if it existed.
+ if [ -h %{_sysconfdir}/quantum/plugin.ini ];then
+ plugin_ini=$(readlink %{_sysconfdir}/quantum/plugin.ini)
+ ln -s ${plugin_ini//quantum/neutron} %{_sysconfdir}/neutron/plugin.ini
+ fi
+
+ # Stamp the existing db as grizzly to avoid neutron-server breaking db migration
+ neutron-db-manage --config-file %{_sysconfdir}/neutron/neutron.conf --config-file %{_sysconfdir}/neutron/plugin.ini stamp grizzly || :
+
+ # Restore the enablement of the various neutron services
+ source %{_localstatedir}/lib/rpm-state/UPGRADE_FROM_QUANTUM
+
+ rm -f %{_localstatedir}/lib/rpm-state/UPGRADE_FROM_QUANTUM
+fi
+
%post -n openstack-neutron-linuxbridge
if [ $1 -eq 1 ] ; then
%dir %attr(0755, neutron, neutron) %{_localstatedir}/log/neutron
%dir %attr(0755, neutron, neutron) %{_localstatedir}/run/neutron
%dir %{_datarootdir}/neutron/rootwrap
+%{_datarootdir}/neutron/rootwrap/debug.filters
%{_datarootdir}/neutron/rootwrap/dhcp.filters
%{_datarootdir}/neutron/rootwrap/iptables-firewall.filters
%{_datarootdir}/neutron/rootwrap/l3.filters
%{_initrddir}/neutron-vpn-agent
%{_datadir}/neutron/neutron-vpn-agent.upstart
%{_bindir}/neutron-vpn-agent
+%{_datarootdir}/neutron/rootwrap/vpnaas.filters
%changelog
+* Wed Dec 04 2013 Terry Wilson <twilson@redhat.com> - 2013.2-11
+- Add missing debug and vpnaas rootwrap filters, bz#1034207
+
+* Mon Dec 02 2013 Terry Wilson <twilson@redhat.com> - 2013.2-10
+- Replace quantum references in neutron-dist.conf
+
+* Tue Nov 19 2013 Pádraig Brady <pbrady@redhat.com> - 2013.2-9
+- Fix dependency on parallel installed python-jinja2-26
+
+* Tue Nov 19 2013 Pádraig Brady <pbrady@redhat.com> - 2013.2-8
+- Depend on python-webob1.2 rather than deprecated python-webob1.0
+
+* Wed Nov 13 2013 Terry Wilson <twilson@redhat.com> - 2013.2-7
+- Add dnsmasq-utils dependency to openstack-neutron
+
+* Wed Nov 13 2013 Pádraig Brady <pbrady@redhat.com> - 2013.2-6
+- Fix jinja2 import in openstack-neutron-vpn-agent
+
+* Thu Nov 07 2013 Terry Wilson <twilson@redhat.com> - 2013.2-5
+- Update deps for python-{babel,keystoneclient,oslo-config}
+
+* Wed Oct 30 2013 Terry Wilson <twilson@redaht.com> - 2013.2-4
+- Better support for upgrading from grizzly to havana
+
+* Thu Oct 24 2013 Terry Wilson <twilson@redhat.com> - 2013.2-3
+- Fix previous neutron-ovs-cleanup fix
+
+* Thu Oct 24 2013 Terry Wilson <twilson@redhat.com> - 2013.2-2
+- Ensure that neutron-ovs-cleanup completes before exiting (rhbz#1010941)
+
* Fri Oct 18 2013 Pádraig Brady <pbrady@redhat.com> - 2013.2-1
- Update to havana GA