diff --git a/Makefile b/Makefile index 12f2485..1642567 100644 --- a/Makefile +++ b/Makefile @@ -77,9 +77,8 @@ $(IMAGEBUILDER_CUSTOM_FILES_DIR_PATH): rm -rf "$(IMAGEBUILDER_CUSTOM_FILES_DIR_PATH)" mkdir -p "$(IMAGEBUILDER_CUSTOM_FILES_DIR_PATH)/etc" - echo "# Firmware built with https://forge.cadoles.com/Cadoles/emissary-firmware" > "$(IMAGEBUILDER_CUSTOM_FILES_DIR_PATH)/etc/emissary_firmware" - echo "BUILD_DATE=$(shell date --iso-8601=seconds)" >> "$(IMAGEBUILDER_CUSTOM_FILES_DIR_PATH)/etc/emissary_firmware" - echo "GIT_VERSION=$(GIT_VERSION)" >> "$(IMAGEBUILDER_CUSTOM_FILES_DIR_PATH)/etc/emissary_firmware" + echo "# Firmware built with https://forge.cadoles.com/arcad/emissary-firmware" > "$(IMAGEBUILDER_CUSTOM_FILES_DIR_PATH)/etc/emissary_firmware" + echo "FIRMWARE_VERSION=$(FULL_VERSION)" >> "$(IMAGEBUILDER_CUSTOM_FILES_DIR_PATH)/etc/emissary_firmware" echo "OPENWRT_PROFILE=$(OPENWRT_PROFILE)" >> "$(IMAGEBUILDER_CUSTOM_FILES_DIR_PATH)/etc/emissary_firmware" rm -rf files/* diff --git a/install/emissary-files.mk b/install/emissary-files.mk index 82fb2aa..b8014ec 100644 --- a/install/emissary-files.mk +++ b/install/emissary-files.mk @@ -1,4 +1,4 @@ -install-emissary-files: +install-emissary-files: tools/yq/bin/yq tools/upx/bin/upx mkdir -p files/etc/config cp -r misc/emissary/config/* files/etc/config/ @@ -22,6 +22,9 @@ install-emissary-files: # 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.controllers.sysupgrade.firmwareVersionCommand = ["sh", "-c", "source /etc/emissary_firmware && echo \"$$FIRMWARE_VERSION\""]' files/etc/emissary/agent.yml # Copy emissary binary mkdir -p files/usr/local/bin diff --git a/misc/emissary/keep.d/emissary b/misc/emissary/keep.d/emissary index c827cc6..56f2074 100644 --- a/misc/emissary/keep.d/emissary +++ b/misc/emissary/keep.d/emissary @@ -1,3 +1,3 @@ /etc/machine-id -/var/lib/emissary/agent-key.json -/var/lib/emissary/state.json +/etc/emissary/agent-key.json +/etc/emissary/agent-state.json diff --git a/misc/script/flash.sh b/misc/script/flash.sh index cf4a715..5acb110 100755 --- a/misc/script/flash.sh +++ b/misc/script/flash.sh @@ -6,24 +6,13 @@ ssh-copy-id root@${OPENWRT_DEVICE} TARGET_ARCH=$(ssh root@${OPENWRT_DEVICE} source /etc/os-release \&\& echo \${OPENWRT_BOARD:-\$LEDE_BOARD}) -FIRMWARE_FILE=bin/${OPENWRT_VERSION}/${TARGET_ARCH}/${OPENWRT_PROFILE}/openwrt-*-squashfs-factory.img +FIRMWARE_FILE=bin/${OPENWRT_VERSION}/${TARGET_ARCH}/${OPENWRT_PROFILE}/openwrt-*-sysupgrade.img* FIRMWARE_FILE=${CUSTOM_FIRMWARE_FILE:-$FIRMWARE_FILE} -NOW=$(date +%Y-%m-%d) -BACKUP_FILENAME="backup_${OPENWRT_DEVICE}_${NOW}.tar.gz" - -ssh root@${OPENWRT_DEVICE} \ - rm -f "/tmp/${BACKUP_FILENAME}" \ - \&\& sysupgrade -b "/tmp/${BACKUP_FILENAME}" - -mkdir -p tmp/backups - -scp "root@${OPENWRT_DEVICE}:/tmp/${BACKUP_FILENAME}" ./tmp/backups/ - ssh root@${OPENWRT_DEVICE} \ mkdir -p /tmp/firmwares \ \&\& rm /tmp/firmwares/* \|\| exit 0; scp $FIRMWARE_FILE root@${OPENWRT_DEVICE}:/tmp/firmwares/ -ssh root@${OPENWRT_DEVICE} sysupgrade --force -p -v -n "/tmp/firmwares/$(basename $FIRMWARE_FILE)" \ No newline at end of file +ssh root@${OPENWRT_DEVICE} sysupgrade --force -v -u "/tmp/firmwares/$(basename $FIRMWARE_FILE)" \ No newline at end of file diff --git a/misc/script/restore.sh b/misc/script/restore.sh deleted file mode 100755 index f4cdb9e..0000000 --- a/misc/script/restore.sh +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/bash - -set -o pipefail - -NOW=$(date +%Y-%m-%d) -BACKUP_DATE=${BACKUP_DATE:-${NOW}} -BACKUP_FILENAME="backup_${OPENWRT_DEVICE}_${NOW}.tar.gz" - -printf "%s" "Waiting for ${OPENWRT_DEVICE} ..." -while ! ping -c 1 -n -w 1 ${OPENWRT_DEVICE} &> /dev/null -do - printf "%c" "." -done -printf "\n%s\n" "Server is back online" - -scp "./tmp/backups/${BACKUP_FILENAME}" root@${OPENWRT_DEVICE}:/tmp/ - -ssh root@${OPENWRT_DEVICE} sysupgrade -r "/tmp/${BACKUP_FILENAME}" \ No newline at end of file diff --git a/targets/linksys-wrt.mk b/targets/linksys-wrt.mk new file mode 100644 index 0000000..1a91e90 --- /dev/null +++ b/targets/linksys-wrt.mk @@ -0,0 +1,24 @@ +all: linksys-wrtXXXXac + +linksys-wrtXXXXac: linksys-wrt1200ac linksys-wrt1900ac linksys-wrt3200acm + +linksys-wrt1200ac: + $(MAKE) \ + OPENWRT_TARGET="mvebu/cortexa9" \ + EMISSARY_ARCH="armv6" \ + OPENWRT_PROFILE="linksys_wrt1200ac" \ + build + +linksys-wrt1900ac: + $(MAKE) \ + OPENWRT_TARGET="mvebu/cortexa9" \ + EMISSARY_ARCH="armv7" \ + OPENWRT_PROFILE="linksys_wrt1900ac-v2" \ + build + +linksys-wrt3200acm: + $(MAKE) \ + OPENWRT_TARGET="mvebu/cortexa9" \ + EMISSARY_ARCH="armv7" \ + OPENWRT_PROFILE="linksys_wrt3200acm" \ + build \ No newline at end of file diff --git a/targets/linksys-wrtXXXXac.mk b/targets/linksys-wrtXXXXac.mk deleted file mode 100644 index a744c64..0000000 --- a/targets/linksys-wrtXXXXac.mk +++ /dev/null @@ -1,12 +0,0 @@ -all: linksys-wrtXXXXac - -linksys-wrtXXXXac: linksys-wrt1200ac linksys-wrt1900ac linksys-wrt3200acm - -linksys-wrt1200ac: - $(MAKE) OPENWRT_TARGET="mvebu/cortexa9" EMISSARY_ARCH="armv6" OPENWRT_PROFILE="linksys_wrt1200ac" build - -linksys-wrt1900ac: - $(MAKE) OPENWRT_TARGET="mvebu/cortexa9" EMISSARY_ARCH="armv6" OPENWRT_PROFILE="linksys_wrt1900ac-v2" build - -linksys-wrt3200acm: - $(MAKE) OPENWRT_TARGET="mvebu/cortexa9" EMISSARY_ARCH="armv6" OPENWRT_PROFILE="linksys_wrt3200acm" build \ No newline at end of file diff --git a/targets/turris.mk b/targets/turris.mk index f049899..d205ea4 100644 --- a/targets/turris.mk +++ b/targets/turris.mk @@ -1,9 +1,11 @@ -all: omnia +all: turris + +turris: omnia omnia: $(MAKE) \ ADDITIONAL_INSTALL="" \ OPENWRT_TARGET="mvebu/cortexa9" \ - EMISSARY_ARCH="arm64" \ + EMISSARY_ARCH="armv6" \ OPENWRT_PROFILE="cznic_turris-omnia" \ build \ No newline at end of file