Update RPM specs to pre 2013.2.1
[openstack-build/neutron-build.git] / rpm / SPECS / openstack-neutron.spec
index f8a4a6e6cffd3d3c61205be1f9ec94f30e59910a..7ef4344e1d618d95c0ad8a7c3582658c0f300c2e 100644 (file)
@@ -1,11 +1,11 @@
 #
-# 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
 
@@ -52,7 +52,7 @@ Source42:     neutron-metering-agent.upstart
 
 Source90:      neutron-dist.conf
 #
-# patches_base=2013.2
+# patches_base=2013.2+1
 #
 Patch0001: 0001-use-parallel-installed-versions-in-RHEL6.patch
 
@@ -64,14 +64,16 @@ BuildRequires:      python-setuptools
 # 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
@@ -89,17 +91,17 @@ Requires:   dnsmasq
 
 
 %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}
@@ -109,31 +111,34 @@ Requires: MySQL-python
 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}
@@ -143,7 +148,7 @@ Requires:   openstack-neutron = %{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
@@ -152,7 +157,7 @@ Networks Controller.
 
 
 %package -n openstack-neutron-brocade
-Summary:       Quantum Brocade plugin
+Summary:       Neutron Brocade plugin
 Group:         Applications/System
 
 Provides:      openstack-quantum-brocade = %{version}-%{release}
@@ -162,7 +167,7 @@ Requires:   openstack-neutron = %{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
@@ -170,7 +175,7 @@ networks using Brocade VCS switches running NOS.
 
 
 %package -n openstack-neutron-cisco
-Summary:       Quantum Cisco plugin
+Summary:       Neutron Cisco plugin
 Group:         Applications/System
 
 Provides:      openstack-quantum-cisco = %{version}-%{release}
@@ -181,7 +186,7 @@ Requires:   python-configobj
 
 
 %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
@@ -189,7 +194,7 @@ networks using Cisco UCS and Nexus.
 
 
 %package -n openstack-neutron-hyperv
-Summary:       Quantum Hyper-V plugin
+Summary:       Neutron Hyper-V plugin
 Group:         Applications/System
 
 Provides:      openstack-quantum-hyperv = %{version}-%{release}
@@ -199,7 +204,7 @@ Requires:   openstack-neutron = %{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
@@ -207,7 +212,7 @@ networks using Microsoft Hyper-V.
 
 
 %package -n openstack-neutron-linuxbridge
-Summary:       Quantum linuxbridge plugin
+Summary:       Neutron linuxbridge plugin
 Group:         Applications/System
 
 Provides:      openstack-quantum-linuxbridge = %{version}-%{release}
@@ -219,7 +224,7 @@ Requires:   python-pyudev
 
 
 %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
@@ -227,7 +232,7 @@ networks as VLANs using Linux bridging.
 
 
 %package -n openstack-neutron-midonet
-Summary:       Quantum MidoNet plugin
+Summary:       Neutron MidoNet plugin
 Group:         Applications/System
 
 Provides:      openstack-quantum-midonet = %{version}-%{release}
@@ -237,7 +242,7 @@ Requires:   openstack-neutron = %{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
@@ -245,7 +250,7 @@ networks using MidoNet from Midokura.
 
 
 %package -n openstack-neutron-ml2
-Summary:       Quantum ML2 plugin
+Summary:       Neutron ML2 plugin
 Group:         Applications/System
 
 Provides:      openstack-quantum-ml2 = %{version}-%{release}
@@ -255,7 +260,7 @@ Requires:   openstack-neutron = %{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
@@ -264,7 +269,7 @@ for accessing those types.
 
 
 %package -n openstack-neutron-mellanox
-Summary:       Quantum Mellanox plugin
+Summary:       Neutron Mellanox plugin
 Group:         Applications/System
 
 Provides:      openstack-quantum-mellanox = %{version}-%{release}
@@ -274,12 +279,12 @@ Requires: openstack-neutron = %{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}
@@ -289,7 +294,7 @@ Requires:   openstack-neutron = %{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
@@ -297,7 +302,7 @@ networks using Nicira NVP.
 
 
 %package -n openstack-neutron-openvswitch
-Summary:       Quantum openvswitch plugin
+Summary:       Neutron openvswitch plugin
 Group:         Applications/System
 
 Provides:      openstack-quantum-openvswitch = %{version}-%{release}
@@ -308,7 +313,7 @@ Requires:   openvswitch
 
 
 %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
@@ -316,7 +321,7 @@ networks using Open vSwitch.
 
 
 %package -n openstack-neutron-plumgrid
-Summary:       Quantum PLUMgrid plugin
+Summary:       Neutron PLUMgrid plugin
 Group:         Applications/System
 
 Provides:      openstack-quantum-plumgrid = %{version}-%{release}
@@ -326,7 +331,7 @@ Requires:   openstack-neutron = %{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
@@ -334,7 +339,7 @@ networks using the PLUMgrid platform.
 
 
 %package -n openstack-neutron-ryu
-Summary:       Quantum Ryu plugin
+Summary:       Neutron Ryu plugin
 Group:         Applications/System
 
 Provides:      openstack-quantum-ryu = %{version}-%{release}
@@ -344,7 +349,7 @@ Requires:   openstack-neutron = %{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
@@ -352,7 +357,7 @@ networks using the Ryu Network Operating System.
 
 
 %package -n openstack-neutron-nec
-Summary:       Quantum NEC plugin
+Summary:       Neutron NEC plugin
 Group:         Applications/System
 
 Provides:      openstack-quantum-nec = %{version}-%{release}
@@ -362,7 +367,7 @@ Requires:   openstack-neutron = %{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
@@ -370,7 +375,7 @@ networks using the NEC OpenFlow controller.
 
 
 %package -n openstack-neutron-metaplugin
-Summary:       Quantum meta plugin
+Summary:       Neutron meta plugin
 Group:         Applications/System
 
 Provides:      openstack-quantum-metaplugin = %{version}-%{release}
@@ -380,7 +385,7 @@ Requires:   openstack-neutron = %{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
@@ -404,7 +409,6 @@ Summary:    Neutron VPNaaS agent
 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
@@ -418,7 +422,7 @@ IPSec.
 
 %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
 
@@ -518,17 +522,17 @@ install -p -D -m 640 %{SOURCE90} %{buildroot}%{_datadir}/neutron/neutron-dist.co
 
 # 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
 
 
@@ -561,6 +565,47 @@ if [ $1 -ge 1 ] ; then
     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
@@ -766,6 +811,7 @@ fi
 %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
@@ -951,9 +997,40 @@ fi
 %{_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