summaryrefslogtreecommitdiffstats
path: root/core/modules/networkd-dispatcher/module.build
diff options
context:
space:
mode:
authorJonathan Bauer2019-01-04 12:06:15 +0100
committerJonathan Bauer2019-01-04 12:06:15 +0100
commitc06df3a132b9cff855af12126a0c3394ec373952 (patch)
tree7270e1271d73e84973c9786689577f9b566a318b /core/modules/networkd-dispatcher/module.build
parent[kiosk*] added README for stage4 (diff)
downloadmltk-c06df3a132b9cff855af12126a0c3394ec373952.tar.gz
mltk-c06df3a132b9cff855af12126a0c3394ec373952.tar.xz
mltk-c06df3a132b9cff855af12126a0c3394ec373952.zip
[networkd-dispatcher] stage4 mod
Diffstat (limited to 'core/modules/networkd-dispatcher/module.build')
-rw-r--r--core/modules/networkd-dispatcher/module.build33
1 files changed, 33 insertions, 0 deletions
diff --git a/core/modules/networkd-dispatcher/module.build b/core/modules/networkd-dispatcher/module.build
new file mode 100644
index 00000000..76ec5a8c
--- /dev/null
+++ b/core/modules/networkd-dispatcher/module.build
@@ -0,0 +1,33 @@
+#!/bin/bash
+fetch_source() {
+ git clone --depth 1 "$REQUIRED_GIT" "${MODULE_WORK_DIR}/src"
+}
+
+build() {
+ : # python script so nothing to build
+}
+
+post_copy() {
+ (
+ set -o errexit
+ local SRCDIR="${MODULE_WORK_DIR}/src/"
+ # figure out where to put files
+ local conf_target="$(grep -oE 'EnvironmentFile=-?\S+' ${SRCDIR}/networkd-dispatcher.service)"
+ conf_target="${conf_target#*/}"
+ conf_target="${conf_target%/*}"
+ [ -z "$conf_target" ] && exit 1
+ local bin_target="$(grep -oE 'ExecStart=(/\S+)' ${SRCDIR}/networkd-dispatcher.service)"
+ bin_target="${bin_target#*/}"
+ [ -z "$bin_target" ] && exit 1
+ # now copy everthing to target
+ mkdir -p "${TARGET_BUILD_DIR}/etc/systemd/system/systemd-networkd.service.wants" \
+ "${TARGET_BUILD_DIR}/${conf_target}"
+ cp "${SRCDIR}/networkd-dispatcher.service" "${TARGET_BUILD_DIR}/etc/systemd/system"
+ cp "${SRCDIR}/networkd-dispatcher.conf" "${TARGET_BUILD_DIR}/${conf_target}"
+ cp "${SRCDIR}/networkd-dispatcher" "${TARGET_BUILD_DIR}/${bin_target}"
+ # set pull dependency on systemd-networkd
+ ln -sf "../networkd-dispatcher.service" \
+ "${TARGET_BUILD_DIR}/etc/systemd/system/systemd-networkd.service.wants/networkd-dispatcher.service"
+ )
+ [ $? -ne 0 ] && perror "Failed to setup networkd-dispatcher"
+}