Add a systemd service file to arvados-node-manager.
authorWard Vandewege <wvandewege@veritasgenetics.com>
Tue, 16 Oct 2018 20:49:15 +0000 (16:49 -0400)
committerWard Vandewege <wvandewege@veritasgenetics.com>
Tue, 16 Oct 2018 20:50:58 +0000 (16:50 -0400)
Reset package iteration number for arvados-node-manager to version 1.

No issue #

Arvados-DCO-1.1-Signed-off-by: Ward Vandewege <wvandewege@veritasgenetics.com>

build/run-build-packages.sh
services/nodemanager/MANIFEST.in
services/nodemanager/arvados-node-manager.service [new file with mode: 0644]
services/nodemanager/setup.py

index 601f19fe239ff2fc6f4b017bf1f9f3b7f238d673..fe01e4b2ef2528222dfff7d097729b9b5c773b30 100755 (executable)
@@ -412,9 +412,10 @@ fi
 cd $WORKSPACE/packages/$TARGET
 rm -rf "$WORKSPACE/services/nodemanager/build"
 nodemanager_version=${ARVADOS_BUILDING_VERSION:-$(awk '($1 == "Version:"){print $2}' $WORKSPACE/services/nodemanager/arvados_node_manager.egg-info/PKG-INFO)}
-test_package_presence arvados-node-manager "$nodemanager_version" python
+iteration="${ARVADOS_BUILDING_ITERATION:-1}"
+test_package_presence arvados-node-manager "$nodemanager_version" python "$iteration"
 if [[ "$?" == "0" ]]; then
-  fpm_build $WORKSPACE/services/nodemanager arvados-node-manager 'Curoverse, Inc.' 'python' "$nodemanager_version" "--url=https://arvados.org" "--description=The Arvados node manager" --depends "${PYTHON2_PKG_PREFIX}-setuptools"
+  fpm_build $WORKSPACE/services/nodemanager arvados-node-manager 'Curoverse, Inc.' 'python' "$nodemanager_version" "--url=https://arvados.org" "--description=The Arvados node manager" --depends "${PYTHON2_PKG_PREFIX}-setuptools" --iteration "$iteration"
 fi
 
 # The Docker image cleaner
index 7322a0ab52f613469c4345a89eed533a444a5107..84104202a3b165356a0caf5056c743fe45667e32 100644 (file)
@@ -4,4 +4,5 @@
 
 include agpl-3.0.txt
 include README.rst
-include arvados_version.py
\ No newline at end of file
+include arvados_version.py
+include arvados-node-manager.service
diff --git a/services/nodemanager/arvados-node-manager.service b/services/nodemanager/arvados-node-manager.service
new file mode 100644 (file)
index 0000000..38c525b
--- /dev/null
@@ -0,0 +1,32 @@
+# Copyright (C) The Arvados Authors. All rights reserved.
+#
+# SPDX-License-Identifier: AGPL-3.0
+
+[Unit]
+Description=Arvados Node Manager Daemon
+Documentation=https://doc.arvados.org/
+After=network.target
+AssertPathExists=/etc/arvados-node-manager/config.ini
+
+# systemd==229 (ubuntu:xenial) obeys StartLimitInterval in the [Unit] section
+StartLimitInterval=0
+
+# systemd>=230 (debian:9) obeys StartLimitIntervalSec in the [Unit] section
+StartLimitIntervalSec=0
+
+[Service]
+EnvironmentFile=-/etc/default/arvados-node-manager
+LimitDATA=3145728K
+LimitRSS=3145728K
+LimitMEMLOCK=3145728K
+LimitNOFILE=10240
+Type=simple
+ExecStart=/usr/bin/env sh -c '/usr/bin/arvados-node-manager --foreground --config /etc/arvados-node-manager/config.ini 2>&1 | cat'
+Restart=always
+RestartSec=1
+
+# systemd<=219 (centos:7, debian:8, ubuntu:trusty) obeys StartLimitInterval in the [Service] section
+StartLimitInterval=0
+
+[Install]
+WantedBy=multi-user.target
index 1e41f3dad2fd32cfa3f42c461f2b21362796cb8e..4f00d54e7e28d10eb366e47da1e0b2f1957d017f 100644 (file)
@@ -32,7 +32,7 @@ setup(name='arvados-node-manager',
       packages=find_packages(),
       scripts=['bin/arvados-node-manager'],
       data_files=[
-          ('share/doc/arvados-node-manager', ['agpl-3.0.txt', 'README.rst']),
+          ('share/doc/arvados-node-manager', ['agpl-3.0.txt', 'README.rst', 'arvados-node-manager.service']),
       ],
       install_requires=[
           'apache-libcloud>=2.3.1.dev1',