diff --git a/.forgejo/workflows/botserver.yaml b/.forgejo/workflows/botserver.yaml new file mode 100644 index 0000000..3fe38c9 --- /dev/null +++ b/.forgejo/workflows/botserver.yaml @@ -0,0 +1,30 @@ +name: BotServer CI +on: + push: + branches: [main] + paths: + - 'botserver/**' + - 'botlib/**' +jobs: + build: + runs-on: gbo + steps: + - name: Setup + run: | + cd /opt/gbo/work/botserver + git rebase --abort 2>/dev/null || true + git reset --hard HEAD && git clean -fd && git pull + git submodule update --init --recursive botlib botserver + - name: Build + run: | + cd /opt/gbo/work/botserver + cargo build -p botserver + - name: Deploy + run: | + sudo incus exec system -- systemctl stop botserver || true + sudo incus exec system -- pkill -x botserver || true + sleep 1 + sudo incus file push /opt/gbo/work/botserver/target/debug/botserver system:/opt/gbo/bin/botserver --mode=0755 + sudo incus exec system -- systemctl start botserver + sleep 2 + sudo incus exec system -- pgrep -x botserver && echo "✅ Deployed" || echo "❌ Failed"