4d1410f65bfe40405ed8d0f738e93a28da827692
[openstack-build/neutron-build.git] / centos7 / rpm / SPECS / openstack-neutron.spec
1 %global service neutron
2
3 Name:       openstack-%{service}
4 Version:    7.0.0.0b3
5 Release:    1%{?dist}
6 Epoch:      1
7 Summary:    OpenStack Networking Service
8
9 License:    ASL 2.0
10 URL:        http://launchpad.net/%{service}/
11
12 Source0:    %{service}-%{version}.tar.gz
13 Source1:    %{service}.logrotate
14 Source2:    %{service}-sudoers
15 Source10:   neutron-server.service
16 Source11:   neutron-linuxbridge-agent.service
17 Source12:   neutron-openvswitch-agent.service
18 Source15:   neutron-dhcp-agent.service
19 Source16:   neutron-l3-agent.service
20 Source17:   neutron-metadata-agent.service
21 Source18:   neutron-ovs-cleanup.service
22 Source19:   neutron-mlnx-agent.service
23 Source20:   neutron-metering-agent.service
24 Source21:   neutron-sriov-nic-agent.service
25 Source22:   neutron-netns-cleanup.service
26 Source23:   neutron-netns-cleanup.init
27 Source24:   neutron-ovs-cleanup.init
28 Source28:   neutron-dev-server.service
29 Source29:   neutron-rpc-server.service
30
31 Source31:   conf.README
32
33 BuildArch:  noarch
34
35 BuildRequires:  python2-devel
36 BuildRequires:  python-d2to1
37 BuildRequires:  python-pbr
38 BuildRequires:  python-pecan
39 BuildRequires:  python-setuptools
40 BuildRequires:  systemd-units
41
42 BuildRequires:  git
43
44 Requires:   openstack-%{service}-common = %{epoch}:%{version}-%{release}
45
46 # dnsmasq is not a hard requirement, but is currently the only option
47 # when neutron-dhcp-agent is deployed.
48 Requires:   dnsmasq
49 Requires:   dnsmasq-utils
50
51 # radvd is not a hard requirement, but is currently the only option
52 # for IPv6 deployments.
53 Requires:   radvd
54
55 # dibbler is not a hard requirement, but is currently the default option
56 # for IPv6 prefix delegation.
57 #Requires:  dibbler-client
58
59 # conntrack is not a hard requirement, but is currently used by L3 agent
60 # to immediately drop connections after a floating IP is disassociated
61 Requires:   conntrack-tools
62
63 # keepalived is not a hard requirement, but is currently used by DVR L3
64 # agent
65 Requires:   keepalived
66
67 # those are not hard requirements, but are used to implement firewall
68 # drivers.
69 Requires:   ipset
70 Requires:   iptables
71
72 Requires(pre): shadow-utils
73 Requires(post): systemd
74 Requires(preun): systemd
75 Requires(postun): systemd
76
77 %description
78 Neutron is a virtual network service for Openstack. Just like
79 OpenStack Nova provides an API to dynamically request and configure
80 virtual servers, Neutron provides an API to dynamically request and
81 configure virtual networks. These networks connect "interfaces" from
82 other OpenStack services (e.g., virtual NICs from Nova VMs). The
83 Neutron API supports extensions to provide advanced network
84 capabilities (e.g., QoS, ACLs, network monitoring, etc.)
85
86
87 %package -n python-%{service}
88 Summary:    Neutron Python libraries
89 Requires:   MySQL-python
90 Requires:   python-alembic >= 0.8.0
91 Requires:   python-debtcollector >= 0.3.0
92 Requires:   python-eventlet >= 0.17.4
93 Requires:   python-greenlet >= 0.3.2
94 Requires:   python-httplib2 >= 0.7.5
95 Requires:   python-jinja2 >= 2.6
96 Requires:   python-keystoneclient >= 1:1.6.0
97 Requires:   python-keystonemiddleware >= 2.0.0
98 Requires:   python-netaddr >= 0.7.12
99 Requires:   python-neutronclient >= 2.6.0
100 Requires:   python-novaclient >= 1:2.26.0
101 Requires:   python-oslo-concurrency >= 2.3.0
102 Requires:   python-oslo-config >= 2:2.1.0
103 Requires:   python-oslo-context >= 0.2.0
104 Requires:   python-oslo-db >= 2.0
105 Requires:   python-oslo-i18n >= 1.5.0
106 Requires:   python-oslo-log >= 1.8.0
107 Requires:   python-oslo-messaging >= 1.16.0
108 Requires:   python-oslo-middleware >= 2.4.0
109 Requires:   python-oslo-policy >= 0.5.0
110 Requires:   python-oslo-rootwrap >= 2.0.0
111 Requires:   python-oslo-serialization >= 1.4.0
112 Requires:   python-oslo-service >= 0.6.0
113 Requires:   python-oslo-utils >= 2.0.0
114 Requires:   python-oslo-versionedobjects >= 0.6.0
115 Requires:   python-oslo-context >= 0.2.0
116 Requires:   python-paste
117 Requires:   python-paste-deploy >= 1.5.0
118 Requires:   python-pecan >= 1.0.0
119 Requires:   python-pbr
120 Requires:   python-pyroute2
121 Requires:   python-requests >= 2.5.2
122 Requires:   python-retrying >= 1.2.3
123 Requires:   python-routes >= 1.12.3
124 Requires:   python-six >= 1.9.0
125 Requires:   python-sqlalchemy >= 0.9.7
126 Requires:   python-stevedore >= 1.5.0
127 Requires:   python-webob >= 1.2.3
128 Requires:   python-unicodecsv
129
130
131
132 %description -n python-%{service}
133 Neutron provides an API to dynamically request and configure virtual
134 networks.
135
136 This package contains the Neutron Python library.
137
138
139 %package -n python-%{service}-tests
140 Summary:    Neutron tests
141 Requires:   openstack-%{service} = %{epoch}:%{version}-%{release}
142
143
144 %description -n python-%{service}-tests
145 Neutron provides an API to dynamically request and configure virtual
146 networks.
147
148 This package contains Neutron test files.
149
150
151 %package common
152 Summary:    Neutron common files
153 Requires:   python-%{service} = %{epoch}:%{version}-%{release}
154 Requires:   sudo
155
156
157 %description common
158 Neutron provides an API to dynamically request and configure virtual
159 networks.
160
161 This package contains Neutron common files.
162
163
164 %package bigswitch
165 Summary:    Neutron Big Switch plugin
166 Requires:   openstack-%{service}-common = %{epoch}:%{version}-%{release}
167
168
169 %description bigswitch
170 Neutron provides an API to dynamically request and configure virtual
171 networks.
172
173 This package contains the Neutron plugin that implements virtual
174 networks using the FloodLight Openflow Controller or the Big Switch
175 Networks Controller.
176
177
178 %package brocade
179 Summary:    Neutron Brocade plugin
180 Requires:   openstack-%{service}-common = %{epoch}:%{version}-%{release}
181 Requires:   python-ncclient
182
183
184 %description brocade
185 Neutron provides an API to dynamically request and configure virtual
186 networks.
187
188 This package contains the Neutron plugin that implements virtual
189 networks using Brocade VCS switches running NOS.
190
191
192 %package cisco
193 Summary:    Neutron Cisco plugin
194 Requires:   openstack-%{service}-common = %{epoch}:%{version}-%{release}
195 Requires:   python-ncclient
196
197
198 %description cisco
199 Neutron provides an API to dynamically request and configure virtual
200 networks.
201
202 This package contains the Neutron plugin that implements virtual
203 networks using Cisco UCS and Nexus.
204
205
206 %package dev-server
207 Summary:    Neutron Server (WSGI pecan)
208 Requires:   openstack-%{service}-common = %{epoch}:%{version}-%{release}
209
210
211 %description dev-server
212 Neutron provides an API to dynamically request and configure virtual
213 networks.
214
215 This package contains an alternative Neutron server implementation that uses
216 pecan library as its WSGI backend.
217
218
219 %package embrane
220 Summary:    Neutron Embrane plugin
221 Requires:   openstack-%{service}-common = %{epoch}:%{version}-%{release}
222
223
224 %description embrane
225 Neutron provides an API to dynamically request and configure virtual
226 networks.
227
228 This package contains the Neutron plugin that implements virtual
229 L3-L7 network services using Embrane's heleos platform.
230
231
232 %package linuxbridge
233 Summary:    Neutron linuxbridge plugin
234 Requires:   bridge-utils
235 Requires:   openstack-%{service}-common = %{epoch}:%{version}-%{release}
236
237
238 %description linuxbridge
239 Neutron provides an API to dynamically request and configure virtual
240 networks.
241
242 This package contains the Neutron plugin that implements virtual
243 networks as VLANs using Linux bridging.
244
245
246 %package mellanox
247 Summary:    Neutron Mellanox plugin
248 Requires:   openstack-%{service}-common = %{epoch}:%{version}-%{release}
249
250
251 %description mellanox
252 This plugin implements Neutron v2 APIs with support for Mellanox embedded
253 switch functionality as part of the VPI (Ethernet/InfiniBand) HCA.
254
255
256 %package midonet
257 Summary:    Neutron MidoNet plugin
258 Requires:   openstack-%{service}-common = %{epoch}:%{version}-%{release}
259
260
261 %description midonet
262 Neutron provides an API to dynamically request and configure virtual
263 networks.
264
265 This package contains the Neutron plugin that implements virtual
266 networks using MidoNet from Midokura.
267
268
269 %package ml2
270 Summary:    Neutron ML2 plugin
271 Requires:   openstack-%{service}-common = %{epoch}:%{version}-%{release}
272 # needed for brocade and cisco drivers
273 Requires:   python-ncclient
274
275
276 %description ml2
277 Neutron provides an API to dynamically request and configure virtual
278 networks.
279
280 This package contains a Neutron plugin that allows the use of drivers
281 to support separately extensible sets of network types and the mechanisms
282 for accessing those types.
283
284
285 %package nuage
286 Summary:    Neutron Nuage plugin
287 Requires:   openstack-%{service}-common = %{epoch}:%{version}-%{release}
288
289
290 %description nuage
291 This plugin implements Neutron v2 APIs with support for Nuage Networks
292 Virtual Service Platform (VSP).
293
294
295 %package ofagent
296 Summary:    Neutron ofagent plugin from ryu project
297 Requires:   openstack-%{service}-common = %{epoch}:%{version}-%{release}
298
299
300 %description ofagent
301 This plugin implements Neutron v2 APIs with support for the ryu ofagent
302 plugin.
303
304
305 %package oneconvergence-nvsd
306 Summary:    Neutron One Convergence NVSD plugin
307 Requires:   openstack-%{service}-common = %{epoch}:%{version}-%{release}
308
309
310 %description oneconvergence-nvsd
311 Neutron provides an API to dynamnically request and configure virtual
312 networks.
313
314 This package contains the Neutron plugin that implements virtual
315 networks using One Convergence NVSD
316
317
318 %package opencontrail
319 Summary:    Neutron OpenContrail plugin
320 Requires:   openstack-%{service}-common = %{epoch}:%{version}-%{release}
321
322
323 %description opencontrail
324 This plugin implements Neutron v2 APIs with support for the OpenContrail
325 plugin.
326
327
328 %package openvswitch
329 Summary:    Neutron openvswitch plugin
330 Requires:   openstack-%{service}-common = %{epoch}:%{version}-%{release}
331 # We require openvswitch when using vsctl to access ovsdb;
332 # but if we use native access, then we just need python bindings.
333 # since we don't know what users actually use, we depend on both.
334 Requires:   openvswitch
335 Requires:   python-openvswitch
336
337
338 %description openvswitch
339 Neutron provides an API to dynamically request and configure virtual
340 networks.
341
342 This package contains the Neutron plugin that implements virtual
343 networks using Open vSwitch.
344
345
346 %package ovsvapp
347 Summary:    Neutron OVSvApp vSphere plugin
348 Requires:   openstack-%{service}-common = %{epoch}:%{version}-%{release}
349
350
351 %description ovsvapp
352 Neutron provides an API to dynamically request and configure virtual
353 networks.
354
355 This package contains the Neutron plugin that implements virtual
356 networks using OVSvApp vSphere L2 agent.
357
358
359 %package metering-agent
360 Summary:    Neutron bandwidth metering agent
361 Requires:   openstack-%{service}-common = %{epoch}:%{version}-%{release}
362
363
364 %description metering-agent
365 Neutron provides an API to measure bandwidth utilization
366
367 This package contains the Neutron agent responsible for generating bandwidth
368 utilization notifications.
369
370
371 %package rpc-server
372 Summary:    Neutron (RPC only) Server
373 Requires:   openstack-%{service}-common = %{epoch}:%{version}-%{release}
374
375
376 %description rpc-server
377 Neutron provides an API to dynamically request and configure virtual
378 networks.
379
380 This package contains an alternative Neutron server that handles AMQP RPC
381 workload only.
382
383
384 %package sriov-nic-agent
385 Summary:    Neutron SR-IOV NIC agent
386 Requires:   openstack-%{service}-common = %{epoch}:%{version}-%{release}
387
388
389 %description sriov-nic-agent
390 Neutron allows to run virtual instances using SR-IOV NIC hardware
391
392 This package contains the Neutron agent to support advanced features of
393 SR-IOV network cards.
394
395
396 %package doc
397 Summary:    Documentation for OpenStack Neutron
398 Group:      Documentation
399
400 BuildRequires:  python-sphinx
401 BuildRequires:  python-oslo-sphinx
402 BuildRequires:  python-alembic >= 0.8.0
403 BuildRequires:  python-debtcollector >= 0.3.0
404 BuildRequires:  python-eventlet >= 0.17.4
405 BuildRequires:  python-greenlet >= 0.3.2
406 BuildRequires:  python-httplib2 >= 0.7.5
407 BuildRequires:  python-jinja2 >= 2.6
408 BuildRequires:  python-keystoneclient >= 1:1.6.0
409 BuildRequires:  python-keystonemiddleware >= 2.0.0
410 BuildRequires:  python-netaddr >= 0.7.12
411 BuildRequires:  python-neutronclient >= 2.6.0
412 BuildRequires:  python-novaclient >= 1:2.26.0
413 BuildRequires:  python-oslo-concurrency >= 2.3.0
414 BuildRequires:  python-oslo-config >= 2:2.1.0
415 BuildRequires:  python-oslo-context >= 0.2.0
416 BuildRequires:  python-oslo-db >= 2.0
417 BuildRequires:  python-oslo-i18n >= 1.5.0
418 BuildRequires:  python-oslo-log >= 1.8.0
419 BuildRequires:  python-oslo-messaging >= 1.16.0
420 BuildRequires:  python-oslo-middleware >= 2.4.0
421 BuildRequires:  python-oslo-policy >= 0.5.0
422 BuildRequires:  python-oslo-rootwrap >= 2.0.0
423 BuildRequires:  python-oslo-serialization >= 1.4.0
424 BuildRequires:  python-oslo-service >= 0.6.0
425 BuildRequires:  python-oslo-utils >= 2.0.0
426 BuildRequires:  python-oslo-versionedobjects >= 0.6.0
427 BuildRequires:  python-oslo-context >= 0.2.0
428 BuildRequires:  python-paste
429 BuildRequires:  python-paste-deploy >= 1.5.0
430 BuildRequires:  python-pecan >= 1.0.0
431 BuildRequires:  python-pbr
432 BuildRequires:  python-pyroute2
433 BuildRequires:  python-requests >= 2.5.2
434 BuildRequires:  python-retrying >= 1.2.3
435 BuildRequires:  python-routes >= 1.12.3
436 BuildRequires:  python-six >= 1.9.0
437 BuildRequires:  python-sqlalchemy >= 0.9.7
438 BuildRequires:  python-stevedore >= 1.5.0
439 BuildRequires:  python-webob >= 1.2.3
440 BuildRequires:  python-testresources
441 BuildRequires:  python-testscenarios
442 BuildRequires:  python-oslotest
443
444 %description doc
445 Documentation for Openstack Neutron.
446
447
448 %prep
449 %autosetup -n %{service}-%{version} -S git
450
451 find %{service} -name \*.py -exec sed -i '/\/usr\/bin\/env python/{d;q}' {} +
452
453 # Let's handle dependencies ourseleves
454 rm -f requirements.txt
455
456 # Kill egg-info in order to generate new SOURCES.txt
457 rm -rf neutron.egg-info
458
459 %build
460 export SKIP_PIP_INSTALL=1
461 %{__python2} setup.py build
462
463 %install
464 # pbr does not like dashes in version strings, neither it likes fc* prefixes (dev* is fine)
465 #export PBR_VERSION=%{version}.%(echo %{release} | sed 's/%{?dist}//')
466 %{__python2} setup.py install -O1 --skip-build --root %{buildroot}
467
468 # Remove unused files
469 rm -rf %{buildroot}%{python2_sitelib}/bin
470 rm -rf %{buildroot}%{python2_sitelib}/doc
471 rm -rf %{buildroot}%{python2_sitelib}/tools
472 rm %{buildroot}/usr/etc/init.d/neutron-server
473
474 # Build HTML docs
475 export PYTHONPATH="$( pwd ):$PYTHONPATH"
476 sphinx-build -b html doc/source html
477
478 # Fix hidden-file-or-dir warnings
479 rm -fr html/.doctrees html/.buildinfo
480
481 # Move rootwrap files to proper location
482 install -d -m 755 %{buildroot}%{_datarootdir}/%{service}/rootwrap
483 mv %{buildroot}/usr/etc/%{service}/rootwrap.d/*.filters %{buildroot}%{_datarootdir}/%{service}/rootwrap
484
485 # Move config files to proper location
486 install -d -m 755 %{buildroot}%{_sysconfdir}/%{service}
487 mv %{buildroot}/usr/etc/%{service}/* %{buildroot}%{_sysconfdir}/%{service}
488 mv %{buildroot}%{_sysconfdir}/%{service}/api-paste.ini %{buildroot}%{_datadir}/%{service}/api-paste.ini
489 chmod 640 %{buildroot}%{_sysconfdir}/%{service}/plugins/*/*.ini
490
491 # Install logrotate
492 install -p -D -m 644 %{SOURCE1} %{buildroot}%{_sysconfdir}/logrotate.d/openstack-%{service}
493
494 # Install sudoers
495 install -p -D -m 440 %{SOURCE2} %{buildroot}%{_sysconfdir}/sudoers.d/%{service}
496
497 # Install systemd units
498 install -p -D -m 644 %{SOURCE10} %{buildroot}%{_unitdir}/neutron-server.service
499 install -p -D -m 644 %{SOURCE11} %{buildroot}%{_unitdir}/neutron-linuxbridge-agent.service
500 install -p -D -m 644 %{SOURCE12} %{buildroot}%{_unitdir}/neutron-openvswitch-agent.service
501 install -p -D -m 644 %{SOURCE15} %{buildroot}%{_unitdir}/neutron-dhcp-agent.service
502 install -p -D -m 644 %{SOURCE16} %{buildroot}%{_unitdir}/neutron-l3-agent.service
503 install -p -D -m 644 %{SOURCE17} %{buildroot}%{_unitdir}/neutron-metadata-agent.service
504 install -p -D -m 644 %{SOURCE18} %{buildroot}%{_unitdir}/neutron-ovs-cleanup.service
505 install -p -D -m 644 %{SOURCE19} %{buildroot}%{_unitdir}/neutron-mlnx-agent.service
506 install -p -D -m 644 %{SOURCE20} %{buildroot}%{_unitdir}/neutron-metering-agent.service
507 install -p -D -m 644 %{SOURCE21} %{buildroot}%{_unitdir}/neutron-sriov-nic-agent.service
508 install -p -D -m 644 %{SOURCE22} %{buildroot}%{_unitdir}/neutron-netns-cleanup.service
509 install -p -D -m 644 %{SOURCE28} %{buildroot}%{_unitdir}/neutron-dev-server.service
510 install -p -D -m 644 %{SOURCE29} %{buildroot}%{_unitdir}/neutron-rpc-server.service
511
512
513 # Install scripts for pacemaker support
514 install -p -D -m 755 %{SOURCE23} %{buildroot}%{_prefix}/lib/ocf/lib/neutron/neutron-netns-cleanup
515 install -p -D -m 755 %{SOURCE24} %{buildroot}%{_prefix}/lib/ocf/lib/neutron/neutron-ovs-cleanup
516
517 # Install README file that describes how to configure services with custom configuration files
518 install -p -D -m 755 %{SOURCE31} %{buildroot}%{_sysconfdir}/%{service}/conf.d/README
519
520 # Setup directories
521 install -d -m 755 %{buildroot}%{_datadir}/%{service}
522 install -d -m 755 %{buildroot}%{_sharedstatedir}/%{service}
523 install -d -m 755 %{buildroot}%{_localstatedir}/log/%{service}
524 install -d -m 755 %{buildroot}%{_localstatedir}/run/%{service}
525
526 # Create and populate configuration directory for L3 agent that is not accessible for user modification
527 mkdir -p %{buildroot}%{_datadir}/%{service}/l3_agent
528 ln -s %{_sysconfdir}/%{service}/l3_agent.ini %{buildroot}%{_datadir}/%{service}/l3_agent/l3_agent.conf
529
530 # Create dist configuration directory for neutron-server (may be filled by advanced services)
531 mkdir -p %{buildroot}%{_datadir}/%{service}/server
532
533 # Create configuration directories for all services that can be populated by users with custom *.conf files
534 mkdir -p %{buildroot}/%{_sysconfdir}/%{service}/conf.d/common
535 for service in server dev-server rpc-server ovs-cleanup netns-cleanup; do
536     mkdir -p %{buildroot}/%{_sysconfdir}/%{service}/conf.d/%{service}-$service
537 done
538 for service in linuxbridge openvswitch dhcp l3 metadata mlnx metering sriov-nic; do
539     mkdir -p %{buildroot}/%{_sysconfdir}/%{service}/conf.d/%{service}-$service-agent
540 done
541
542 # Kill hyperv agent since it's of no use for Linux
543 rm %{buildroot}/%{_bindir}/neutron-hyperv-agent
544
545
546 %pre common
547 getent group %{service} >/dev/null || groupadd -r %{service}
548 getent passwd %{service} >/dev/null || \
549     useradd -r -g %{service} -d %{_sharedstatedir}/%{service} -s /sbin/nologin \
550     -c "OpenStack Neutron Daemons" %{service}
551 exit 0
552
553
554 %post
555 %systemd_post neutron-dhcp-agent.service
556 %systemd_post neutron-l3-agent.service
557 %systemd_post neutron-metadata-agent.service
558 %systemd_post neutron-server.service
559 %systemd_post neutron-netns-cleanup.service
560 %systemd_post neutron-ovs-cleanup.service
561
562
563 %preun
564 %systemd_preun neutron-dhcp-agent.service
565 %systemd_preun neutron-l3-agent.service
566 %systemd_preun neutron-metadata-agent.service
567 %systemd_preun neutron-server.service
568 %systemd_preun neutron-netns-cleanup.service
569 %systemd_preun neutron-ovs-cleanup.service
570
571
572 %postun
573 %systemd_postun_with_restart neutron-dhcp-agent.service
574 %systemd_postun_with_restart neutron-l3-agent.service
575 %systemd_postun_with_restart neutron-metadata-agent.service
576 %systemd_postun_with_restart neutron-server.service
577
578
579 %post linuxbridge
580 %systemd_post neutron-linuxbridge-agent.service
581 oldconf=%{_sysconfdir}/%{service}/plugins/linuxbridge/linuxbridge_conf.ini
582 newconf=%{_sysconfdir}/%{service}/plugins/ml2/linuxbridge_agent.ini
583 if [ $1 -gt 1 ]; then
584     if [ -e $oldconf ]; then
585         # Imitate noreplace
586         cp $newconf ${newconf}.rpmnew
587         cp $oldconf $newconf
588     fi
589 fi
590
591
592 %preun linuxbridge
593 %systemd_preun neutron-linuxbridge-agent.service
594
595
596 %postun linuxbridge
597 %systemd_postun_with_restart neutron-linuxbridge-agent.service
598
599
600 %post mellanox
601 %systemd_post neutron-mlnx-agent.service
602
603
604 %preun mellanox
605 %systemd_preun neutron-mlnx-agent.service
606
607
608 %postun mellanox
609 %systemd_postun_with_restart neutron-mlnx-agent.service
610
611
612 %post openvswitch
613 %systemd_post neutron-openvswitch-agent.service
614 oldconf=%{_sysconfdir}/%{service}/plugins/openvswitch/ovs_neutron_plugin.ini
615 newconf=%{_sysconfdir}/%{service}/plugins/ml2/openvswitch_agent.ini
616 if [ $1 -gt 1 ]; then
617     if [ -e $oldconf ]; then
618         # Imitate noreplace
619         cp $newconf ${newconf}.rpmnew
620         cp $oldconf $newconf
621     fi
622 fi
623
624
625 %preun openvswitch
626 %systemd_preun neutron-openvswitch-agent.service
627
628
629 %postun openvswitch
630 %systemd_postun_with_restart neutron-openvswitch-agent.service
631
632
633 %post metering-agent
634 %systemd_post neutron-metering-agent.service
635
636
637 %preun metering-agent
638 %systemd_preun neutron-metering-agent.service
639
640
641 %postun metering-agent
642 %systemd_postun_with_restart neutron-metering-agent.service
643
644
645 %post sriov-nic-agent
646 %systemd_post neutron-sriov-nic-agent.service
647
648
649 %preun sriov-nic-agent
650 %systemd_preun neutron-sriov-nic-agent.service
651
652
653 %postun sriov-nic-agent
654 %systemd_postun_with_restart neutron-sriov-nic-agent.service
655
656
657 %files
658 %license LICENSE
659 %{_bindir}/neutron-db-manage
660 %{_bindir}/neutron-debug
661 %{_bindir}/neutron-dhcp-agent
662 %{_bindir}/neutron-ipset-cleanup
663 %{_bindir}/neutron-keepalived-state-change
664 %{_bindir}/neutron-l3-agent
665 %{_bindir}/neutron-metadata-agent
666 %{_bindir}/neutron-netns-cleanup
667 %{_bindir}/neutron-ns-metadata-proxy
668 %{_bindir}/neutron-ovs-cleanup
669 %{_bindir}/neutron-pd-notify
670 %{_bindir}/neutron-sanity-check
671 %{_bindir}/neutron-server
672 %{_bindir}/neutron-usage-audit
673 %{_prefix}/lib/ocf/lib/neutron/neutron-netns-cleanup
674 %{_prefix}/lib/ocf/lib/neutron/neutron-ovs-cleanup
675 %{_unitdir}/neutron-dhcp-agent.service
676 %{_unitdir}/neutron-l3-agent.service
677 %{_unitdir}/neutron-metadata-agent.service
678 %{_unitdir}/neutron-server.service
679 %{_unitdir}/neutron-netns-cleanup.service
680 %{_unitdir}/neutron-ovs-cleanup.service
681 %attr(-, root, %{service}) %{_datadir}/%{service}/api-paste.ini
682 %dir %{_datadir}/%{service}/l3_agent
683 %dir %{_datadir}/%{service}/server
684 %{_datadir}/%{service}/l3_agent/*.conf
685 %config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/dhcp_agent.ini
686 %config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/l3_agent.ini
687 %config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/metadata_agent.ini
688 %config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/policy.json
689 %dir %{_sysconfdir}/%{service}/conf.d/%{service}-dhcp-agent
690 %dir %{_sysconfdir}/%{service}/conf.d/%{service}-l3-agent
691 %dir %{_sysconfdir}/%{service}/conf.d/%{service}-metadata-agent
692 %dir %{_sysconfdir}/%{service}/conf.d/%{service}-server
693 %dir %{_sysconfdir}/%{service}/conf.d/%{service}-netns-cleanup
694 %dir %{_sysconfdir}/%{service}/conf.d/%{service}-ovs-cleanup
695
696
697 %files -n python-%{service}-tests
698 %license LICENSE
699 %{python2_sitelib}/%{service}/tests
700
701
702 %files -n python-%{service}
703 %license LICENSE
704 %{python2_sitelib}/%{service}
705 %{python2_sitelib}/%{service}-*.egg-info
706 %exclude %{python2_sitelib}/%{service}/tests
707
708
709 %files common
710 %license LICENSE
711 %doc README.rst
712 %{_bindir}/neutron-rootwrap
713 %{_bindir}/neutron-rootwrap-daemon
714 %{_bindir}/neutron-rootwrap-xen-dom0
715 %dir %{_sysconfdir}/%{service}
716 %{_sysconfdir}/%{service}/conf.d/README
717 %dir %{_sysconfdir}/%{service}/conf.d
718 %dir %{_sysconfdir}/%{service}/conf.d/common
719 %dir %{_sysconfdir}/%{service}/plugins
720 %config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/%{service}.conf
721 %config(noreplace) %{_sysconfdir}/%{service}/rootwrap.conf
722 %config(noreplace) %{_sysconfdir}/logrotate.d/*
723 %{_sysconfdir}/sudoers.d/%{service}
724 %dir %attr(0755, %{service}, %{service}) %{_sharedstatedir}/%{service}
725 %dir %attr(0750, %{service}, %{service}) %{_localstatedir}/log/%{service}
726 %dir %{_datarootdir}/%{service}
727 %dir %{_datarootdir}/%{service}/rootwrap
728 %{_datarootdir}/%{service}/rootwrap/debug.filters
729 %{_datarootdir}/%{service}/rootwrap/dhcp.filters
730 %{_datarootdir}/%{service}/rootwrap/ebtables.filters
731 %{_datarootdir}/%{service}/rootwrap/ipset-firewall.filters
732 %{_datarootdir}/%{service}/rootwrap/iptables-firewall.filters
733 %{_datarootdir}/%{service}/rootwrap/l3.filters
734
735
736 %files bigswitch
737 %license LICENSE
738 %{_bindir}/neutron-restproxy-agent
739 %dir %{_sysconfdir}/%{service}/plugins/bigswitch
740 %{_sysconfdir}/%{service}/plugins/bigswitch/ssl
741 %config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/plugins/bigswitch/*.ini
742
743
744 %files brocade
745 %license LICENSE
746 %doc %{service}/plugins/brocade/README.md
747 %dir %{_sysconfdir}/%{service}/plugins/brocade
748 %config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/plugins/brocade/*.ini
749 %config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/plugins/brocade/vyatta/*.ini
750
751
752 %files cisco
753 %license LICENSE
754 %dir %{_sysconfdir}/%{service}/plugins/cisco
755 %config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/plugins/cisco/*.ini
756
757
758 %files embrane
759 %license LICENSE
760 %doc %{service}/plugins/embrane/README
761 %dir %{_sysconfdir}/%{service}/plugins/embrane
762 %config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/plugins/embrane/*.ini
763
764
765 %files dev-server
766 %license LICENSE
767 %{_bindir}/neutron-dev-server
768 %{_unitdir}/neutron-dev-server.service
769 %dir %{_sysconfdir}/%{service}/conf.d/%{service}-dev-server
770
771
772 %files linuxbridge
773 %license LICENSE
774 %{_bindir}/neutron-linuxbridge-agent
775 %{_unitdir}/neutron-linuxbridge-agent.service
776 %{_datarootdir}/%{service}/rootwrap/linuxbridge-plugin.filters
777 %dir %{_sysconfdir}/%{service}/plugins/ml2
778 %config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/plugins/ml2/linuxbridge_agent.ini
779 %dir %{_sysconfdir}/%{service}/conf.d/%{service}-linuxbridge-agent
780
781
782 %files mellanox
783 %license LICENSE
784 %doc %{service}/plugins/ml2/drivers/mlnx/README
785 %{_bindir}/neutron-mlnx-agent
786 %{_unitdir}/neutron-mlnx-agent.service
787 %dir %{_sysconfdir}/%{service}/plugins/mlnx
788 %config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/plugins/mlnx/*.ini
789 %dir %{_sysconfdir}/%{service}/conf.d/%{service}-mlnx-agent
790
791
792 %files midonet
793 %license LICENSE
794 #%doc %{service}/plugins/midonet/README
795 %dir %{_sysconfdir}/%{service}/plugins/midonet
796 %config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/plugins/midonet/*.ini
797
798
799 %files ml2
800 %license LICENSE
801 %doc %{service}/plugins/ml2/README
802 %dir %{_sysconfdir}/%{service}/plugins/ml2
803 %config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/plugins/ml2/*.ini
804 %exclude %{_sysconfdir}/%{service}/plugins/ml2/linuxbridge_agent.ini
805 %exclude %{_sysconfdir}/%{service}/plugins/ml2/openvswitch_agent.ini
806
807
808 %files nuage
809 %license LICENSE
810 %{python2_sitelib}/%{service}/plugins/nuage
811 %dir %{_sysconfdir}/%{service}/plugins/nuage
812 %config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/plugins/nuage/*.ini
813
814
815 %files ofagent
816 %license LICENSE
817
818
819 %files oneconvergence-nvsd
820 %license LICENSE
821 %doc %{service}/plugins/oneconvergence/README
822 %dir %{_sysconfdir}/%{service}/plugins/oneconvergence
823 %config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/plugins/oneconvergence/*.ini
824 %{_bindir}/neutron-nvsd-agent
825
826
827 %files opencontrail
828 %license LICENSE
829 #%doc %{service}/plugins/opencontrail/README
830 %dir %{_sysconfdir}/%{service}/plugins/opencontrail
831 %config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/plugins/opencontrail/*.ini
832
833
834 %files openvswitch
835 %license LICENSE
836 %{_bindir}/neutron-openvswitch-agent
837 %{_unitdir}/neutron-openvswitch-agent.service
838 %{_datarootdir}/%{service}/rootwrap/openvswitch-plugin.filters
839 %dir %{_sysconfdir}/%{service}/plugins/ml2
840 %config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/plugins/ml2/openvswitch_agent.ini
841 %dir %{_sysconfdir}/%{service}/conf.d/%{service}-openvswitch-agent
842
843
844 %files ovsvapp
845 %license LICENSE
846 %{_bindir}/neutron-ovsvapp-agent
847 # TODO: add a systemd unit file
848 %dir %{_sysconfdir}/%{service}/plugins/ovsvapp
849 %config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/plugins/ovsvapp/*.ini
850
851
852 %files metering-agent
853 %license LICENSE
854 %config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/metering_agent.ini
855 %{_unitdir}/neutron-metering-agent.service
856 %{_bindir}/neutron-metering-agent
857 %dir %{_sysconfdir}/%{service}/conf.d/%{service}-metering-agent
858
859
860 %files rpc-server
861 %license LICENSE
862 %{_bindir}/neutron-rpc-server
863 %{_unitdir}/neutron-rpc-server.service
864 %dir %{_sysconfdir}/%{service}/conf.d/%{service}-rpc-server
865
866
867 %files sriov-nic-agent
868 %license LICENSE
869 %{_unitdir}/neutron-sriov-nic-agent.service
870 %{_bindir}/neutron-sriov-nic-agent
871 %config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/plugins/ml2/sriov_agent.ini
872 %dir %{_sysconfdir}/%{service}/conf.d/%{service}-sriov-nic-agent
873
874
875 %files doc
876 %license LICENSE
877 %doc html
878
879
880 %changelog
881 * Fri Nov 20 2015 Sergey Kolekonov <skolekonov@mirantis.com> 7.0.0
882 - Remove neutron-dist.conf from packages
883 * Fri Nov 6 2015 Sergey Kolekonov <skolekonov@mirantis.com> 7.0.0
884 - Update specs for 7.0.0 release
885 * Thu Sep 3 2015 Sergey Kolekonov <skolekonov@mirantis.com> 7.0.0.0b3
886 - Update specs for Liberty release