From aa314a939faff9588d30342eec74d0c3b0f33026 Mon Sep 17 00:00:00 2001 From: William Petit Date: Wed, 29 Mar 2023 12:23:28 +0200 Subject: [PATCH] feat: move all emissary 'data' files to /data --- install/emissary-files.mk | 18 ++++++++++++------ misc/emissary/keep.d/emissary | 5 +++-- misc/emissary/profile.d/99-emissary.sh | 3 +++ misc/emissary/uci-defaults/99-emissary.sh | 2 +- 4 files changed, 19 insertions(+), 9 deletions(-) create mode 100644 misc/emissary/profile.d/99-emissary.sh diff --git a/install/emissary-files.mk b/install/emissary-files.mk index b8014ec..eb94916 100644 --- a/install/emissary-files.mk +++ b/install/emissary-files.mk @@ -12,6 +12,10 @@ install-emissary-files: tools/yq/bin/yq tools/upx/bin/upx mkdir -p files/lib/upgrade/keep.d cp -r misc/emissary/keep.d/* files/lib/upgrade/keep.d/ + # Copy profile.d files + mkdir -p files/etc/profile.d + cp -r misc/emissary/profile.d/* files/etc/profile.d/ + mkdir -p gitea-dl/emissary-agent_linux_$(EMISSARY_ARCH) cd gitea-dl && tar -xzf emissary-agent_*_linux_$(EMISSARY_ARCH).tar.gz -C emissary-agent_linux_$(EMISSARY_ARCH) @@ -22,9 +26,11 @@ install-emissary-files: tools/yq/bin/yq tools/upx/bin/upx # Patch agent config tools/yq/bin/yq -i '.agent.serverUrl = "$${EMISSARY_SERVER_URL}"' files/etc/emissary/agent.yml tools/yq/bin/yq -i '.agent.reconciliationInterval = "$${EMISSARY_RECONCILIATION_INTERVAL}"' files/etc/emissary/agent.yml - tools/yq/bin/yq -i '.agent.privateKeyPath = "/etc/emissary/agent-key.json"' files/etc/emissary/agent.yml - tools/yq/bin/yq -i '.agent.controllers.persistence.stateFile = "/etc/emissary/agent-state.json"' files/etc/emissary/agent.yml + tools/yq/bin/yq -i '.agent.privateKeyPath = "/data/emissary/agent-key.json"' files/etc/emissary/agent.yml + tools/yq/bin/yq -i '.agent.controllers.persistence.stateFile = "/data/emissary/agent-state.json"' files/etc/emissary/agent.yml tools/yq/bin/yq -i '.agent.controllers.sysupgrade.firmwareVersionCommand = ["sh", "-c", "source /etc/emissary_firmware && echo \"$$FIRMWARE_VERSION\""]' files/etc/emissary/agent.yml + tools/yq/bin/yq -i '.agent.controllers.app.dataDir = "/data/emissary/apps/data"' files/etc/emissary/agent.yml + tools/yq/bin/yq -i '.agent.controllers.app.downloadDir = "/data/emissary/apps/bundles"' files/etc/emissary/agent.yml # Copy emissary binary mkdir -p files/usr/local/bin @@ -32,10 +38,10 @@ install-emissary-files: tools/yq/bin/yq tools/upx/bin/upx chmod +x files/usr/local/bin/emissary # Set defaults - mkdir -p files/etc/emissary - rm -rf files/etc/emissary/default.conf - echo "EMISSARY_RECONCILIATION_INTERVAL='$(EMISSARY_RECONCILIATION_INTERVAL)'" > files/etc/emissary/default.conf - echo "EMISSARY_SERVER_URL='$(EMISSARY_SERVER_URL)'" >> files/etc/emissary/default.conf + mkdir -p files/data/emissary + rm -rf files/data/emissary/default.conf + echo "EMISSARY_RECONCILIATION_INTERVAL='$(EMISSARY_RECONCILIATION_INTERVAL)'" > files/data/emissary/default.conf + echo "EMISSARY_SERVER_URL='$(EMISSARY_SERVER_URL)'" >> files/data/emissary/default.conf # Compress emissary binary tools/upx/bin/upx -9 files/usr/local/bin/emissary \ No newline at end of file diff --git a/misc/emissary/keep.d/emissary b/misc/emissary/keep.d/emissary index 56f2074..efc946f 100644 --- a/misc/emissary/keep.d/emissary +++ b/misc/emissary/keep.d/emissary @@ -1,3 +1,4 @@ /etc/machine-id -/etc/emissary/agent-key.json -/etc/emissary/agent-state.json +/data/emissary/agent-key.json +/data/emissary/agent-state.json +/data/emissary/apps/data diff --git a/misc/emissary/profile.d/99-emissary.sh b/misc/emissary/profile.d/99-emissary.sh new file mode 100644 index 0000000..c2b0c78 --- /dev/null +++ b/misc/emissary/profile.d/99-emissary.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +export PATH="${PATH}:/usr/local/bin" \ No newline at end of file diff --git a/misc/emissary/uci-defaults/99-emissary.sh b/misc/emissary/uci-defaults/99-emissary.sh index 88917b3..c8f27e6 100644 --- a/misc/emissary/uci-defaults/99-emissary.sh +++ b/misc/emissary/uci-defaults/99-emissary.sh @@ -3,7 +3,7 @@ set -e main() { - local default_config="/etc/emissary/default.conf" + local default_config="/data/emissary/default.conf" if [ ! -f "${default_config}" ]; then exit 0