Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 6 additions & 3 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
name: Deploy to Production

# Fork policy: NO automated deployment. Servers pull the GHCR image built by
# build-docker.yml manually (no staging / blue-green setup yet). This used to
# run on every tag push and mirror main into a `release` branch; it is kept
# for manual promotion only. Note: it requires a GH_TOKEN secret (PAT with
# repo scope) which is not configured in this fork.
on:
push:
tags:
- '*'
workflow_dispatch:

jobs:
deploy:
Expand Down
32 changes: 25 additions & 7 deletions .github/workflows/sync-upstream.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ jobs:
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 22
node-version: 24

- name: Configure Git Identity
run: |
Expand Down Expand Up @@ -111,12 +111,30 @@ jobs:
git tag -fa "$BETA_TAG" -m "Beta Release $BETA_TAG - Crove Sign"
git push origin "$BETA_TAG" --force

# 6. Create Pre-release on GitHub
echo "📦 Creating GitHub Pre-Release for $BETA_TAG..."
gh release create "$BETA_TAG" \
--title "Crove Sign $BETA_TAG" \
--prerelease \
--notes "Automated beta release synchronized from upstream Documenso $TARGET_TAG. Includes Crove Sign Enterprise Branding, Multi-language (Vietnamese) support, Hybrid Org Sync, and OIDC Authentication. Ready for Beta deployment." || true
# 6. Trigger the GHCR image builds explicitly.
# Pushes made with GITHUB_TOKEN do NOT trigger other workflows
# (GitHub blocks recursive runs), so build-docker.yml would never
# fire on its own - that is why beta images were never built.
# workflow_dispatch IS allowed from GITHUB_TOKEN, so dispatch the
# builds here. This only builds and pushes images to GHCR; there is
# NO deployment step - servers pull the image manually (no
# staging/blue-green automation in this fork by design).
echo "🐳 Dispatching GHCR image build for tag $BETA_TAG..."
gh workflow run build-docker.yml --ref "$BETA_TAG"
echo "🐳 Dispatching GHCR image build for dev branch..."
gh workflow run build-docker.yml --ref dev

# 7. Create Pre-release on GitHub (no silent failure: the previous
# `|| true` hid release-create errors for every beta so far).
echo "📦 Ensuring GitHub Pre-Release for $BETA_TAG..."
if gh release view "$BETA_TAG" >/dev/null 2>&1; then
echo "ℹ️ Release $BETA_TAG already exists; leaving it as-is."
else
gh release create "$BETA_TAG" \
--title "Crove Sign $BETA_TAG" \
--prerelease \
--notes "Automated beta release synchronized from upstream Documenso $TARGET_TAG. Includes Crove Sign Enterprise Branding, Multi-language (Vietnamese) support, Hybrid Org Sync, and OIDC Authentication. Image: ghcr.io/dos/crove-sign:$BETA_TAG (build dispatched - pull manually on the server; no auto-deploy)."
fi

echo "synced=true" >> "$GITHUB_OUTPUT"
echo "version_tag=$BETA_TAG" >> "$GITHUB_OUTPUT"
Expand Down
Loading