Merge branch 'master' of git.curoverse.com:arvados into 11876-r-sdk
[arvados.git] / services / dockercleaner / arvados-docker-cleaner.service
index 416ea4422caa3d241b0618e66b2a841186a6fd66..6ab3fdfac91ae05e183643b010ca6d093a4b2f3c 100644 (file)
@@ -1,8 +1,16 @@
+# Copyright (C) The Arvados Authors. All rights reserved.
+#
+# SPDX-License-Identifier: AGPL-3.0
+
 [Unit]
 Description=Arvados Docker Image Cleaner
 Documentation=https://doc.arvados.org/
 After=network.target
 AssertPathExists=/etc/arvados/docker-cleaner/docker-cleaner.json
+# systemd<230
+StartLimitInterval=0
+# systemd>=230
+StartLimitIntervalSec=0
 
 [Service]
 Type=simple
@@ -10,10 +18,10 @@ Restart=always
 RestartSec=10s
 RestartPreventExitStatus=2
 #
-# If your deployment uses a Python 3 Software Collection, uncomment the
-# ExecStart line below, and delete the following one:
-#ExecStart=/usr/bin/env scl enable python33 arvados-docker-cleaner
-ExecStart=/usr/bin/env arvados-docker-cleaner
+# This unwieldy ExecStart command detects at runtime whether
+# arvados-docker-cleaner is installed with the Python 3.3 Software
+# Collection, and if so, invokes it with the "scl" wrapper.
+ExecStart=/bin/sh -c 'if [ -e /opt/rh/python33/root/bin/arvados-docker-cleaner ]; then exec scl enable python33 arvados-docker-cleaner; else exec arvados-docker-cleaner; fi'
 
 [Install]
 WantedBy=multi-user.target