-
Notifications
You must be signed in to change notification settings - Fork 39
/
contrail-openstack.spec
126 lines (117 loc) · 6.46 KB
/
contrail-openstack.spec
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
%define _distropkgdir tools/packaging/common/control_files
%if 0%{?_buildTag:1}
%define _relstr %{_buildTag}
%else
%define _relstr %(date -u +%y%m%d%H%M)
%endif
%{echo: "Building release %{_relstr}\n"}
%if 0%{?_srcVer:1}
%define _verstr %{_srcVer}
%else
%define _verstr 1
%endif
Release: %{_relstr}%{?dist}
Summary: Contrail Openstack %{?_gitVer}
Name: contrail-openstack
Version: %{_verstr}
Group: Applications/System
License: Commercial
URL: http://www.juniper.net/
Vendor: Juniper Networks Inc
BuildArch: noarch
Requires: python-contrail >= %{_verstr}-%{_relstr}
Requires: openstack-dashboard = 2013.2-%{_verstr}.%{_relstr}
Requires: contrail-openstack-dashboard >= 2013.2-%{_verstr}.%{_relstr}
Requires: openstack-glance
Requires: openstack-keystone
Requires: openstack-nova = 2013.2-2contrail
Requires: openstack-cinder
Requires: mysql-server >= 5.1.73
Requires: openssl098e
Requires: contrail-setup >= %{_verstr}-%{_relstr}
Requires: contrail-utils >= %{_verstr}-%{_relstr}
Requires: memcached
Requires: openstack-nova-novncproxy = 2013.2-2contrail
Requires: python-glance
Requires: python-glanceclient
Requires: euca2ools >= 1.0-2contrail
Requires: m2crypto
Requires: qpid-cpp-server
Requires: haproxy
Requires: rabbitmq-server >= 3.5.0
Requires: supervisor
%if 0%{?rhel} && 0%{?rhel} <= 6
Requires: python-importlib
%endif
%description
Contrail Package Requirements for Contrail Openstack
%install
# Setup directories
rm -rf %{buildroot}
install -d -m 755 %{buildroot}/%{_bindir}
pushd %{_builddir}/..
# Install supervisord config config files and directories
install -d -m 755 %{buildroot}%{_sysconfdir}/contrail/supervisord_openstack_files
install -D -m 755 %{_distropkgdir}/supervisor-openstack.initd %{buildroot}%{_initddir}/supervisor-openstack
install -D -m 755 %{_distropkgdir}/supervisord_openstack.conf %{buildroot}%{_sysconfdir}/contrail/supervisord_openstack.conf
# Install supervisor init.d files
install -D -m 755 %{_distropkgdir}/keystone.initd.supervisord %{buildroot}%{_initddir}/keystone
install -D -m 755 %{_distropkgdir}/nova-api.initd.supervisord %{buildroot}%{_initddir}/nova-api
install -D -m 755 %{_distropkgdir}/nova-scheduler.initd.supervisord %{buildroot}%{_initddir}/nova-scheduler
install -D -m 755 %{_distropkgdir}/nova-conductor.initd.supervisord %{buildroot}%{_initddir}/nova-conductor
install -D -m 755 %{_distropkgdir}/nova-cert.initd.supervisord %{buildroot}%{_initddir}/nova-cert
install -D -m 755 %{_distropkgdir}/nova-consoleauth.initd.supervisord %{buildroot}%{_initddir}/nova-consoleauth
install -D -m 755 %{_distropkgdir}/nova-novncproxy.initd.supervisord %{buildroot}%{_initddir}/nova-novncproxy
install -D -m 755 %{_distropkgdir}/glance-api.initd.supervisord %{buildroot}%{_initddir}/glance-api
install -D -m 755 %{_distropkgdir}/glance-registry.initd.supervisord %{buildroot}%{_initddir}/glance-registry
install -D -m 755 %{_distropkgdir}/cinder-api.initd.supervisord %{buildroot}%{_initddir}/cinder-api
install -D -m 755 %{_distropkgdir}/cinder-scheduler.initd.supervisord %{buildroot}%{_initddir}/cinder-scheduler
# Install supervisord config files
install -D -m 755 %{_distropkgdir}/keystone.ini.centos %{buildroot}%{_sysconfdir}/contrail/supervisord_openstack_files/keystone.ini
install -D -m 755 %{_distropkgdir}/glance-api.ini.centos %{buildroot}%{_sysconfdir}/contrail/supervisord_openstack_files/glance-api.ini
install -D -m 755 %{_distropkgdir}/glance-registry.ini.centos %{buildroot}%{_sysconfdir}/contrail/supervisord_openstack_files/glance-registry.ini
install -D -m 755 %{_distropkgdir}/cinder-api.ini.centos %{buildroot}%{_sysconfdir}/contrail/supervisord_openstack_files/cinder-api.ini
install -D -m 755 %{_distropkgdir}/cinder-scheduler.ini.centos %{buildroot}%{_sysconfdir}/contrail/supervisord_openstack_files/cinder-scheduler.ini
install -D -m 755 %{_distropkgdir}/nova-api.ini.centos %{buildroot}%{_sysconfdir}/contrail/supervisord_openstack_files/nova-api.ini
install -D -m 755 %{_distropkgdir}/nova-scheduler.ini.centos %{buildroot}%{_sysconfdir}/contrail/supervisord_openstack_files/nova-scheduler.ini
install -D -m 755 %{_distropkgdir}/nova-conductor.ini.centos %{buildroot}%{_sysconfdir}/contrail/supervisord_openstack_files/nova-conductor.ini
install -D -m 755 %{_distropkgdir}/nova-consoleauth.ini.centos %{buildroot}%{_sysconfdir}/contrail/supervisord_openstack_files/nova-consoleauth.ini
install -D -m 755 %{_distropkgdir}/nova-novncproxy.ini.centos %{buildroot}%{_sysconfdir}/contrail/supervisord_openstack_files/nova-novncproxy.ini
# Install contrail openstack-status
install -p -m 755 tools/provisioning/tools/openstack-status %{buildroot}/%{_bindir}/openstack-status.contrail
popd
%files
%defattr(-,root,root,-)
%{_sysconfdir}/contrail
%{_initddir}
%config(noreplace) %{_sysconfdir}/contrail/supervisord_openstack_files/keystone.ini
%config(noreplace) %{_sysconfdir}/contrail/supervisord_openstack_files/glance-api.ini
%config(noreplace) %{_sysconfdir}/contrail/supervisord_openstack_files/glance-registry.ini
%config(noreplace) %{_sysconfdir}/contrail/supervisord_openstack_files/cinder-api.ini
%config(noreplace) %{_sysconfdir}/contrail/supervisord_openstack_files/cinder-scheduler.ini
%config(noreplace) %{_sysconfdir}/contrail/supervisord_openstack_files/nova-api.ini
%config(noreplace) %{_sysconfdir}/contrail/supervisord_openstack_files/nova-scheduler.ini
%config(noreplace) %{_sysconfdir}/contrail/supervisord_openstack_files/nova-conductor.ini
%config(noreplace) %{_sysconfdir}/contrail/supervisord_openstack_files/nova-consoleauth.ini
%config(noreplace) %{_sysconfdir}/contrail/supervisord_openstack_files/nova-novncproxy.ini
%{_bindir}/openstack-status.contrail
%post
# Replace stock openstack-status with contrail openstack-status
if [ -f %{_bindir}/openstack-status ]; then
mv %{_bindir}/openstack-status %{_bindir}/openstack-status.rpmsave
fi
mv %{_bindir}/openstack-status.contrail %{_bindir}/openstack-status
# Replace stock openstack initd scripts with contrail initd scripts
for svc in openstack-keystone openstack-nova-api openstack-nova-scheduler\
openstack-nova-consoleauth openstack-nova-conductor\
openstack-nova-novncproxy openstack-glance-api\
openstack-glance-registry openstack-cinder-api\
openstack-cinder-scheduler; do
if [ -f %{_initddir}/$svc ]; then
service $svc stop || true
mv %{_initddir}/$svc %{_initddir}/$svc.backup
fi
done
%changelog
* Tue Sep 26 2013 <ndramesh@juniper.net>
* Initial build.