From: Ward Vandewege Date: Tue, 16 Oct 2018 20:49:15 +0000 (-0400) Subject: Add a systemd service file to arvados-node-manager. X-Git-Tag: 1.3.0~74 X-Git-Url: https://git.arvados.org/arvados.git/commitdiff_plain/bd2eed9c62ba1aea8ac92d11fd20dfb79a49ae3f?hp=bf4ab09eb832d2b3528dfeff3b4418ce471ec753 Add a systemd service file to arvados-node-manager. Reset package iteration number for arvados-node-manager to version 1. No issue # Arvados-DCO-1.1-Signed-off-by: Ward Vandewege --- diff --git a/build/run-build-packages.sh b/build/run-build-packages.sh index 601f19fe23..fe01e4b2ef 100755 --- a/build/run-build-packages.sh +++ b/build/run-build-packages.sh @@ -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 diff --git a/services/nodemanager/MANIFEST.in b/services/nodemanager/MANIFEST.in index 7322a0ab52..84104202a3 100644 --- a/services/nodemanager/MANIFEST.in +++ b/services/nodemanager/MANIFEST.in @@ -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 index 0000000000..38c525b7cd --- /dev/null +++ b/services/nodemanager/arvados-node-manager.service @@ -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 diff --git a/services/nodemanager/setup.py b/services/nodemanager/setup.py index 1e41f3dad2..4f00d54e7e 100644 --- a/services/nodemanager/setup.py +++ b/services/nodemanager/setup.py @@ -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',