]> git.ipfire.org Git - thirdparty/knot-resolver.git/commitdiff
systemd: add kres-cache-gc.service
authorTomas Krizek <tomas.krizek@nic.cz>
Mon, 1 Jul 2019 15:32:53 +0000 (17:32 +0200)
committerPetr Špaček <petr.spacek@nic.cz>
Wed, 10 Jul 2019 13:59:24 +0000 (15:59 +0200)
distro/deb/knot-resolver.install
distro/rpm/knot-resolver.spec
systemd/kres-cache-gc.service.in [new file with mode: 0644]
systemd/kresd@.service.in
systemd/meson.build
systemd/nosocket/kres-cache-gc.service.in [new file with mode: 0644]
systemd/nosocket/kresd@.service.in
systemd/nosocket/meson.build

index 5e11209cf0adee914bf771317fd387378b00cb47..a47a3e09cb1b9435e7442b2eed506a33003c0697 100644 (file)
@@ -1,5 +1,6 @@
 etc/knot-resolver/kresd.conf
 usr/lib/systemd/system/kresd@.service lib/systemd/system/
+usr/lib/systemd/system/kres-cache-gc.service lib/systemd/system/
 usr/lib/systemd/system/kresd.target lib/systemd/system/
 usr/lib/systemd/system/kresd.socket lib/systemd/system/
 usr/lib/systemd/system/kresd-tls.socket lib/systemd/system/
index 428278cbfe836d467a54483e996f8835d06bc414..6c3b9504ca32b0c27b53c1b753815b1e634d6463 100644 (file)
@@ -214,7 +214,7 @@ systemctl daemon-reload
 %endif
 
 %preun
-%systemd_preun 'kresd@*.service' kresd.target kresd.socket kresd-tls.socket
+%systemd_preun 'kresd@*.service' kres-cache-gc.service kresd.target kresd.socket kresd-tls.socket
 
 %postun
 # NOTE: this doesn't restart the services on CentOS 7
@@ -237,6 +237,7 @@ systemctl daemon-reload
 %attr(644,root,knot-resolver) %config(noreplace) %{_sysconfdir}/knot-resolver/root.hints
 %attr(644,root,knot-resolver) %config(noreplace) %{_sysconfdir}/knot-resolver/icann-ca.pem
 %{_unitdir}/kresd@.service
+%{_unitdir}/kres-cache-gc.service
 %{_unitdir}/kresd.target
 %dir %{_unitdir}/multi-user.target.wants
 %{_unitdir}/multi-user.target.wants/kresd.target
diff --git a/systemd/kres-cache-gc.service.in b/systemd/kres-cache-gc.service.in
new file mode 100644 (file)
index 0000000..12b1ec8
--- /dev/null
@@ -0,0 +1,14 @@
+[Unit]
+Description=Knot Resolver Garbage Collector daemon
+Documentation=man:kresd.systemd(7)
+Documentation=man:kresd(8)
+
+[Service]
+Type=simple
+ExecStart=@sbin_dir@/kres-cache-gc -c @systemd_work_dir@ -d 1000
+User=knot-resolver
+Restart=on-abnormal
+Slice=system-kresd.slice
+
+[Install]
+WantedBy=kresd.target
index e94f23376850e617f5bb4396f24417640b64126f..96b821cf02d68160d3281224944be81f96026573 100644 (file)
@@ -2,6 +2,8 @@
 Description=Knot Resolver daemon
 Documentation=man:kresd.systemd(7)
 Documentation=man:kresd(8)
+Wants=kres-cache-gc.service
+Before=kres-cache-gc.service
 
 [Service]
 Type=notify
index 662a3ec29bd43b36ddfa0f42adecbd3a3a18370f..ac8965429d57c3c70eedc12489539bb9d7cd38d9 100644 (file)
@@ -30,6 +30,12 @@ if systemd_files == 'enabled'
     configuration: systemd_config,
     install_dir: systemd_unit_dir,
   )
+  kres_cache_gc_service = configure_file(
+    input: 'kres-cache-gc.service.in',
+    output: 'kres-cache-gc.service',
+    configuration: systemd_config,
+    install_dir: systemd_unit_dir,
+  )
   install_data(
     sources: [
       'kresd.socket',
diff --git a/systemd/nosocket/kres-cache-gc.service.in b/systemd/nosocket/kres-cache-gc.service.in
new file mode 100644 (file)
index 0000000..29a0cfe
--- /dev/null
@@ -0,0 +1,14 @@
+[Unit]
+Description=Knot Resolver Garbage Collector daemon
+Documentation=man:kresd.systemd.nosocket(7)
+Documentation=man:kresd(8)
+
+[Service]
+Type=simple
+ExecStart=@sbin_dir@/kres-cache-gc -c @systemd_work_dir@ -d 1000
+User=knot-resolver
+Restart=on-abnormal
+Slice=system-kresd.slice
+
+[Install]
+WantedBy=kresd.target
index dd7f16a423d66bcce229350455a0b39ee73b7c4b..7c3b6106c49e137c7aca6604bca4c6ef4db9129b 100644 (file)
@@ -2,6 +2,8 @@
 Description=Knot Resolver daemon
 Documentation=man:kresd.systemd.nosocket(7)
 Documentation=man:kresd(8)
+Wants=kres-cache-gc.service
+Before=kres-cache-gc.service
 
 [Service]
 Type=notify
index 383b912e0077d2d91ab440aff9c8ce840d9a3670..5fe43799b3a7031d599093663a2dc04bd40818cd 100644 (file)
@@ -7,6 +7,12 @@ kresd_service = configure_file(
   configuration: systemd_config,
   install_dir: systemd_unit_dir,
 )
+kres_cache_gc_service = configure_file(
+  input: 'kres-cache-gc.service.in',
+  output: 'kres-cache-gc.service',
+  configuration: systemd_config,
+  install_dir: systemd_unit_dir,
+)
 
 install_data(
   sources: 'kresd.target',