refactor!: rename the project from Monitor to MoShiro
Namespaces, assemblies, projects and directories, the solution, binaries, images, systemd units, config paths, environment variables, protocol method names, the media type and the raw chunk magic all move to MoShiro/moshiro. Existing data and deployments are not compatible and must be recreated. Also fix the architecture tests after the solution layout change and make the update tests independent of their order.
This commit is contained in:
1 parent
17b35223aa
commit
83e5120377
309 files changed
+1505
-1499
No files matched your search
+23
-23
@@ -1,18 +1,18 @@
|
||||
#!/bin/sh
|
||||
# Installs monitor-agent or monitor-probe from an extracted release directory (the directory this script lives in).
|
||||
# Installs moshiro-agent or moshiro-probe from an extracted release directory (the directory this script lives in).
|
||||
# POSIX sh: runs on Debian/Ubuntu/Alpine/OpenWrt (busybox).
|
||||
#
|
||||
# ./install.sh agent --server https://panel.example.com --join <join-token> --name hk-1
|
||||
# ./install.sh probe [--probe-json /path/to/probe.json]
|
||||
# ./install.sh uninstall agent|probe [--purge]
|
||||
#
|
||||
# Binaries go to /usr/lib/monitor (root-owned: the collector cannot rewrite its own executable);
|
||||
# config and identity go to /etc/monitor (owned by the unprivileged `monitor` user).
|
||||
# Binaries go to /usr/lib/moshiro (root-owned: the collector cannot rewrite its own executable);
|
||||
# config and identity go to /etc/moshiro (owned by the unprivileged `moshiro` user).
|
||||
set -eu
|
||||
|
||||
PREFIX=/usr/lib/monitor
|
||||
CONFIG=/etc/monitor
|
||||
USER_NAME=monitor
|
||||
PREFIX=/usr/lib/moshiro
|
||||
CONFIG=/etc/moshiro
|
||||
USER_NAME=moshiro
|
||||
HERE="$(cd "$(dirname "$0")" && pwd)"
|
||||
|
||||
# busybox on OpenWrt has no `install`
|
||||
@@ -95,22 +95,22 @@ install_role() {
|
||||
if [ "$have_user" -eq 1 ]; then chown "$USER_NAME" "$CONFIG"; fi
|
||||
chmod 0750 "$CONFIG"
|
||||
|
||||
install_binary "monitor-$role"
|
||||
install_binary "moshiro-$role"
|
||||
if [ "$role" = agent ]; then install_binary fleet-enroll; fi
|
||||
say "installed binaries to $PREFIX"
|
||||
|
||||
init="$(init_system)"
|
||||
case "$init" in
|
||||
systemd)
|
||||
put 0644 "$HERE/systemd/monitor-$role.service" "/etc/systemd/system/monitor-$role.service"
|
||||
if [ "$have_user" -eq 0 ]; then sed -i '/^User=/d;/^Group=/d' "/etc/systemd/system/monitor-$role.service"; fi
|
||||
put 0644 "$HERE/systemd/moshiro-$role.service" "/etc/systemd/system/moshiro-$role.service"
|
||||
if [ "$have_user" -eq 0 ]; then sed -i '/^User=/d;/^Group=/d' "/etc/systemd/system/moshiro-$role.service"; fi
|
||||
systemctl daemon-reload ;;
|
||||
procd)
|
||||
[ "$role" = probe ] || die "the agent is meant for servers; on OpenWrt only the probe is supported"
|
||||
put 0755 "$HERE/openwrt/monitor-probe.init" /etc/init.d/monitor-probe
|
||||
put 0755 "$HERE/openwrt/moshiro-probe.init" /etc/init.d/moshiro-probe
|
||||
mkdir -p /lib/upgrade/keep.d
|
||||
put 0644 "$HERE/openwrt/monitor.keep" /lib/upgrade/keep.d/monitor ;;
|
||||
*) echo "warning: no systemd or procd found: start $PREFIX/monitor-$role --config $CONFIG/$role.json with your own supervisor" >&2 ;;
|
||||
put 0644 "$HERE/openwrt/moshiro.keep" /lib/upgrade/keep.d/moshiro ;;
|
||||
*) echo "warning: no systemd or procd found: start $PREFIX/moshiro-$role --config $CONFIG/$role.json with your own supervisor" >&2 ;;
|
||||
esac
|
||||
|
||||
ready=0
|
||||
@@ -136,18 +136,18 @@ install_role() {
|
||||
|
||||
if [ "$ready" -eq 1 ] && [ "$no_start" -eq 0 ]; then
|
||||
case "$init" in
|
||||
systemd) systemctl enable --now "monitor-$role" ;;
|
||||
procd) /etc/init.d/monitor-probe enable; /etc/init.d/monitor-probe restart ;;
|
||||
systemd) systemctl enable --now "moshiro-$role" ;;
|
||||
procd) /etc/init.d/moshiro-probe enable; /etc/init.d/moshiro-probe restart ;;
|
||||
esac
|
||||
say "monitor-$role is installed"
|
||||
say "moshiro-$role is installed"
|
||||
else
|
||||
say "installed, not started yet. Next:"
|
||||
if [ "$role" = agent ]; then
|
||||
echo " $PREFIX/fleet-enroll --server <panel-url> --join <token> --name <name> --identity-dir $CONFIG (as the '$USER_NAME' user)"
|
||||
echo " write $CONFIG/agent.json (see README.md), then: systemctl enable --now monitor-agent"
|
||||
echo " write $CONFIG/agent.json (see README.md), then: systemctl enable --now moshiro-agent"
|
||||
else
|
||||
echo " save the panel's probe identity (POST /api/admin/probe/identity) as $CONFIG/probe.json (mode 0600, owner $USER_NAME)"
|
||||
echo " then: systemctl enable --now monitor-probe (OpenWrt: /etc/init.d/monitor-probe enable && /etc/init.d/monitor-probe start)"
|
||||
echo " then: systemctl enable --now moshiro-probe (OpenWrt: /etc/init.d/moshiro-probe enable && /etc/init.d/moshiro-probe start)"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
@@ -157,15 +157,15 @@ uninstall() {
|
||||
if [ "${2:-}" = "--purge" ]; then purge=1; fi
|
||||
case "$(init_system)" in
|
||||
systemd)
|
||||
systemctl disable --now "monitor-$role" 2>/dev/null || true
|
||||
rm -f "/etc/systemd/system/monitor-$role.service"
|
||||
systemctl disable --now "moshiro-$role" 2>/dev/null || true
|
||||
rm -f "/etc/systemd/system/moshiro-$role.service"
|
||||
systemctl daemon-reload ;;
|
||||
procd)
|
||||
/etc/init.d/monitor-probe stop 2>/dev/null || true
|
||||
/etc/init.d/monitor-probe disable 2>/dev/null || true
|
||||
rm -f /etc/init.d/monitor-probe /lib/upgrade/keep.d/monitor ;;
|
||||
/etc/init.d/moshiro-probe stop 2>/dev/null || true
|
||||
/etc/init.d/moshiro-probe disable 2>/dev/null || true
|
||||
rm -f /etc/init.d/moshiro-probe /lib/upgrade/keep.d/moshiro ;;
|
||||
esac
|
||||
rm -f "$PREFIX/monitor-$role"
|
||||
rm -f "$PREFIX/moshiro-$role"
|
||||
if [ "$role" = agent ]; then rm -f "$PREFIX/fleet-enroll"; fi
|
||||
rmdir "$PREFIX" 2>/dev/null || true
|
||||
if [ "$purge" -eq 1 ]; then
|
||||
|
||||
Reference in new issue
Block a user