Systemd support for nailgun services

Add systemd service units for nailgun components.

Also fix rhel macros condition in RPM spec.

Blueprint: master-on-centos7

Compatible with CentOS6 master node

Change-Id: I4dc45774fba16037e0d4ccd077ca786a18f58ec2
This commit is contained in:
Ivan Suzdal 2015-11-20 21:00:32 +03:00 committed by Dmitry Teselkin
parent 7d4a5e8e62
commit 2daa7afc98
11 changed files with 113 additions and 3 deletions

View File

@ -1,7 +1,6 @@
%define name fuel-nailgun
%{!?version: %define version 8.0.0}
%{!?release: %define release 1}
%{!?rhel: %define rhel 7}
Summary: Nailgun package
Name: %{name}
@ -61,7 +60,7 @@ Requires: pydot-ng >= 1.0.0
# Workaroud for babel bug
Requires: pytz
%if 0%{rhel} < 7
%if 0%{?rhel} >= 5 && 0%{?rhel} < 7
Requires: python-argparse >= 1.2.1
Requires: python-ordereddict >= 1.1
%endif
@ -69,6 +68,13 @@ Requires: python-ordereddict >= 1.1
BuildRequires: nodejs
BuildRequires: nodejs-nailgun
%if 0%{?fedora} > 16 || 0%{?rhel} > 6
Requires(post): systemd-units
Requires(preun): systemd-units
Requires(postun): systemd-units
BuildRequires: systemd-units
%endif
%description
Nailgun package
@ -98,12 +104,22 @@ install -p -D -m 755 %{_builddir}/%{name}-%{version}/bin/download-debian-install
install -p -D -m 644 %{_builddir}/%{name}-%{version}/nailgun/nailgun/fixtures/openstack.yaml %{buildroot}%{_datadir}/fuel-openstack-metadata/openstack.yaml
python -c "import yaml; print filter(lambda r: r['fields'].get('name'), yaml.safe_load(open('%{_builddir}/%{name}-%{version}/nailgun/nailgun/fixtures/openstack.yaml')))[0]['fields']['version']" > %{buildroot}%{_sysconfdir}/fuel_openstack_version
%if %{defined _unitdir}
install -d -D -m755 %{buildroot}/%{_unitdir}
install -D -m644 %{_builddir}/%{name}-%{version}/systemd/*.service %{buildroot}/%{_unitdir}/
%endif
%clean
rm -rf $RPM_BUILD_ROOT
%files -f %{_builddir}/%{name}-%{version}/nailgun/INSTALLED_FILES
%defattr(0755,root,root)
%if %{defined _unitdir}
%attr(0644, root, root) /%{_unitdir}/*
%endif
%package -n fuel-openstack-metadata
Summary: Fuel Openstack metadata files
@ -151,7 +167,7 @@ BuildArch: noarch
Requires: python-keystoneclient >= 0.11
Requires: python-keystonemiddleware >= 1.2.0
%if 0%{rhel} < 7
%if 0%{?rhel} >= 5 && 0%{?rhel} < 7
Requires: python-ordereddict >= 1.1
%endif

View File

@ -0,0 +1,9 @@
[Unit]
Name=Assassind daemon
[Service]
ExecStart=/usr/bin/assassind
[Install]
WantedBy=multi-user.target

13
systemd/nailgun.service Normal file
View File

@ -0,0 +1,13 @@
[Unit]
Name=Nailgun daemon
ConditionPathExists=/etc/nailgun/uwsgi_nailgun.yaml
[Service]
ExecStart=/usr/sbin/uwsgi -y /etc/nailgun/uwsgi_nailgun.yaml
ExecReload=/usr/sbin/uwsgi --reload /var/run/nailgun.pid
ExecStop=/usr/sbin/uwsgi --stop /var/run/nailgun.pid
ExecStopPost=/usr/bin/rm -f /var/run/nailgun.pid
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1,9 @@
[Unit]
Name=oswl flavor collector daemon
[Service]
ExecStart=/usr/bin/oswl_collectord flavor
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1,9 @@
[Unit]
Name=oswl image collector daemon
[Service]
ExecStart=/usr/bin/oswl_collectord image
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1,9 @@
[Unit]
Name=oswl keystone user collector daemon
[Service]
ExecStart=/usr/bin/oswl_collectord keystone_user
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1,9 @@
[Unit]
Name=oswl tenant collector daemon
[Service]
ExecStart=/usr/bin/oswl_collectord tenant
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1,9 @@
[Unit]
Name=oswl vm collector daemon
[Service]
ExecStart=/usr/bin/oswl_collectord vm
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1,9 @@
[Unit]
Name=oswl volume collector daemon
[Service]
ExecStart=/usr/bin/oswl_collectord volume
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1,9 @@
[Unit]
Name=Receiverd daemon
[Service]
ExecStart=/usr/bin/receiverd
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1,9 @@
[Unit]
Name=Statsenderd daemon
[Service]
ExecStart=/usr/bin/statsenderd
[Install]
WantedBy=multi-user.target