Files
openchamber/.gitea/workflows/deploy-custom.yml
T

38 lines
1.5 KiB
YAML

name: deploy-custom
on:
push:
branches: [custom]
jobs:
deploy:
runs-on: linux-amd64
steps:
- name: Checkout
run: |
rm -rf $GITHUB_WORKSPACE/repo
mkdir -p $GITHUB_WORKSPACE/repo
git clone --depth 1 --branch custom gitea@giteassh.buzzbee.dev:Vibing/openchamber.git $GITHUB_WORKSPACE/repo
- name: Show revision
run: git -C $GITHUB_WORKSPACE/repo rev-parse --short HEAD
- name: Copy workspace to build dir
run: |
rm -rf /opt/app/deploy/custom-build
mkdir -p /opt/app/deploy/custom-build
tar -C $GITHUB_WORKSPACE/repo --exclude=.git -cf - . | tar -C /opt/app/deploy/custom-build -xf -
- name: Install dependencies
run: cd /opt/app/deploy/custom-build && bun install --frozen-lockfile
- name: Build web
run: cd /opt/app/deploy/custom-build && bun run build:web
- name: Verify dist
run: test -f /opt/app/deploy/custom-build/packages/web/dist/index.html
- name: Swap current symlink
run: ln -sfn /opt/app/deploy/custom-build /opt/app/deploy/current
- name: Restart service
run: sudo systemctl restart openchamber-custom
- name: Notify on successful deploy
run: |
SHA=$(git -C $GITHUB_WORKSPACE/repo rev-parse HEAD)
MSG=$(git -C $GITHUB_WORKSPACE/repo log -1 --format=%s)
AUTHOR=$(git -C $GITHUB_WORKSPACE/repo log -1 --format=%an)
/opt/app/.local/bin/openchamber-notify-deploy.sh "$SHA" "$MSG" "$AUTHOR"