Switch Lotus Cinny from nightly dev to stable-release fork workflow
Lint / Shell (shellcheck) (push) Successful in 9s
Lint / JS (eslint) (push) Successful in 7s
Lint / Python (ruff) (push) Successful in 5s
Lint / Python deps (pip-audit) (push) Successful in 55s
Lint / Secret scan (gitleaks) (push) Successful in 5s

- Replace nightly build script with daily upstream release checker
  (cinny/upstream-check.sh) — posts to Matrix as LotusBot when a new
  cinnyapp/cinny stable release is published
- Add cinny/lotus-build.sh — merges latest release tag into the lotus
  branch, builds, deploys; triggered via !cinny-update webhook
- Fork lives at code.lotusguild.org/LotusGuild/cinny (lotus branch, v4.11.1)
- deploy/hooks-lxc106.json — adds cinny-build webhook endpoint (port 9000)
- Update landing page: "dev branch / nightly" → "Lotus fork / stable releases"
- Set LotusBot avatar on @hookshot_tinker-tickets

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-05-13 16:57:35 -04:00
parent 278f850f0c
commit 7f7ddd3e3c
9 changed files with 340 additions and 95 deletions
+16
View File
@@ -14,5 +14,21 @@
}
}
}
},
{
"id": "cinny-build",
"execute-command": "/usr/local/bin/cinny-build.sh",
"command-working-directory": "/opt/lotus-cinny",
"response-message": "Cinny merge + build triggered",
"trigger-rule": {
"match": {
"type": "value",
"value": "a82340fc2f07e6afda097494c34aa3a4877924932a0b063a76106fdab9816ec6",
"parameter": {
"source": "header",
"name": "X-Build-Token"
}
}
}
}
]
+29 -8
View File
@@ -1,6 +1,7 @@
#!/bin/bash
# Auto-deploy script for LXC 106 (cinny)
# Handles: cinny/config.json, cinny/dev-update.sh
# Handles: cinny/config.json, cinny/upstream-check.sh, cinny/lotus-build.sh,
# deploy/hooks-lxc106.json, systemd/cinny-upstream-check.cron
# Triggered by: Gitea webhook on push to main
set -euo pipefail
@@ -11,10 +12,9 @@ CLONE_URL="https://code.lotusguild.org/LotusGuild/matrix.git"
exec >> "$LOG" 2>&1
echo "=== $(date) === LXC106 deploy triggered ==="
# Clone or pull
if [ ! -d "$REPO_DIR/.git" ]; then
git clone "$CLONE_URL" "$REPO_DIR"
CHANGED="cinny/config.json cinny/dev-update.sh"
CHANGED="cinny/config.json cinny/upstream-check.sh cinny/lotus-build.sh deploy/hooks-lxc106.json systemd/cinny-upstream-check.cron"
else
cd "$REPO_DIR"
git fetch --all
@@ -31,11 +31,32 @@ if echo "$CHANGED" | grep -q '^cinny/config.json'; then
echo "✓ config.json deployed"
fi
if echo "$CHANGED" | grep -q '^cinny/dev-update.sh'; then
echo "Deploying cinny dev-update.sh..."
cp "$REPO_DIR/cinny/dev-update.sh" /usr/local/bin/cinny-dev-update.sh
chmod +x /usr/local/bin/cinny-dev-update.sh
echo "✓ dev-update.sh deployed"
if echo "$CHANGED" | grep -q '^cinny/upstream-check.sh'; then
echo "Deploying upstream-check.sh..."
cp "$REPO_DIR/cinny/upstream-check.sh" /usr/local/bin/cinny-upstream-check.sh
chmod +x /usr/local/bin/cinny-upstream-check.sh
echo "✓ upstream-check.sh deployed"
fi
if echo "$CHANGED" | grep -q '^cinny/lotus-build.sh'; then
echo "Deploying lotus-build.sh..."
cp "$REPO_DIR/cinny/lotus-build.sh" /usr/local/bin/cinny-build.sh
chmod +x /usr/local/bin/cinny-build.sh
echo "✓ lotus-build.sh deployed"
fi
if echo "$CHANGED" | grep -q '^deploy/hooks-lxc106.json'; then
echo "Deploying hooks-lxc106.json..."
cp "$REPO_DIR/deploy/hooks-lxc106.json" /etc/webhook/hooks.json
systemctl restart webhook
echo "✓ hooks.json deployed, webhook restarted"
fi
if echo "$CHANGED" | grep -q '^systemd/cinny-upstream-check.cron'; then
echo "Deploying cinny-upstream-check.cron..."
cp "$REPO_DIR/systemd/cinny-upstream-check.cron" /etc/cron.d/cinny-upstream-check
chmod 644 /etc/cron.d/cinny-upstream-check
echo "✓ cron deployed"
fi
echo "=== $(date) === LXC106 deploy complete ==="