Skip to content

chore(deploy): upgrade the docs deploy to dash 4 and repoint at zoolutions - #25

Merged
mhenrixon merged 1 commit into
mainfrom
chore/deploy-dash
Aug 27, 2026
Merged

mhenrixon merged 1 commit into
mainfrom
chore/deploy-dash

Conversation

@mhenrixon

@mhenrixon mhenrixon commented Aug 27, 2026

Copy link
Copy Markdown
Collaborator

Summary

Fleet-wide follow-up to zoolutions/docs-kit#74 (docs-kit 1.1.0): the docs site deploys with dash 4 and the repo's live references point at zoolutions/phlex-forms.

  • docs/config/deploy.yml: minimum_version: 4.0.0, retain_containers: 2, error_pages_path: public (+ public/502|503|504.html), and the dash-proxy per-app block — compress, cache { enabled, max_ttl: 300 }, security headers, intercept_errors [502,503,504], exclude_metrics_paths [/up]
  • docs/.kamal/secretsdocs/.dash/secrets with DASH_REGISTRY_PASSWORD (docs-kit's reusable workflow exports both names — no flag day)
  • docs/.dockerignore excludes /.dash/ next to /.kamal/
  • Live links / badges / gemspec URLs → zoolutions/phlex-forms; CHANGELOG / UPGRADING / blog history untouched (GitHub redirects the old owner)

Deliberately not set: proxy.run (host-wide, shared by every docs site on the host) and rate_limit / deny_ips / client_ip (need the tunnel's address as trusted_proxies).

Test plan

  • dash config (dash main @ 4.0.0) accepts the new deploy.yml
  • CI green
  • After merge: run Deploy docs (workflow_dispatch) — expect the dash doctor report, the one-off kamal-proxy → dash-proxy rename if this is the first dash 4 deploy on the host (short outage), then a healthy phlex-forms.zoolutions.llc

https://claude.ai/code/session_01SdEc37DFCkYzwpQpadu9My


Summary by cubic

Upgrades the docs deploy from Kamal to dash 4 and repoints live references from mhenrixon/phlex-forms to zoolutions/phlex-forms. The first dash 4 deploy on the shared host renames kamal-proxy to dash-proxy with a short outage that whichever site deploys first pays.

Migration

  • Requires dash >= 4.0.0 via minimum_version, keeps 2 old containers, and serves public/502|503|504.html during deploy gaps.
  • Enables compression, a response cache with a 300s TTL, response security headers, and excludes /up from metrics.
  • Moves secrets from docs/.kamal/secrets to docs/.dash/secrets with DASH_REGISTRY_PASSWORD; the workflow exports both names, so there's no flag day.
  • .dockerignore excludes /.dash/; README references point at zoolutions/phlex-forms while changelog and upgrade history stay untouched.

Written for commit e793cab. Summary will update on new commits.

Review in cubic

…tions

- config/deploy.yml: minimum_version 4.0.0, retain_containers 2,
  error_pages_path + public/502|503|504.html, and the dash-proxy per-app
  features (compress, response cache, security headers, intercept_errors,
  exclude_metrics_paths) — the same block docs-kit 1.1.0 scaffolds
- .kamal/secrets → .dash/secrets with DASH_REGISTRY_PASSWORD (docs-kit's
  reusable workflow exports both names, so this is not a flag day)
- .dockerignore excludes /.dash/ alongside the legacy /.kamal/
- live repo links/badges/gemspec URLs repointed mhenrixon/phlex-forms → zoolutions/phlex-forms
  (changelog and upgrade history left as-is; GitHub redirects them)

The first dash 4 deploy on the shared host renames the proxy
(kamal-proxy → dash-proxy) with one short outage; whichever site deploys
first pays it.

Claude-Session: https://claude.ai/code/session_01SdEc37DFCkYzwpQpadu9My
@mhenrixon
mhenrixon merged commit 91c8d1f into main Aug 27, 2026
4 checks passed
@mhenrixon
mhenrixon deleted the chore/deploy-dash branch August 27, 2026 15:32
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.

1 participant