From 6d03b8eeb128244ee08fb6ce2022ad3c2539b9ab Mon Sep 17 00:00:00 2001 From: Donald Buczek Date: Tue, 13 Jun 2023 15:30:31 +0200 Subject: [PATCH] pdist: Add pdistd service for distmaster(s) To implement out-update on boot, we need a way for a client to trigger a pdist-update for itself on its distmaster. Add a service for the distmaster(s), which allows a client to do that by connecting to a fixed port on the distmaster (`telnet deinemuddah 237`). --- install.sh | 2 ++ pdist/pdistd.socket | 15 +++++++++++++++ pdist/pdistd@.service | 8 ++++++++ 3 files changed, 25 insertions(+) create mode 100644 pdist/pdistd.socket create mode 100644 pdist/pdistd@.service diff --git a/install.sh b/install.sh index d58444c..165f4b3 100755 --- a/install.sh +++ b/install.sh @@ -265,6 +265,8 @@ install_data misc_etc_files/request-key.d/id_resolver.conf \ "$DESTDIR$sysconfdir/request-key.d/id_resolver.conf" install_symlink /etc/local/access.conf "$DESTDIR$sysconfdir/security/access.conf" install_data misc_etc_files/cups/client.conf "$DESTDIR$sysconfdir/cups/client.conf" +install_data pdist/pdistd.socket "$DESTDIR$systemdunitdir/pdistd.socket" +install_data pdist/pdistd@.service "$DESTDIR$systemdunitdir/pdistd@.service" postinstall exit diff --git a/pdist/pdistd.socket b/pdist/pdistd.socket new file mode 100644 index 0000000..54cad95 --- /dev/null +++ b/pdist/pdistd.socket @@ -0,0 +1,15 @@ +[Install] + +WantedBy=multiuser.target + +[Unit] + +After=startup-tags.service network.target +ConditionPathExists=/node/tags/distmaster + +[Socket] + +ListenStream=237 +ReusePort=yes +Accept=yes + diff --git a/pdist/pdistd@.service b/pdist/pdistd@.service new file mode 100644 index 0000000..879136d --- /dev/null +++ b/pdist/pdistd@.service @@ -0,0 +1,8 @@ +[Unit] + +CollectMode=inactive-or-failed + +[Service] + +StandardOutput=socket +ExecStart=bash -c "read ip host <<< $(getent hosts ${REMOTE_ADDR}) ; echo update in progess... ; pdist push $host --timeout 60 --set-pdist-status"