Skip to content

Add automated production deployment workflow#74

Merged
pablo-mayrgundter merged 1 commit into
mainfrom
claude/deploy-prod-cross-repo
May 19, 2026
Merged

Add automated production deployment workflow#74
pablo-mayrgundter merged 1 commit into
mainfrom
claude/deploy-prod-cross-repo

Conversation

@pablo-mayrgundter

Copy link
Copy Markdown
Collaborator

Summary

Adds automated deployment of the built site to the production celestiary.github.io repository on every push to main, and updates deployment documentation to reflect the new workflow.

Changes

  • New workflow: .github/workflows/deploy-prod.yml automatically builds the site with BASE_PATH=/ and deploys to the celestiary/celestiary.github.io repository's gh-pages branch via SSH deploy key
  • Updated documentation: README.md now explains both deployment paths:
    • Project page at celestiary.github.io/web/ (via existing gh-pages.yml)
    • User page at celestiary.github.io/ (via new deploy-prod.yml)
    • PR previews at celestiary.github.io/web/pr-preview/pr-NNN/ (via existing pr-preview.yml)

Implementation Details

  • Workflow is conditional on the CELESTIARY_GITHUB_IO_DEPLOY_KEY secret being configured, allowing graceful handling during initial setup
  • Uses JamesIves/github-pages-deploy-action@v4.8.0 to push built artifacts to the external repository
  • Includes proper git configuration for automated commits
  • Concurrency group prevents simultaneous deployments

https://claude.ai/code/session_01UidMryu4p3799b8osxdtPR

Replace the manual "pull from upstream, push" sync flow with a workflow
that, on push to main, rebuilds with BASE_PATH=/ and pushes the artifact
to celestiary/celestiary.github.io's gh-pages branch via JamesIves's
github-pages-deploy-action using an SSH deploy key
(secret CELESTIARY_GITHUB_IO_DEPLOY_KEY).

The deploy job is gated on the secret existing so first-time setup
doesn't fail the workflow before keys are wired up.  Build runs twice on
push to main (BASE_PATH=/web/ for the project page, BASE_PATH=/ for the
user page) — the JS bundle is identical since base resolution is
runtime-derived from <base href>, only the HTML template differs.

README's Deploy section now documents the project / user / preview
flows instead of the manual git-pull-push recipe.

One-time setup (cannot be automated from this repo):
  - generate an ed25519 keypair
  - add public half as a Deploy Key with write access on
    celestiary/celestiary.github.io
  - add private half as secret CELESTIARY_GITHUB_IO_DEPLOY_KEY here
  - on celestiary.github.io: Pages -> Deploy from branch -> gh-pages / (root)
  - on celestiary.github.io: disable the existing gh-pages.yml workflow
    so it doesn't fight with these pushes
@github-actions

github-actions Bot commented May 19, 2026

Copy link
Copy Markdown
PR Preview Action v1.8.1
Preview removed because the pull request was closed.
2026-05-19 20:42 UTC

@pablo-mayrgundter pablo-mayrgundter merged commit e15ed60 into main May 19, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants