38 lines
1.5 KiB
YAML
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"
|