From 587cd0d0b2bffcf0924da4e468ad1dca2297971c Mon Sep 17 00:00:00 2001 From: Kris Lindgren Date: Wed, 17 Jun 2015 04:26:26 -0600 Subject: [PATCH] kilo packages on centos 7 Change-Id: Ic2d409756e249efdd4f0b33188c04bbdc29deb2a --- conf/components/neutron-fwaas.yaml | 4 + conf/components/neutron-lbaas.yaml | 4 + conf/components/neutron-vpnaas.yaml | 4 + conf/distros/redhat.yaml | 8 +- conf/origins/juno-2014.2.1.yaml | 9 + conf/origins/juno-2014.2.2.yaml | 9 + conf/origins/juno.yaml | 9 + conf/origins/kilo-2015.1.0.yaml | 92 +++++ conf/origins/kilo.yaml | 92 +++++ conf/personas/in-a-box/basic-all.yaml | 3 + conf/personas/in-a-box/basic-ironic.yaml | 3 + conf/personas/in-a-box/basic-neutron.yaml | 3 + conf/personas/in-a-box/basic-web.yaml | 3 + .../packaging/specs/openstack-ceilometer.spec | 75 +++- .../packaging/specs/openstack-heat.spec | 6 + .../specs/openstack-neutron-fwaas.spec | 123 ++++++ .../specs/openstack-neutron-lbaas.spec | 200 ++++++++++ .../specs/openstack-neutron-vpnaas.spec | 194 +++++++++ .../packaging/specs/openstack-neutron.spec | 375 ++++++++++++++++-- .../specs/python-django-horizon.spec | 17 + 20 files changed, 1202 insertions(+), 31 deletions(-) create mode 100644 conf/components/neutron-fwaas.yaml create mode 100644 conf/components/neutron-lbaas.yaml create mode 100644 conf/components/neutron-vpnaas.yaml create mode 100644 conf/origins/kilo-2015.1.0.yaml create mode 100644 conf/origins/kilo.yaml create mode 100644 conf/templates/packaging/specs/openstack-neutron-fwaas.spec create mode 100644 conf/templates/packaging/specs/openstack-neutron-lbaas.spec create mode 100644 conf/templates/packaging/specs/openstack-neutron-vpnaas.spec diff --git a/conf/components/neutron-fwaas.yaml b/conf/components/neutron-fwaas.yaml new file mode 100644 index 00000000..3264f221 --- /dev/null +++ b/conf/components/neutron-fwaas.yaml @@ -0,0 +1,4 @@ +# Settings for component neutron-fwaas +--- + +... diff --git a/conf/components/neutron-lbaas.yaml b/conf/components/neutron-lbaas.yaml new file mode 100644 index 00000000..a6e6e8de --- /dev/null +++ b/conf/components/neutron-lbaas.yaml @@ -0,0 +1,4 @@ +# Settings for component neutron-lbass +--- + +... diff --git a/conf/components/neutron-vpnaas.yaml b/conf/components/neutron-vpnaas.yaml new file mode 100644 index 00000000..1bd3f4c2 --- /dev/null +++ b/conf/components/neutron-vpnaas.yaml @@ -0,0 +1,4 @@ +# Settings for component neutron-vpnaas +--- + +... diff --git a/conf/distros/redhat.yaml b/conf/distros/redhat.yaml index f255792f..fb037933 100644 --- a/conf/distros/redhat.yaml +++ b/conf/distros/redhat.yaml @@ -186,13 +186,17 @@ components: ovs-cleanup: openstack-neutron-openvswitch rpc-zmq-receiver: openstack-neutron server: openstack-neutron - vpn-agent: openstack-neutron-vpn-agent sriov-nic-agent: openstack-neutron-sriov-nic-agent mlnx-agent: openstack-neutron-mlnx metering-agent: openstack-neutron-metering-agen cisco-cfg-agent: openstack-neutron-cisco - lbaas-agent: openstack-neutron netns-cleanup: openstack-neutron + neutron-lbaas: + python_entrypoints: True + neutron-fwaas: + python_entrypoints: True + neutron-vpnaas: + python_entrypoints: True swift-client: python_entrypoints: True trove: diff --git a/conf/origins/juno-2014.2.1.yaml b/conf/origins/juno-2014.2.1.yaml index eba471db..f22fbd2d 100644 --- a/conf/origins/juno-2014.2.1.yaml +++ b/conf/origins/juno-2014.2.1.yaml @@ -72,6 +72,15 @@ neutron-client: neutron: repo: git://github.com/openstack/neutron.git tag: 2014.2.1 +neutron-lbaas: + repo: git://github.com/openstack/neutron-lbaas.git + tag: 2014.2.1 +neutron-fwaas: + repo: git://github.com/openstack/neutron-fwaas.git + tag: 2014.2.1 +neutron-vpnaas: + repo: git://github.com/openstack/neutron-vpnaas.git + tag: 2014.2.1 swift-client: repo: git://github.com/openstack/python-swiftclient.git tag: 2.3.1 diff --git a/conf/origins/juno-2014.2.2.yaml b/conf/origins/juno-2014.2.2.yaml index 0e839d60..a3d16628 100644 --- a/conf/origins/juno-2014.2.2.yaml +++ b/conf/origins/juno-2014.2.2.yaml @@ -72,6 +72,15 @@ neutron-client: neutron: repo: git://github.com/openstack/neutron.git tag: 2014.2.2 +neutron-lbaas: + repo: git://github.com/openstack/neutron-lbaas.git + tag: 2014.2.2 +neutron-fwaas: + repo: git://github.com/openstack/neutron-fwaas.git + tag: 2014.2.2 +neutron-vpnaas: + repo: git://github.com/openstack/neutron-vpnaas.git + tag: 2014.2.2 swift-client: repo: git://github.com/openstack/python-swiftclient.git tag: 2.3.1 diff --git a/conf/origins/juno.yaml b/conf/origins/juno.yaml index 480d7db8..595cbd05 100644 --- a/conf/origins/juno.yaml +++ b/conf/origins/juno.yaml @@ -65,6 +65,15 @@ neutron-client: neutron: repo: git://github.com/openstack/neutron.git tag: 2014.2 +neutron-lbaas: + repo: git://github.com/openstack/neutron-lbaas.git + tag: 2014.2 +neutron-fwaas: + repo: git://github.com/openstack/neutron-fwaas.git + tag: 2014.2 +neutron-vpnaas: + repo: git://github.com/openstack/neutron-vpnaas.git + tag: 2014.2 swift-client: repo: git://github.com/openstack/python-swiftclient.git tag: 2.3.1 diff --git a/conf/origins/kilo-2015.1.0.yaml b/conf/origins/kilo-2015.1.0.yaml new file mode 100644 index 00000000..e5ba8328 --- /dev/null +++ b/conf/origins/kilo-2015.1.0.yaml @@ -0,0 +1,92 @@ +ceilometer: + repo: git://github.com/openstack/ceilometer.git + tag: 2015.1.0 + use_tests_requires: False +ceilometer-client: + repo: git://github.com/openstack/python-ceilometerclient.git + tag: 1.0.14 +cinder-client: + repo: git://github.com/openstack/python-cinderclient.git + tag: 1.1.1 +cinder: + repo: git://github.com/openstack/cinder.git + tag: 2015.1.0 +django-openstack-auth: + repo: git://github.com/openstack/django_openstack_auth.git + tag: 1.2.0 +glance-client: + repo: git://github.com/openstack/python-glanceclient.git + tag: 0.17.1 +glance: + repo: git://github.com/openstack/glance.git + tag: 2015.1.0 +heat: + repo: git://github.com/openstack/heat.git + tag: 2015.1.0 +heat-client: + repo: git://github.com/openstack/python-heatclient.git + tag: 0.4.0 +horizon: + repo: git://github.com/openstack/horizon.git + tag: 2015.1.0 +ironic: + repo: git://github.com/openstack/ironic.git + tag: 2015.1.0 +ironic-client: + repo: git://github.com/openstack/python-ironicclient.git + tag: 0.6.0 +keystone-client: + repo: git://github.com/openstack/python-keystoneclient.git + tag: 1.3.1 +keystone: + repo: git://github.com/openstack/keystone.git + tag: 2015.1.0 +nova-client: + repo: git://github.com/openstack/python-novaclient.git + tag: 2.23.0 +nova: + repo: git://github.com/openstack/nova.git + tag: 2015.1.0 +novnc: + repo: git://github.com/kanaka/noVNC.git + branch: master +openstack-client: + repo: git://github.com/openstack/python-openstackclient.git + tag: 1.2.0 +oslo-config: + repo: git://github.com/openstack/oslo.config.git + tag: 1.9.3 +oslo-incubator: + repo: git://github.com/openstack/oslo-incubator.git + tag: 2015.1.0 +neutron-client: + repo: git://github.com/openstack/python-neutronclient.git + tag: 2.4.0 +neutron: + repo: git://github.com/openstack/neutron.git + tag: 2015.1.0 +neutron-lbaas: + repo: git://github.com/openstack/neutron-lbaas.git + tag: 2015.1.0 +neutron-fwaas: + repo: git://github.com/openstack/neutron-fwaas.git + tag: 2015.1.0 +neutron-vpnaas: + repo: git://github.com/openstack/neutron-vpnaas.git + tag: 2015.1.0 +swift-client: + repo: git://github.com/openstack/python-swiftclient.git + tag: 2.4.0 +trove-client: + repo: git://github.com/openstack/python-troveclient.git + tag: 1.0.9 +trove: + repo: git://github.com/openstack/trove.git + tag: 2015.1.0 + use_tests_requires: False +oslo-messaging: + repo: git://github.com/openstack/oslo.messaging.git + tag: 1.8.2 +pycadf: + repo: git://github.com/openstack/pycadf.git + tag: 0.8.0 diff --git a/conf/origins/kilo.yaml b/conf/origins/kilo.yaml new file mode 100644 index 00000000..36d303c8 --- /dev/null +++ b/conf/origins/kilo.yaml @@ -0,0 +1,92 @@ +ceilometer: + repo: git://github.com/openstack/ceilometer.git + tag: 2015.1.0 + use_tests_requires: False +ceilometer-client: + repo: git://github.com/openstack/python-ceilometerclient.git + tag: 1.0.14 +cinder-client: + repo: git://github.com/openstack/python-cinderclient.git + tag: 1.1.1 +cinder: + repo: git://github.com/openstack/cinder.git + tag: 2015.1.0 +django-openstack-auth: + repo: git://github.com/openstack/django_openstack_auth.git + tag: 1.3.1 +glance-client: + repo: git://github.com/openstack/python-glanceclient.git + tag: 0.17.1 +glance: + repo: git://github.com/openstack/glance.git + tag: 2015.1.0 +heat: + repo: git://github.com/openstack/heat.git + tag: 2015.1.0 +heat-client: + repo: git://github.com/openstack/python-heatclient.git + tag: 0.4.0 +horizon: + repo: git://github.com/openstack/horizon.git + tag: 2015.1.0 +ironic: + repo: git://github.com/openstack/ironic.git + tag: 2015.1.0 +ironic-client: + repo: git://github.com/openstack/python-ironicclient.git + tag: 0.6.0 +keystone-client: + repo: git://github.com/openstack/python-keystoneclient.git + tag: 1.3.1 +keystone: + repo: git://github.com/openstack/keystone.git + tag: 2015.1.0 +nova-client: + repo: git://github.com/openstack/python-novaclient.git + tag: 2.23.0 +nova: + repo: git://github.com/openstack/nova.git + tag: 2015.1.0 +novnc: + repo: git://github.com/kanaka/noVNC.git + branch: master +openstack-client: + repo: git://github.com/openstack/python-openstackclient.git + tag: 1.2.0 +oslo-config: + repo: git://github.com/openstack/oslo.config.git + tag: 1.9.3 +oslo-incubator: + repo: git://github.com/openstack/oslo-incubator.git + tag: 2015.1.0 +neutron-client: + repo: git://github.com/openstack/python-neutronclient.git + tag: 2.4.0 +neutron: + repo: git://github.com/openstack/neutron.git + tag: 2015.1.0 +neutron-lbaas: + repo: git://github.com/openstack/neutron-lbaas.git + tag: 2015.1.0 +neutron-fwaas: + repo: git://github.com/openstack/neutron-fwaas.git + tag: 2015.1.0 +neutron-vpnaas: + repo: git://github.com/openstack/neutron-vpnaas.git + tag: 2015.1.0 +swift-client: + repo: git://github.com/openstack/python-swiftclient.git + tag: 2.4.0 +trove-client: + repo: git://github.com/openstack/python-troveclient.git + tag: 1.0.9 +trove: + repo: git://github.com/openstack/trove.git + tag: 2015.1.0 + use_tests_requires: False +oslo-messaging: + repo: git://github.com/openstack/oslo.messaging.git + tag: 1.8.2 +pycadf: + repo: git://github.com/openstack/pycadf.git + tag: 0.8.0 diff --git a/conf/personas/in-a-box/basic-all.yaml b/conf/personas/in-a-box/basic-all.yaml index 4b0be97c..36645ff8 100644 --- a/conf/personas/in-a-box/basic-all.yaml +++ b/conf/personas/in-a-box/basic-all.yaml @@ -13,6 +13,9 @@ components: - cinder - heat - neutron +- neutron-fwaas +- neutron-lbaas +- neutron-vpnaas - nova - trove # Client used by components diff --git a/conf/personas/in-a-box/basic-ironic.yaml b/conf/personas/in-a-box/basic-ironic.yaml index 0b0ef7e5..a6bc1b3c 100644 --- a/conf/personas/in-a-box/basic-ironic.yaml +++ b/conf/personas/in-a-box/basic-ironic.yaml @@ -13,6 +13,9 @@ components: - cinder - heat - neutron +- neutron-fwaas +- neutron-lbaas +- neutron-vpnaas - nova - trove - ironic diff --git a/conf/personas/in-a-box/basic-neutron.yaml b/conf/personas/in-a-box/basic-neutron.yaml index 6f3df29a..666a18ab 100644 --- a/conf/personas/in-a-box/basic-neutron.yaml +++ b/conf/personas/in-a-box/basic-neutron.yaml @@ -9,6 +9,9 @@ components: - keystone - glance - neutron +- neutron-fwaas +- neutron-lbaas +- neutron-vpnaas - cinder - nova # Client used by components diff --git a/conf/personas/in-a-box/basic-web.yaml b/conf/personas/in-a-box/basic-web.yaml index 43eafe4b..f97d877c 100644 --- a/conf/personas/in-a-box/basic-web.yaml +++ b/conf/personas/in-a-box/basic-web.yaml @@ -9,6 +9,9 @@ components: - keystone - glance - neutron +- neutron-fwaas +- neutron-lbaas +- neutron-vpnaas - cinder - nova # Client used by components diff --git a/conf/templates/packaging/specs/openstack-ceilometer.spec b/conf/templates/packaging/specs/openstack-ceilometer.spec index 87c2a729..fd02ee09 100644 --- a/conf/templates/packaging/specs/openstack-ceilometer.spec +++ b/conf/templates/packaging/specs/openstack-ceilometer.spec @@ -44,7 +44,13 @@ Source17: openstack-ceilometer-ipmi.service %endif Source18: ceilometer-rootwrap-sudoers #end if - +#if $newer_than_eq('2015.1') +%if ! (0%{?rhel} > 6) +Source19: openstack-ceilometer-polling.init +%else +Source19: openstack-ceilometer-polling.service +%endif +#end if Source20: ceilometer-dist.conf Source21: ceilometer.logrotate @@ -216,10 +222,6 @@ This package contains the ceilometer alarm notification and evaluation services. #end if -%files -n python-ceilometer -%{python_sitelib}/ceilometer -%{python_sitelib}/ceilometer-%{os_version}*.egg-info - #if $newer_than_eq('2014.2') %package ipmi Summary: OpenStack ceilometer ipmi agent @@ -243,6 +245,24 @@ nodes from which IPMI sensor data is to be collected directly, by-passing Ironic's management of baremetal. #end if +#if $newer_than_eq('2015.1') +%package polling +Summary: OpenStack ceilometer polling agent +Group: Applications/System + +Requires: %{name}-common = %{version}-%{release} + +%description polling +Ceilometer aims to deliver a unique point of contact for billing systems to +aquire all counters they need to establish customer billing, across all +current and future OpenStack components. The delivery of counters must +be tracable and auditable, the counters must be easily extensible to support +new projects, and agents doing data collections should be +independent of the overall system. + +This package contains the polling service. +#end if + %if 0%{?with_doc} %package doc Summary: Documentation for OpenStack ceilometer @@ -366,7 +386,13 @@ install -p -D -m 755 %{SOURCE17} %{buildroot}%{_initrddir}/%{name}-ipmi install -p -D -m 755 %{SOURCE17} %{buildroot}%{_unitdir}/%{name}-ipmi.service %endif #end if - +#if $newer_than_eq('2015.1') +%if ! (0%{?rhel} > 6) +install -p -D -m 755 %{SOURCE19} %{buildroot}%{_initrddir}/%{name}-polling +%else +install -p -D -m 755 %{SOURCE19} %{buildroot}%{_unitdir}/%{name}-polling.service +%endif +#end if #Fix for bin path for central and compute %if ! (0%{?rhel} > 6) sed -i "s#/usr/bin/ceilometer-compute#/usr/bin/ceilometer-agent-compute#" %{buildroot}%{_initrddir}/%{name}-compute @@ -427,6 +453,10 @@ exit 0 %dir %{_sharedstatedir}/ceilometer %dir %{_sharedstatedir}/ceilometer/tmp +%files -n python-ceilometer +%{python_sitelib}/ceilometer +%{python_sitelib}/ceilometer-%{os_version}*.egg-info + %if 0%{?with_doc} %files doc %doc doc/build/html @@ -659,4 +689,37 @@ if [ $1 -ge 1 ] ; then fi %endif #end if + +#if $newer_than_eq('2015.1') +%files polling +%{_bindir}/ceilometer-polling +%if 0%{?rhel} && 0%{?rhel} <= 6 +%{_initrddir}/%{name}-polling +%else +%{_unitdir}/%{name}-polling.service +%endif + +%if 0%{?rhel} > 6 +%post polling +if [ $1 -eq 1 ] ; then + # Initial installation + /usr/bin/systemctl preset %{name}-polling.service +fi + +%preun polling +if [ $1 -eq 0 ] ; then + # Package removal, not upgrade + /usr/bin/systemctl --no-reload disable %{name}-polling.service > /dev/null 2>&1 || : + /usr/bin/systemctl stop %{name}-polling.service > /dev/null 2>&1 || : +fi + +%postun polling +/usr/bin/systemctl daemon-reload >/dev/null 2>&1 || : +if [ $1 -ge 1 ] ; then + # Package upgrade, not uninstall + /usr/bin/systemctl try-restart %{name}-polling.service #>/dev/null 2>&1 || : +fi +%endif +#end if + %changelog diff --git a/conf/templates/packaging/specs/openstack-heat.spec b/conf/templates/packaging/specs/openstack-heat.spec index cb29d143..ef96581c 100644 --- a/conf/templates/packaging/specs/openstack-heat.spec +++ b/conf/templates/packaging/specs/openstack-heat.spec @@ -107,9 +107,13 @@ rm -rf %{buildroot}/var/lib/heat/.dummy rm -f %{buildroot}/usr/bin/cinder-keystone-setup %if ! 0%{?usr_only} +#end raw +#if $older_than('2015.1') cp etc/heat/heat.conf.sample etc/heat/heat.conf install -p -D -m 640 etc/heat/heat.conf %{buildroot}/%{_sysconfdir}/heat/heat.conf +#end if +#raw install -p -D -m 640 etc/heat/api-paste.ini %{buildroot}/%{_sysconfdir}/heat/api-paste.ini install -p -D -m 640 etc/heat/policy.json %{buildroot}/%{_sysconfdir}/heat/policy.json install -p -D -m 640 %{SOURCE20} %{buildroot}/%{_sysconfdir}/logrotate.d/heat @@ -149,7 +153,9 @@ Components common to all OpenStack Heat services %dir %attr(0755,heat,root) %{_sharedstatedir}/heat %dir %attr(0755,heat,root) %{_sysconfdir}/heat %dir %attr(0755,heat,root) /var/run/heat +#if $older_than('2015.1') %config(noreplace) %attr(0640, root, heat) %{_sysconfdir}/heat/heat.conf +#end if %config(noreplace) %attr(0640, root, heat) %{_sysconfdir}/heat/api-paste.ini %config(noreplace) %attr(0640, root, heat) %{_sysconfdir}/heat/policy.json %config(noreplace) %{_sysconfdir}/logrotate.d/heat diff --git a/conf/templates/packaging/specs/openstack-neutron-fwaas.spec b/conf/templates/packaging/specs/openstack-neutron-fwaas.spec new file mode 100644 index 00000000..e44d99f3 --- /dev/null +++ b/conf/templates/packaging/specs/openstack-neutron-fwaas.spec @@ -0,0 +1,123 @@ +%global modulename neutron_fwaas +%global servicename neutron-fwaas +%global type FWaaS +%global python_name neutron-fwaas +%global daemon_prefix neutron-fwaas +%global os_version ${version} +%global no_tests $no_tests +%global tests_data_dir %{_datarootdir}/%{python_name}-tests + +%if ! (0%{?fedora} > 12 || 0%{?rhel} > 6) +%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")} +%endif + +Name: openstack-%{servicename} +Version: %{os_version}$version_suffix +Release: $release%{?dist} +Epoch: $epoch +Summary: Openstack Networking %{type} plugin + +License: ASL 2.0 +URL: http://launchpad.net/neutron/ +Source0: %{python_name}-%{os_version}.tar.gz + +#for $idx, $fn in enumerate($patches) +Patch$idx: $fn +#end for + +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release} + +BuildArch: noarch +BuildRequires: python2-devel +BuildRequires: python-pbr +BuildRequires: python-setuptools + +Requires: python-%{servicename} = %{epoch}:%{version}-%{release} +Requires: openstack-neutron >= %{epoch}:%{version}-%{release} + +%description +This is a %{type} service plugin for Openstack Neutron (Networking) service. + + +%package -n python-%{servicename} +Summary: Neutron %{type} Python libraries +Group: Applications/System + +Requires: python-neutron >= %{epoch}:%{version}-%{release} +#for $i in $requires +Requires: ${i} +#end for + +#for $i in $conflicts +Conflicts: ${i} +#end for + + + +%description -n python-%{servicename} +This is a %{type} service plugin for Openstack Neutron (Networking) service. + +This package contains the Neutron %{type} Python library. + + +%package -n python-%{servicename}-tests +Summary: Neutron %{type} tests +Group: Applications/System + +Requires: python-%{servicename} = %{epoch}:%{version}-%{release} + + +%description -n python-%{servicename}-tests +This is a %{type} service plugin for Openstack Neutron (Networking) service. + +This package contains Neutron %{type} test files. + + +%prep +%setup -q -n %{python_name}-%{os_version} + +#for $idx, $fn in enumerate($patches) +%patch$idx -p1 +#end for + +%build +#export PBR_VERSION=%{version} +#export SKIP_PIP_INSTALL=1 +%{__python} setup.py build + + +%install +#export PBR_VERSION=%{version} +#export SKIP_PIP_INSTALL=1 +%{__python} setup.py install -O1 --skip-build --root %{buildroot} + +%if ! 0%{?usr_only} +# Move config files to proper location +install -d -m 755 %{buildroot}%{_sysconfdir}/neutron +mv %{buildroot}/usr/etc/neutron/*.ini %{buildroot}%{_sysconfdir}/neutron + +# Create and populate distribution configuration directory for L3/VPN agent +mkdir -p %{buildroot}%{_datadir}/neutron/l3_agent +ln -s %{_sysconfdir}/neutron/fwaas_driver.ini %{buildroot}%{_datadir}/neutron/l3_agent/fwaas_driver.conf +%endif + + +%files +%license LICENSE +%doc AUTHORS CONTRIBUTING.rst README.rst +%if ! 0%{?usr_only} +%config(noreplace) %attr(0640, root, neutron) %{_sysconfdir}/neutron/fwaas_driver.ini +%{_datadir}/neutron/l3_agent/*.conf +%endif + +%files -n python-%{servicename} +%{python_sitelib}/%{modulename} +%{python_sitelib}/%{modulename}-%{version}-py%{python2_version}.egg-info +%exclude %{python_sitelib}/%{modulename}/tests + + +%files -n python-%{servicename}-tests +%{python_sitelib}/%{modulename}/tests + + +%changelog diff --git a/conf/templates/packaging/specs/openstack-neutron-lbaas.spec b/conf/templates/packaging/specs/openstack-neutron-lbaas.spec new file mode 100644 index 00000000..fd49523f --- /dev/null +++ b/conf/templates/packaging/specs/openstack-neutron-lbaas.spec @@ -0,0 +1,200 @@ +%global modulename neutron_lbaas +%global servicename neutron-lbaas +%global type LBaaS +%global python_name neutron-lbaas +%global daemon_prefix neutron-lbaas +%global os_version ${version} +%global no_tests $no_tests +%global tests_data_dir %{_datarootdir}/%{python_name}-tests + +%if ! (0%{?fedora} > 12 || 0%{?rhel} > 6) +%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")} +%endif + +Name: openstack-%{servicename} +Version: %{os_version}$version_suffix +Release: $release%{?dist} +Epoch: $epoch +Summary: Openstack Networking %{type} plugin + +License: ASL 2.0 +URL: http://launchpad.net/neutron/ +Source0: %{python_name}-%{os_version}.tar.gz + +%if ! (0%{?rhel} > 6) +Source10: openstack-neutron-lbaas-agent.init +Source11: openstack-neutron-lbaasv2-agent.init +%else +Source10: openstack-neutron-lbaas-agent.service +Source11: openstack-neutron-lbaasv2-agent.service +%endif + +#for $idx, $fn in enumerate($patches) +Patch$idx: $fn +#end for + +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release} + +BuildArch: noarch +BuildRequires: python2-devel +BuildRequires: python-pbr +BuildRequires: python-setuptools +BuildRequires: systemd-units + +Requires: python-%{servicename} = %{epoch}:%{version}-%{release} +Requires: openstack-neutron >= %{epoch}:%{version}-%{release} + +%description +This is a %{type} service plugin for Openstack Neutron (Networking) service. + + +%package -n python-%{servicename} +Summary: Neutron %{type} Python libraries +Group: Applications/System + +Requires: python-neutron >= %{epoch}:%{version}-%{release} +#for $i in $requires +Requires: ${i} +#end for + +#for $i in $conflicts +Conflicts: ${i} +#end for + + + +%description -n python-%{servicename} +This is a %{type} service plugin for Openstack Neutron (Networking) service. + +This package contains the Neutron %{type} Python library. + + +%package -n python-%{servicename}-tests +Summary: Neutron %{type} tests +Group: Applications/System + +Requires: python-%{servicename} = %{epoch}:%{version}-%{release} + + +%description -n python-%{servicename}-tests +This is a %{type} service plugin for Openstack Neutron (Networking) service. + +This package contains Neutron %{type} test files. + + +%prep +%setup -q -n %{python_name}-%{os_version} + +#for $idx, $fn in enumerate($patches) +%patch$idx -p1 +#end for + +%build +#export PBR_VERSION=%{version} +#export SKIP_PIP_INSTALL=1 +%{__python} setup.py build + + +%install +#export PBR_VERSION=%{version} +#export SKIP_PIP_INSTALL=1 +%{__python} setup.py install -O1 --skip-build --root %{buildroot} + +# Move rootwrap files to proper location +install -d -m 755 %{buildroot}%{_datarootdir}/neutron/rootwrap +mv %{buildroot}/usr/etc/neutron/rootwrap.d/*.filters %{buildroot}%{_datarootdir}/neutron/rootwrap + +%if ! 0%{?usr_only} +# Move config files to proper location +install -d -m 755 %{buildroot}%{_sysconfdir}/neutron +mv %{buildroot}/usr/etc/neutron/*.ini %{buildroot}%{_sysconfdir}/neutron +mv %{buildroot}/usr/etc/neutron/*.conf %{buildroot}%{_sysconfdir}/neutron + +# Install init scripts +%if ! (0%{?rhel} > 6) +install -p -D -m 644 %{SOURCE10} %{buildroot}%{_initrddir}/%{servicename}-agent +install -p -D -m 644 %{SOURCE11} %{buildroot}%{_initrddir}/%{servicename}v2-agent +%else +install -p -D -m 644 %{SOURCE10} %{buildroot}%{_unitdir}/%{servicename}-agent.service +install -p -D -m 644 %{SOURCE11} %{buildroot}%{_unitdir}/%{servicename}v2-agent.service +%endif + +# Create configuration directories that can be populated by users with custom *.conf files +mkdir -p %{buildroot}/%{_sysconfdir}/neutron/conf.d/%{servicename}-agent +mkdir -p %{buildroot}/%{_sysconfdir}/neutron/conf.d/%{servicename}v2-agent + +# Make sure neutron-server loads new configuration file +mkdir -p %{buildroot}/%{_datadir}/neutron/server +ln -s %{_sysconfdir}/neutron/%{modulename}.conf %{buildroot}%{_datadir}/neutron/server/%{modulename}.conf +%endif + + +%if ! 0%{?usr_only} +#set $daemon_map = {"": ["neutron-lbaas-agent","neutron-lbaasv2-agent"]} +#for $key, $value in $daemon_map.iteritems() +#set $daemon_list = " ".join($value) if $value else $key +%if 0%{?rhel} > 6 +%post $key +if [ \$1 -eq 1 ] ; then + # Initial installation + for svc in $daemon_list; do + /usr/bin/systemctl preset openstack-\${svc}.service + done +fi +%endif + +%preun $key +if [ \$1 -eq 0 ] ; then + for svc in $daemon_list; do +%if ! (0%{?rhel} > 6) + /sbin/service openstack-\${svc} stop &>/dev/null + /sbin/chkconfig --del openstack-\${svc} +%else + /usr/bin/systemctl --no-reload disable openstack-\${svc}.service > /dev/null 2>&1 || : + /usr/bin/systemctl stop openstack-\${svc}.service > /dev/null 2>&1 || : +%endif + done + exit 0 +fi + +#end for +%endif + +%files +%license LICENSE +%doc AUTHORS CONTRIBUTING.rst README.rst +%{_bindir}/%{servicename}-agent +%{_bindir}/%{servicename}v2-agent +%{_datarootdir}/neutron/rootwrap/lbaas-haproxy.filters + + +%if ! 0%{?usr_only} +%config(noreplace) %attr(0640, root, neutron) %{_sysconfdir}/neutron/lbaas_agent.ini +%config(noreplace) %attr(0640, root, neutron) %{_sysconfdir}/neutron/neutron_lbaas.conf +%config(noreplace) %attr(0640, root, neutron) %{_sysconfdir}/neutron/services_lbaas.conf +%dir %{_sysconfdir}/neutron/conf.d +%dir %{_sysconfdir}/neutron/conf.d/%{servicename}-agent +%dir %{_sysconfdir}/neutron/conf.d/%{servicename}v2-agent +%{_datadir}/neutron/server/%{modulename}.conf + +%if ! (0%{?rhel} > 6) +%{_initrddir}/%{servicename}-agent +%{_initrddir}/%{servicename}v2-agent +%else +%{_unitdir}/%{servicename}-agent.service +%{_unitdir}/%{servicename}v2-agent.service +%endif +%endif + + +%files -n python-%{servicename} +%{python_sitelib}/%{modulename} +%{python_sitelib}/%{modulename}-%{version}-py%{python2_version}.egg-info +%exclude %{python_sitelib}/%{modulename}/tests + + +%files -n python-%{servicename}-tests +%{python_sitelib}/%{modulename}/tests + + +%changelog diff --git a/conf/templates/packaging/specs/openstack-neutron-vpnaas.spec b/conf/templates/packaging/specs/openstack-neutron-vpnaas.spec new file mode 100644 index 00000000..d3fc6b79 --- /dev/null +++ b/conf/templates/packaging/specs/openstack-neutron-vpnaas.spec @@ -0,0 +1,194 @@ +%global modulename neutron_vpnaas +%global servicename neutron-vpn +%global type VPNaaS +%global python_name neutron-vpnaas +%global daemon_prefix neutron-vpn +%global os_version ${version} +%global no_tests $no_tests +%global tests_data_dir %{_datarootdir}/%{python_name}-tests + +%if ! (0%{?fedora} > 12 || 0%{?rhel} > 6) +%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")} +%endif + +Name: openstack-%{python_name} +Version: %{os_version}$version_suffix +Release: $release%{?dist} +Epoch: $epoch +Summary: Openstack Networking %{type} plugin + +License: ASL 2.0 +URL: http://launchpad.net/neutron/ +Source0: %{python_name}-%{os_version}.tar.gz + +%if ! (0%{?rhel} > 6) +Source10: openstack-neutron-vpn-agent.init +%else +Source10: openstack-neutron-vpn-agent.service +%endif + +#for $idx, $fn in enumerate($patches) +Patch$idx: $fn +#end for + +Obsoletes: openstack-neutron-vpn-agent < %{version} +Provides: openstack-neutron-vpn-agent = %{epoch}:%{version}-%{release} + +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release} + +BuildArch: noarch +BuildRequires: python2-devel +BuildRequires: python-pbr +BuildRequires: python-setuptools + +Requires: python-%{python_name} = %{epoch}:%{version}-%{release} +Requires: openstack-neutron >= %{epoch}:%{version}-%{release} + +%description +This is a %{type} service plugin for Openstack Neutron (Networking) service. + + +%package -n python-%{python_name} +Summary: Neutron %{type} Python libraries +Group: Applications/System + +Requires: python-neutron >= %{epoch}:%{version}-%{release} +#for $i in $requires +Requires: ${i} +#end for + +#for $i in $conflicts +Conflicts: ${i} +#end for + +%description -n python-%{python_name} +This is a %{type} service plugin for Openstack Neutron (Networking) service. + +This package contains the Neutron %{type} Python library. + + +%package -n python-%{python_name}-tests +Summary: Neutron %{type} tests +Group: Applications/System + +Requires: python-%{python_name} = %{epoch}:%{version}-%{release} + + +%description -n python-%{python_name}-tests +This is a %{type} service plugin for Openstack Neutron (Networking) service. + +This package contains Neutron %{type} test files. + + +%prep +%setup -q -n %{python_name}-%{os_version} + +#for $idx, $fn in enumerate($patches) +%patch$idx -p1 +#end for + +%build +#export PBR_VERSION=%{version} +#export SKIP_PIP_INSTALL=1 +%{__python} setup.py build + + +%install +#export PBR_VERSION=%{version} +#export SKIP_PIP_INSTALL=1 +%{__python} setup.py install -O1 --skip-build --root %{buildroot} + +# Move rootwrap files to proper location +install -d -m 755 %{buildroot}%{_datarootdir}/neutron/rootwrap +mv %{buildroot}/usr/etc/neutron/rootwrap.d/*.filters %{buildroot}%{_datarootdir}/neutron/rootwrap + +%if ! 0%{?usr_only} +# Move config files to proper location +install -d -m 755 %{buildroot}%{_sysconfdir}/neutron +mv %{buildroot}/usr/etc/neutron/*.ini %{buildroot}%{_sysconfdir}/neutron +mv %{buildroot}/usr/etc/neutron/*.conf %{buildroot}%{_sysconfdir}/neutron + +# Install init scripts +%if ! (0%{?rhel} > 6) +install -p -D -m 644 %{SOURCE10} %{buildroot}%{_initrddir}/openstack-%{servicename}-agent +%else +install -p -D -m 644 %{SOURCE10} %{buildroot}%{_unitdir}/openstack-%{servicename}-agent.service +%endif + +# Create and populate distribution configuration directory for VPN agent +# (the same as for L3 agent) +mkdir -p %{buildroot}%{_datadir}/neutron/l3_agent +ln -s %{_sysconfdir}/neutron/vpn_agent.ini %{buildroot}%{_datadir}/neutron/l3_agent/vpn_agent.conf + +# Create configuration directory that can be populated by users with custom *.conf files +mkdir -p %{buildroot}/%{_sysconfdir}/neutron/conf.d/neutron-vpn-agent + +# Make sure neutron-server loads new configuration file +mkdir -p %{buildroot}/%{_datadir}/neutron/server +ln -s %{_sysconfdir}/neutron/%{modulename}.conf %{buildroot}%{_datadir}/neutron/server/%{modulename}.conf +%endif + +%if ! 0%{?usr_only} +#set $daemon_map = {"": ["neutron-vpn-agent"]} +#for $key, $value in $daemon_map.iteritems() +#set $daemon_list = " ".join($value) if $value else $key +%if 0%{?rhel} > 6 +%post $key +if [ \$1 -eq 1 ] ; then + # Initial installation + for svc in $daemon_list; do + /usr/bin/systemctl preset openstack-\${svc}.service + done +fi +%endif + +%preun $key +if [ \$1 -eq 0 ] ; then + for svc in $daemon_list; do +%if ! (0%{?rhel} > 6) + /sbin/service openstack-\${svc} stop &>/dev/null + /sbin/chkconfig --del openstack-\${svc} +%else + /usr/bin/systemctl --no-reload disable openstack-\${svc}.service > /dev/null 2>&1 || : + /usr/bin/systemctl stop openstack-\${svc}.service > /dev/null 2>&1 || : +%endif + done + exit 0 +fi + +#end for +%endif + +%files +%license LICENSE +%doc AUTHORS CONTRIBUTING.rst README.rst +%{_bindir}/neutron-vpn-agent +%{_bindir}/neutron-vpn-netns-wrapper +%{_datarootdir}/neutron/rootwrap/vpnaas.filters + +%if ! 0%{?usr_only} +%config(noreplace) %attr(0640, root, neutron) %{_sysconfdir}/neutron/vpn_agent.ini +%config(noreplace) %attr(0640, root, neutron) %{_sysconfdir}/neutron/neutron_vpnaas.conf +%dir %{_sysconfdir}/neutron/conf.d +%dir %{_sysconfdir}/neutron/conf.d/neutron-vpn-agent +%{_datadir}/neutron/l3_agent/*.conf +%{_datadir}/neutron/server/%{modulename}.conf + +%if ! (0%{?rhel} > 6) +%{_initrddir}/openstack-neutron-vpn-agent +%else +%{_unitdir}/openstack-neutron-vpn-agent.service +%endif +%endif + +%files -n python-%{python_name} +%{python_sitelib}/%{modulename} +%{python_sitelib}/%{modulename}-%{version}-py%{python2_version}.egg-info +%exclude %{python_sitelib}/%{modulename}/tests + + +%files -n python-%{python_name}-tests +%{python_sitelib}/%{modulename}/tests + + +%changelog diff --git a/conf/templates/packaging/specs/openstack-neutron.spec b/conf/templates/packaging/specs/openstack-neutron.spec index 31006ef3..bf6a94f9 100644 --- a/conf/templates/packaging/specs/openstack-neutron.spec +++ b/conf/templates/packaging/specs/openstack-neutron.spec @@ -36,46 +36,66 @@ Source2: neutron-sudoers Source10: neutron-server.init Source11: neutron-linuxbridge-agent.init Source12: neutron-openvswitch-agent.init +#if $older_than('2015.1') Source13: neutron-ryu-agent.init +#end if Source14: neutron-nec-agent.init Source15: neutron-dhcp-agent.init Source16: neutron-l3-agent.init Source17: neutron-ovs-cleanup.init +#if $older_than('2015.1') Source18: neutron-hyperv-agent.init +#end if #if $older_than('2014.2') Source19: neutron-rpc-zmq-receiver.init #end if Source20: neutron-metadata-agent.init #if $newer_than('2014.2') +#if $older_than('2015.1') Source21: neutron-lbaas-agent.init +#end if Source22: neutron-mlnx-agent.init +#if $older_than('2015.1') Source23: neutron-vpn-agent.init +#end if Source24: neutron-metering-agent.init Source25: neutron-sriov-nic-agent.init +#if $older_than('2015.1') Source26: neutron-cisco-cfg-agent.init +#end if Source27: neutron-netns-cleanup.init #end if %else Source10: neutron-server.service Source11: neutron-linuxbridge-agent.service Source12: neutron-openvswitch-agent.service +#if $older_than('2015.1') Source13: neutron-ryu-agent.service +#end if Source14: neutron-nec-agent.service Source15: neutron-dhcp-agent.service Source16: neutron-l3-agent.service Source17: neutron-ovs-cleanup.service +#if $older_than('2015.1') Source18: neutron-hyperv-agent.service +#end if #if $older_than('2014.2') Source19: neutron-rpc-zmq-receiver.service #end if Source20: neutron-metadata-agent.service #if $newer_than('2014.2') +#if $older_than('2015.1') Source21: neutron-lbaas-agent.service +#end if Source22: neutron-mlnx-agent.service +#if $older_than('2015.1') Source23: neutron-vpn-agent.service +#end if Source24: neutron-metering-agent.service Source25: neutron-sriov-nic-agent.service +#if $older_than('2015.1') Source26: neutron-cisco-cfg-agent.service +#end if Source27: neutron-netns-cleanup.service #end if %endif @@ -144,6 +164,20 @@ networks. This package contains the neutron Python library. +#if $newer_than_eq('2015.1') +%package -n openstack-neutron-common +Summary: Neutron common files +Group: Applications/System + +Requires: python-neutron = %{epoch}:%{version}-%{release} + + +%description -n openstack-neutron-common +Neutron provides an API to dynamically request and configure virtual +networks. + +This package contains Neutron common files. +#end if %package -n openstack-neutron-bigswitch Summary: Neutron Big Switch plugin @@ -152,8 +186,12 @@ Group: Applications/System Provides: openstack-neutron-bigswitch = %{epoch}:%{version}-%{release} Obsoletes: openstack-quantum-bigswitch < %{epoch}:%{version}-%{release} +#if $older_than('2015.1') Requires: openstack-neutron = %{epoch}:%{version}-%{release} - +#end if +#if $newer_than_eq('2015.1') +Requires: openstack-neutron-common = %{epoch}:%{version}-%{release} +#end if %description -n openstack-neutron-bigswitch Neutron provides an API to dynamically request and configure virtual @@ -172,7 +210,12 @@ Provides: openstack-neutron-brocade = %{epoch}:%{version}-%{release} Obsoletes: openstack-quantum-brocade < %{epoch}:%{version}-%{release} +#if $older_than('2015.1') Requires: openstack-neutron = %{epoch}:%{version}-%{release} +#end if +#if $newer_than_eq('2015.1') +Requires: openstack-neutron-common = %{epoch}:%{version}-%{release} +#end if %description -n openstack-neutron-brocade @@ -182,7 +225,6 @@ networks. This package contains the neutron plugin that implements virtual networks using Brocade VCS switches running NOS. - %package -n openstack-neutron-cisco Summary: Neutron Cisco plugin Group: Applications/System @@ -190,7 +232,12 @@ Group: Applications/System Provides: openstack-neutron-cisco = %{epoch}:%{version}-%{release} Obsoletes: openstack-quantum-cisco < %{epoch}:%{version}-%{release} +#if $older_than('2015.1') Requires: openstack-neutron = %{epoch}:%{version}-%{release} +#end if +#if $newer_than_eq('2015.1') +Requires: openstack-neutron-common = %{epoch}:%{version}-%{release} +#end if Requires: python-configobj @@ -201,7 +248,6 @@ networks. This package contains the neutron plugin that implements virtual networks using Cisco UCS and Nexus. - #if $newer_than_eq('2014.1') %package -n openstack-neutron-embrane Summary: Neutron Embrane plugin @@ -210,7 +256,12 @@ Group: Applications/System Provides: openstack-neutron-embrane = %{epoch}:%{version}-%{release} Obsoletes: openstack-quantum-embrane < %{epoch}:%{version}-%{release} +#if $older_than('2015.1') Requires: openstack-neutron = %{epoch}:%{version}-%{release} +#end if +#if $newer_than_eq('2015.1') +Requires: openstack-neutron-common = %{epoch}:%{version}-%{release} +#end if Requires: python-configobj @@ -222,7 +273,8 @@ This package contains the neutron plugin that implements virtual networks using Embrane heleos platform. #end if - +#Upstream bascially rm -rf's this directory now... excuding going forward +#if $newer_than_eq('2015.1') %package -n openstack-neutron-hyperv Summary: Neutron Hyper-V plugin Group: Applications/System @@ -230,7 +282,12 @@ Group: Applications/System Provides: openstack-neutron-hyperv = %{epoch}:%{version}-%{release} Obsoletes: openstack-quantum-hyperv < %{epoch}:%{version}-%{release} +#if $older_than('2015.1') Requires: openstack-neutron = %{epoch}:%{version}-%{release} +#end if +#if $newer_than_eq('2015.1') +Requires: openstack-neutron-common = %{epoch}:%{version}-%{release} +#end if %description -n openstack-neutron-hyperv @@ -239,6 +296,7 @@ networks. This package contains the neutron plugin that implements virtual networks using Microsoft Hyper-V. +#end if #if $newer_than_eq('2014.1.b1') %package -n openstack-neutron-ibm @@ -267,7 +325,12 @@ Provides: openstack-neutron-linuxbridge = %{epoch}:%{version}-%{release} Obsoletes: openstack-quantum-linuxbridge < %{epoch}:%{version}-%{release} Requires: bridge-utils +#if $older_than('2015.1') Requires: openstack-neutron = %{epoch}:%{version}-%{release} +#end if +#if $newer_than_eq('2015.1') +Requires: openstack-neutron-common = %{epoch}:%{version}-%{release} +#end if Requires: python-pyudev @@ -300,7 +363,12 @@ Provides: openstack-neutron-midonet = %{epoch}:%{version}-%{release} Obsoletes: openstack-quantum-midonet < %{epoch}:%{version}-%{release} +#if $older_than('2015.1') Requires: openstack-neutron = %{epoch}:%{version}-%{release} +#end if +#if $newer_than_eq('2015.1') +Requires: openstack-neutron-common = %{epoch}:%{version}-%{release} +#end if %description -n openstack-neutron-midonet @@ -318,7 +386,12 @@ Group: Applications/System Provides: openstack-neutron-ml2 = %{epoch}:%{version}-%{release} Obsoletes: openstack-quantum-ml2 < %{epoch}:%{version}-%{release} +#if $older_than('2015.1') Requires: openstack-neutron = %{epoch}:%{version}-%{release} +#end if +#if $newer_than_eq('2015.1') +Requires: openstack-neutron-common = %{epoch}:%{version}-%{release} +#end if Requires: python-stevedore >= 0.9 @@ -330,18 +403,33 @@ This package contains a neutron plugin that allows the use of drivers to support separately extensible sets of network types and the mechanisms for accessing those types. - +#if $older_than('2015.1') %package -n openstack-neutron-mlnx +#end if +#if $newer_than_eq('2015.1') +%package -n openstack-neutron-mellanox +#end if Summary: Neutron Mellanox plugin Group: Applications/System Provides: openstack-neutron-mlnx = %{epoch}:%{version}-%{release} Obsoletes: openstack-quantum-mlnx < %{epoch}:%{version}-%{release} +#if $older_than('2015.1') Requires: openstack-neutron = %{epoch}:%{version}-%{release} +#end if +#if $newer_than_eq('2015.1') +Requires: openstack-neutron-common = %{epoch}:%{version}-%{release} +#end if +#if $older_than('2015.1') %description -n openstack-neutron-mlnx +#end if +#if $newer_than_eq('2015.1') +%description -n openstack-neutron-mellanox +#end if + Neutron provides an API to dynamically request and configure virtual networks. @@ -357,7 +445,12 @@ Group: Applications/System Provides: openstack-neutron-nicira = %{epoch}:%{version}-%{release} Obsoletes: openstack-quantum-nicira < %{epoch}:%{version}-%{release} +#if $older_than('2015.1') Requires: openstack-neutron = %{epoch}:%{version}-%{release} +#end if +#if $newer_than_eq('2015.1') +Requires: openstack-neutron-common = %{epoch}:%{version}-%{release} +#end if %description -n openstack-neutron-nicira @@ -377,7 +470,12 @@ Group: Applications/System Provides: openstack-neutron-nuage = %{epoch}:%{version}-%{release} Obsoletes: openstack-quantum-nuage < %{epoch}:%{version}-%{release} +#if $older_than('2015.1') Requires: openstack-neutron = %{epoch}:%{version}-%{release} +#end if +#if $newer_than_eq('2015.1') +Requires: openstack-neutron-common = %{epoch}:%{version}-%{release} +#end if Requires: python-configobj @@ -397,7 +495,12 @@ Group: Applications/System Provides: openstack-neutron-ofagent = %{epoch}:%{version}-%{release} -Requires: openstack-neutron = %{epoch}:%{version}-%{release} +#if $older_than('2015.1') +Requires: openstack-neutron = %{epoch}:%{version}-%{release} +#end if +#if $newer_than_eq('2015.1') +Requires: openstack-neutron-common = %{epoch}:%{version}-%{release} +#end if %description -n openstack-neutron-ofagent @@ -413,7 +516,12 @@ networks using ofagent. Summary: Neutron OpenContrail plugin Group: Applications/system -Requires: openstack-neutron = %{epoch}:%{version}-%{release} +#if $older_than('2015.1') +Requires: openstack-neutron = %{epoch}:%{version}-%{release} +#end if +#if $newer_than_eq('2015.1') +Requires: openstack-neutron-common = %{epoch}:%{version}-%{release} +#end if %description -n openstack-neutron-opencontrail @@ -428,7 +536,12 @@ Group: Applications/System Provides: openstack-neutron-openvswitch = %{epoch}:%{version}-%{release} Obsoletes: openstack-quantum-openvswitch < %{epoch}:%{version}-%{release} +#if $older_than('2015.1') Requires: openstack-neutron = %{epoch}:%{version}-%{release} +#end if +#if $newer_than_eq('2015.1') +Requires: openstack-neutron-common = %{epoch}:%{version}-%{release} +#end if Requires: openvswitch @@ -446,7 +559,12 @@ Group: Applications/System Provides: openstack-neutron-oneconvergence-nvsd = %{epoch}:%{version}-%{release} -Requires: openstack-neutron = %{epoch}:%{version}-%{release} +#if $older_than('2015.1') +Requires: openstack-neutron = %{epoch}:%{version}-%{release} +#end if +#if $newer_than_eq('2015.1') +Requires: openstack-neutron-common = %{epoch}:%{version}-%{release} +#end if %description -n openstack-neutron-oneconvergence-nvsd @@ -457,6 +575,22 @@ This package contains the neutron plugin that implements virtual networks using oneconvergence nvsd. #end if +#if $newer_than_eq('2015.1') +%package -n openstack-neutron-ovsvapp +Summary: Neutron OVSvApp vSphere plugin +Group: Applications/System + +Requires: openstack-neutron-common = %{epoch}:%{version}-%{release} + + +%description ovsvapp +Neutron provides an API to dynamically request and configure virtual +networks. + +This package contains the Neutron plugin that implements virtual +networks using OVSvApp vSphere L2 agent. +#end if + %package -n openstack-neutron-plumgrid Summary: Neutron PLUMgrid plugin Group: Applications/System @@ -464,7 +598,12 @@ Group: Applications/System Provides: openstack-neutron-plumgrid = %{epoch}:%{version}-%{release} Obsoletes: openstack-quantum-plumgrid < %{epoch}:%{version}-%{release} +#if $older_than('2015.1') Requires: openstack-neutron = %{epoch}:%{version}-%{release} +#end if +#if $newer_than_eq('2015.1') +Requires: openstack-neutron-common = %{epoch}:%{version}-%{release} +#end if %description -n openstack-neutron-plumgrid @@ -474,7 +613,7 @@ networks. This package contains the neutron plugin that implements virtual networks using the PLUMgrid platform. - +#if $older_than('2015.1') %package -n openstack-neutron-ryu Summary: Neutron Ryu plugin Group: Applications/System @@ -484,20 +623,25 @@ Obsoletes: openstack-quantum-ryu < %{epoch}:%{version}-%{release} Requires: openstack-neutron = %{epoch}:%{version}-%{release} - %description -n openstack-neutron-ryu Neutron provides an API to dynamically request and configure virtual networks. This package contains the neutron plugin that implements virtual networks using the Ryu Network Operating System. +#end if #if $newer_than('2014.2') %package -n openstack-neutron-sriov-nic-agent Summary: Neutron SR-IOV NIC agent Group: Applications/system -Requires: openstack-neutron = %{epoch}:%{version}-%{release} +#if $older_than('2015.1') +Requires: openstack-neutron = %{epoch}:%{version}-%{release} +#end if +#if $newer_than_eq('2015.1') +Requires: openstack-neutron-common = %{epoch}:%{version}-%{release} +#end if %description -n openstack-neutron-sriov-nic-agent @@ -514,7 +658,12 @@ Group: Applications/System Provides: openstack-neutron-nec = %{epoch}:%{version}-%{release} Obsoletes: openstack-quantum-nec < %{epoch}:%{version}-%{release} +#if $older_than('2015.1') Requires: openstack-neutron = %{epoch}:%{version}-%{release} +#end if +#if $newer_than_eq('2015.1') +Requires: openstack-neutron-common = %{epoch}:%{version}-%{release} +#end if %description -n openstack-neutron-nec @@ -532,8 +681,12 @@ Group: Applications/System Provides: openstack-neutron-metaplugin = %{epoch}:%{version}-%{release} Obsoletes: openstack-quantum-metaplugin < %{epoch}:%{version}-%{release} +#if $older_than('2015.1') Requires: openstack-neutron = %{epoch}:%{version}-%{release} - +#end if +#if $newer_than_eq('2015.1') +Requires: openstack-neutron-common = %{epoch}:%{version}-%{release} +#end if %description -n openstack-neutron-metaplugin Neutron provides an API to dynamically request and configure virtual @@ -547,7 +700,12 @@ networks using multiple other neutron plugins. Summary: Neutron VMWare NSX support Group: Applications/System -Requires: openstack-neutron = %{epoch}:%{version}-%{release} +#if $older_than('2015.1') +Requires: openstack-neutron = %{epoch}:%{version}-%{release} +#end if +#if $newer_than_eq('2015.1') +Requires: openstack-neutron-common = %{epoch}:%{version}-%{release} +#end if Provides: openstack-neutron-nicira = %{epoch}:%{version}-%{release} Obsoletes: openstack-neutron-nicera < %{epoch}:%{version}-%{release} @@ -559,11 +717,12 @@ This package adds VMWare NSX support for Neutron, #end if #if $newer_than('2014.2') +#if $older_than('2015.1') %package -n openstack-neutron-vpn-agent Summary: Neutron VPNaaS agent Group: Applications/System -Requires: openstack-neutron = %{epoch}:%{version}-%{release} +Requires: openstack-neutron = %{epoch}:%{version}-%{release} %description -n openstack-neutron-vpn-agent Neutron provides an API to implement VPN as a service @@ -571,6 +730,7 @@ Neutron provides an API to implement VPN as a service This package contains the Neutron agent responsible for implementing VPNaaS with IPSec. #end if +#end if %if ! 0%{?no_tests} %package -n python-%{python_name}-tests @@ -581,19 +741,30 @@ Requires: %{name} = %{epoch}:%{version}-%{release} Requires: %{name}-bigswitch = %{epoch}:%{version}-%{release} Requires: %{name}-brocade = %{epoch}:%{version}-%{release} Requires: %{name}-cisco = %{epoch}:%{version}-%{release} +#if $older_than('2015.1') Requires: %{name}-hyperv = %{epoch}:%{version}-%{release} +#end if Requires: %{name}-linuxbridge = %{epoch}:%{version}-%{release} Requires: %{name}-midonet = %{epoch}:%{version}-%{release} Requires: %{name}-nicira = %{epoch}:%{version}-%{release} Requires: %{name}-openvswitch = %{epoch}:%{version}-%{release} Requires: %{name}-plumgrid = %{epoch}:%{version}-%{release} +#if $older_than('2015.1') Requires: %{name}-ryu = %{epoch}:%{version}-%{release} +#end if +#if $newer_than('2015.1') +Requires: %{name}-ofagent = %{epoch}:%{version}-%{release} +#end if Requires: %{name}-nec = %{epoch}:%{version}-%{release} Requires: %{name}-metaplugin = %{epoch}:%{version}-%{release} +#if $older_than('2015.1') Requires: %{name}-mlnx = %{epoch}:%{version}-%{release} +#end if Requires: %{name}-nuage = %{epoch}:%{version}-%{release} -Requires: python-%{python_name} = %{epoch}:%{version}-%{release} - +Requires: python-neutron = %{epoch}:%{version}-%{release} +#if $newer_than_eq('2015.1') +Requires: python-neutron-common = %{epoch}:%{version}-%{release} +#end if # Test requirements: #for $i in $test_requires Requires: ${i} @@ -683,46 +854,62 @@ install -p -D -m 440 %{SOURCE2} %{buildroot}%{_sysconfdir}/sudoers.d/neutron install -p -D -m 755 %{SOURCE10} %{buildroot}%{_initrddir}/%{daemon_prefix}-server install -p -D -m 755 %{SOURCE11} %{buildroot}%{_initrddir}/%{daemon_prefix}-linuxbridge-agent install -p -D -m 755 %{SOURCE12} %{buildroot}%{_initrddir}/%{daemon_prefix}-openvswitch-agent +#if $older_than('2015.1') install -p -D -m 755 %{SOURCE13} %{buildroot}%{_initrddir}/%{daemon_prefix}-ryu-agent +#end if install -p -D -m 755 %{SOURCE14} %{buildroot}%{_initrddir}/%{daemon_prefix}-nec-agent install -p -D -m 755 %{SOURCE15} %{buildroot}%{_initrddir}/%{daemon_prefix}-dhcp-agent install -p -D -m 755 %{SOURCE16} %{buildroot}%{_initrddir}/%{daemon_prefix}-l3-agent install -p -D -m 755 %{SOURCE17} %{buildroot}%{_initrddir}/%{daemon_prefix}-ovs-cleanup +#if $older_than('2015.1') install -p -D -m 755 %{SOURCE18} %{buildroot}%{_initrddir}/%{daemon_prefix}-hyperv-agent +#end if #if $older_than('2014.2') install -p -D -m 755 %{SOURCE19} %{buildroot}%{_initrddir}/%{daemon_prefix}-rpc-zmq-receiver #end if install -p -D -m 755 %{SOURCE20} %{buildroot}%{_initrddir}/%{daemon_prefix}-metadata-agent #if $newer_than('2014.2') +#if $older_than('2015.1') install -p -D -m 755 %{SOURCE21} %{buildroot}%{_initrddir}/%{daemon_prefix}-lbaas-agent -install -p -D -m 755 %{SOURCE22} %{buildroot}%{_initrddir}/%{daemon_prefix}-mlnx-agent install -p -D -m 755 %{SOURCE23} %{buildroot}%{_initrddir}/%{daemon_prefix}-vpn-agent +#end if +install -p -D -m 755 %{SOURCE22} %{buildroot}%{_initrddir}/%{daemon_prefix}-mlnx-agent install -p -D -m 755 %{SOURCE24} %{buildroot}%{_initrddir}/%{daemon_prefix}-metering-agent install -p -D -m 755 %{SOURCE25} %{buildroot}%{_initrddir}/%{daemon_prefix}-sriov-nic-agent +#if $older_than('2015.1') install -p -D -m 755 %{SOURCE26} %{buildroot}%{_initrddir}/%{daemon_prefix}-cisco-cfg-agent +#end if install -p -D -m 755 %{SOURCE27} %{buildroot}%{_initrddir}/%{daemon_prefix}-netns-cleanup #end if %else install -p -D -m 755 %{SOURCE10} %{buildroot}%{_unitdir}/%{daemon_prefix}-server.service install -p -D -m 755 %{SOURCE11} %{buildroot}%{_unitdir}/%{daemon_prefix}-linuxbridge-agent.service install -p -D -m 755 %{SOURCE12} %{buildroot}%{_unitdir}/%{daemon_prefix}-openvswitch-agent.service +#if $older_than('2015.1') install -p -D -m 755 %{SOURCE13} %{buildroot}%{_unitdir}/%{daemon_prefix}-ryu-agent.service +#end if install -p -D -m 755 %{SOURCE14} %{buildroot}%{_unitdir}/%{daemon_prefix}-nec-agent.service install -p -D -m 755 %{SOURCE15} %{buildroot}%{_unitdir}/%{daemon_prefix}-dhcp-agent.service install -p -D -m 755 %{SOURCE16} %{buildroot}%{_unitdir}/%{daemon_prefix}-l3-agent.service install -p -D -m 755 %{SOURCE17} %{buildroot}%{_unitdir}/%{daemon_prefix}-ovs-cleanup.service +#if $older_than('2015.1') install -p -D -m 755 %{SOURCE18} %{buildroot}%{_unitdir}/%{daemon_prefix}-hyperv-agent.service +#end if #if $older_than('2014.2') install -p -D -m 755 %{SOURCE19} %{buildroot}%{_unitdir}/%{daemon_prefix}-rpc-zmq-receiver.service #end if install -p -D -m 755 %{SOURCE20} %{buildroot}%{_unitdir}/%{daemon_prefix}-metadata-agent.service #if $newer_than('2014.2') +#if $older_than('2015.1') install -p -D -m 755 %{SOURCE21} %{buildroot}%{_unitdir}/%{daemon_prefix}-lbaas-agent.service -install -p -D -m 755 %{SOURCE22} %{buildroot}%{_unitdir}/%{daemon_prefix}-mlnx-agent.service install -p -D -m 755 %{SOURCE23} %{buildroot}%{_unitdir}/%{daemon_prefix}-vpn-agent.service +#end if +install -p -D -m 755 %{SOURCE22} %{buildroot}%{_unitdir}/%{daemon_prefix}-mlnx-agent.service install -p -D -m 755 %{SOURCE24} %{buildroot}%{_unitdir}/%{daemon_prefix}-metering-agent.service install -p -D -m 755 %{SOURCE25} %{buildroot}%{_unitdir}/%{daemon_prefix}-sriov-nic-agent.service +#if $older_than('2015.1') install -p -D -m 755 %{SOURCE26} %{buildroot}%{_unitdir}/%{daemon_prefix}-cisco-cfg-agent.service +#end if install -p -D -m 755 %{SOURCE27} %{buildroot}%{_unitdir}/%{daemon_prefix}-netns-cleanup.service #end if %endif @@ -733,6 +920,34 @@ install -d -m 755 %{buildroot}%{_localstatedir}/log/neutron install -d -m 755 %{buildroot}%{_localstatedir}/lock/neutron install -d -m 755 %{buildroot}%{_localstatedir}/run/neutron +#remove hyperv from linux to match upstream +#if $newer_than_eq('2015.1') +rm %{buildroot}/%{_bindir}/neutron-hyperv-agent +#end if + +#if $newer_than_eq('2015.1') +# Create configuration directories for all services that can be populated by users with custom *.conf files +mkdir -p %{buildroot}/%{_sysconfdir}/neutron/conf.d/common + +#raw +# Create and populate configuration directory for L3 agent that is not accessible for user modification +mkdir -p %{buildroot}%{_datadir}/neutron/l3_agent +ln -s %{_sysconfdir}/neutron/l3_agent.ini %{buildroot}%{_datadir}/neutron/l3_agent/l3_agent.conf + +# Create dist configuration directory for neutron-server (may be filled by advanced services) +mkdir -p %{buildroot}%{_datadir}/neutron/server + +# Create configuration directories for all services that can be populated by users with custom *.conf files +mkdir -p %{buildroot}/%{_sysconfdir}/neutron/conf.d/common +for service in server ovs-cleanup netns-cleanup; do + mkdir -p %{buildroot}/%{_sysconfdir}/neutron/conf.d/neutron-$service +done +for service in linuxbridge openvswitch nec dhcp l3 metadata mlnx metering sriov-nic; do + mkdir -p %{buildroot}/%{_sysconfdir}/neutron/conf.d/neutron-$service-agent +done +#end raw +#end if + #raw # Install version info file cat > %{buildroot}%{_sysconfdir}/neutron/release < 6) %{_initrddir}/%{daemon_prefix}-cisco-cfg-agent @@ -955,6 +1249,7 @@ fi %{_unitdir}/%{daemon_prefix}-cisco-cfg-agent.service %endif #end if +#end if %endif #if $newer_than_eq('2014.1.1') @@ -969,7 +1264,7 @@ fi %endif #end if - +#if $older_than('2015.1') %files -n openstack-neutron-hyperv %doc LICENSE %{_bindir}/*-hyperv-agent @@ -985,10 +1280,11 @@ fi %dir %{_sysconfdir}/neutron/plugins/hyperv %config(noreplace) %attr(0640, root, neutron) %{_sysconfdir}/neutron/plugins/hyperv/*.ini %endif +#end if #if $newer_than_eq('2014.1.b1') -%doc LICENSE %files -n openstack-neutron-ibm +%doc LICENSE %doc neutron/plugins/ibm/README %{_bindir}/*-ibm-agent %{python_sitelib}/neutron/plugins/ibm @@ -1050,11 +1346,23 @@ fi %config(noreplace) %attr(0640, root, neutron) %{_sysconfdir}/neutron/plugins/ml2/*.ini %endif +#if $older_than('2015.1') %files -n openstack-neutron-mlnx +#end if +#if $newer_than_eq('2015.1') +%files -n openstack-neutron-mellanox +#end if %doc LICENSE +#if $older_than('2015.1') %doc neutron/plugins/mlnx/README +#end if +#if $newer_than_eq('2015.1') +%doc neutron/plugins/ml2/drivers/mlnx/README +#end if %{_bindir}/*-mlnx-agent +#if $older_than('2015.1') %{python_sitelib}/neutron/plugins/mlnx +#end if %if ! 0%{?usr_only} %dir %{_sysconfdir}/neutron/plugins/mlnx @@ -1067,6 +1375,7 @@ fi %endif #end if %endif +#end if #if $older_than('2014.1') %files -n openstack-neutron-nicira @@ -1097,10 +1406,12 @@ fi #if $newer_than_eq('2014.1.b1') %files -n openstack-neutron-ofagent %doc LICENSE +#if $older_than('2015.1') %{_bindir}/*-ofagent-agent %doc neutron/plugins/ofagent/README %{python_sitelib}/neutron/plugins/ofagent #end if +#end if #if $newer_than('2014.2') %files -n openstack-neutron-opencontrail @@ -1131,7 +1442,9 @@ fi %doc neutron/plugins/openvswitch/README %{_bindir}/*-openvswitch-agent %{_bindir}/*-ovs-cleanup +#if $older_than('2015.1') %{_bindir}/*-rootwrap-xen-dom0 +#end if %{_datarootdir}/neutron/rootwrap/openvswitch-plugin.filters %{python_sitelib}/neutron/plugins/openvswitch @@ -1147,6 +1460,17 @@ fi %config(noreplace) %attr(0640, root, neutron) %{_sysconfdir}/neutron/plugins/openvswitch/*.ini %endif +#if $newer_than_eq('2015.1') +%files -n openstack-neutron-ovsvapp +%license LICENSE +%{_bindir}/neutron-ovsvapp-agent + +%if ! 0%{?usr_only} +%dir %{_sysconfdir}/neutron/plugins/ovsvapp +%config(noreplace) %attr(0640, root, neutron) %{_sysconfdir}/neutron/plugins/ovsvapp/*.ini +%endif +#end if + %files -n openstack-neutron-plumgrid %doc LICENSE %doc neutron/plugins/plumgrid/README @@ -1157,6 +1481,7 @@ fi %config(noreplace) %attr(0640, root, neutron) %{_sysconfdir}/neutron/plugins/plumgrid/*.ini %endif +#if $older_than('2015.1') %files -n openstack-neutron-ryu %doc LICENSE %doc neutron/plugins/ryu/README @@ -1173,6 +1498,7 @@ fi %dir %{_sysconfdir}/neutron/plugins/ryu %config(noreplace) %attr(0640, root, neutron) %{_sysconfdir}/neutron/plugins/ryu/*.ini %endif +#end if #if $newer_than('2014.2') %files -n openstack-neutron-sriov-nic-agent @@ -1208,7 +1534,9 @@ fi #if $newer_than_eq('2014.1.b1') %files -n openstack-neutron-vmware %doc LICENSE +#if $older_than('2015.1') %{_bindir}/neutron*nsx-* +#end if #if $older_than('2014.2') %{_bindir}/*-check-nvp-config #end if @@ -1241,6 +1569,7 @@ fi %endif #if $newer_than('2014.2') +#if $older_than('2015.1') %files -n openstack-neutron-vpn-agent %doc LICENSE %{_bindir}/neutron-vpn-agent @@ -1254,5 +1583,5 @@ fi %endif %endif #end if - +#end if %changelog diff --git a/conf/templates/packaging/specs/python-django-horizon.spec b/conf/templates/packaging/specs/python-django-horizon.spec index 21ecdde4..93aff517 100644 --- a/conf/templates/packaging/specs/python-django-horizon.spec +++ b/conf/templates/packaging/specs/python-django-horizon.spec @@ -56,8 +56,10 @@ BuildRequires: python-netaddr #if $newer_than_eq('2014.2') BuildRequires: python-xstatic BuildRequires: python-xstatic-angular +#if $older_than('2015.1') BuildRequires: python-xstatic-angular-cookies BuildRequires: python-xstatic-angular-mock +#end if BuildRequires: python-xstatic-bootstrap-datepicker BuildRequires: python-xstatic-bootstrap-scss BuildRequires: python-xstatic-d3 @@ -72,6 +74,14 @@ BuildRequires: python-xstatic-jquery-ui BuildRequires: python-xstatic-jsencrypt BuildRequires: python-xstatic-qunit BuildRequires: python-xstatic-rickshaw +#if $newer_than_eq('2015.1') +BuildRequires: python-xstatic-smart-table +BuildRequires: python-xstatic-angular-bootstrap +BuildRequires: python-xstatic-angular-lrdragndrop +BuildRequires: python-xstatic-magic-search +BuildRequires: python-xstatic-term-js +BuildRequires: python-oslo-concurrency +#end if BuildRequires: python-xstatic-spin BuildRequires: python-django-pyscss BuildRequires: python-scss @@ -249,6 +259,13 @@ cp openstack_dashboard/settings.py* tmp_settings/ cp openstack_dashboard/utils/settings.py* tmp_settings/utils/settings.py #raw sed -i -e '/exceptions/d' openstack_dashboard/utils/settings.py +#end raw +#if $newer_than_eq('2015.1') +#raw +sed -i -e '/exc_list/d' openstack_dashboard/utils/settings.py +#end raw +#end if +#raw sed -i -e '/import exceptions/d' -e '/exceptions\.[A-Z][A-Z]/d' openstack_dashboard/settings.py #end raw #end if