summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2018-02-07 18:54:13 +0200
committerLars Wirzenius <liw@liw.fi>2018-02-08 17:53:43 +0200
commitfc30e8a176d49cff4c9a5e2fe8860ba88aa1b8e6 (patch)
tree69d5c5c7d975dbf127d62dae08c14bcbd3a4c26c
parent4b6fd81e121935f60f29b8314bc7c44726bf6fd7 (diff)
downloadick2-fc30e8a176d49cff4c9a5e2fe8860ba88aa1b8e6.tar.gz
Change: make all .service units be conditional on config
If the config file is missing, the unit won't start.
-rw-r--r--NEWS5
-rw-r--r--debian/ick2.install4
-rw-r--r--ick-blob-service.service (renamed from blob-service.service)3
-rw-r--r--ick-controller.service (renamed from ick2.service)5
-rw-r--r--ick-worker.service (renamed from ick2-worker-manager.service)3
5 files changed, 13 insertions, 7 deletions
diff --git a/NEWS b/NEWS
index a4356ce..7d8c2d7 100644
--- a/NEWS
+++ b/NEWS
@@ -42,6 +42,11 @@ Version 0.23+git, not yet released
* The systemd unit for the worker manager now restarts the worker
manager automatically if it crashes, after 10 seconds.
+* The service files are now called ick-controller, ick-worker, and
+ ick-blob-service. They don't start unless the corresponding
+ configuration file in /etc exist. This makes the ick Debian package
+ safe to install, if one only wants icktool.
+
Version 0.23, released 2018-01-22
----------------------------------
diff --git a/debian/ick2.install b/debian/ick2.install
index bda5847..bb32238 100644
--- a/debian/ick2.install
+++ b/debian/ick2.install
@@ -1,4 +1,2 @@
-ick2.service lib/systemd/system
-ick2-worker-manager.service lib/systemd/system
-blob-service.service lib/systemd/system
+ick-*.service lib/systemd/system
worker_manager.yaml etc/ick
diff --git a/blob-service.service b/ick-blob-service.service
index 8f2f046..2bfc6c1 100644
--- a/blob-service.service
+++ b/ick-blob-service.service
@@ -13,8 +13,9 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
[Unit]
-Description=ick2 blob service
+Description=ick blob service
After=network.target
+ConditionPathExists=/etc/ick/blob-service.yaml
[Service]
Type=simple
diff --git a/ick2.service b/ick-controller.service
index 57fd209..7a58da9 100644
--- a/ick2.service
+++ b/ick-controller.service
@@ -1,4 +1,4 @@
-# Copyright 2017 Lars Wirzenius
+# Copyright 2017-2018 Lars Wirzenius
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
@@ -13,8 +13,9 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
[Unit]
-Description=ick2 controller
+Description=ick controller
After=network.target
+ConditionPathExists=/etc/ick/controller.yaml
[Service]
Type=simple
diff --git a/ick2-worker-manager.service b/ick-worker.service
index 18c08f3..d2d2416 100644
--- a/ick2-worker-manager.service
+++ b/ick-worker.service
@@ -13,8 +13,9 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
[Unit]
-Description=ick2 worker manager
+Description=ick worker
After=network.target
+ConditionPathExists=/etc/ick/worker.yaml
[Service]
Type=simple