feat(publish): Coolify deploy webhook field for host: coolify - #62
Merged
Merged
Conversation
When Hosting = "Coolify (remote)" is selected in Advanced settings, show a required "Coolify deploy webhook URL" input (+ optional Bearer token) and a "Host with Coolify" link to the self-host docs. Publish is blocked until the webhook URL is filled. The webhook is persisted per-project in localStorage (publish:coolifyWebhook:<id>) and forwarded to the publisher on each publish (coolifyWebhookUrl / coolifyWebhookToken) — never stored server-side or in Build.deployment. Threaded through publishInput, the domain publish procedure, publishProject, and the REST publish.create input (metadata regenerated). Publisher side: webstudio-publisher#37. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017rF3HMB1Z7V3LLsYaUrELs
🧪 Test images for this PR
Point Updated for |
vianmora
added a commit
that referenced
this pull request
Sep 14, 2026
When Hosting = "Coolify (remote)" is selected in Advanced settings, show a required "Coolify deploy webhook URL" input (+ optional Bearer token) and a "Host with Coolify" link to the self-host docs. Publish is blocked until the webhook URL is filled. The webhook is persisted per-project in localStorage (publish:coolifyWebhook:<id>) and forwarded to the publisher on each publish (coolifyWebhookUrl / coolifyWebhookToken) — never stored server-side or in Build.deployment. Threaded through publishInput, the domain publish procedure, publishProject, and the REST publish.create input (metadata regenerated). Publisher side: webstudio-publisher#37. Claude-Session: https://claude.ai/code/session_017rF3HMB1Z7V3LLsYaUrELs Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
vianmora
added a commit
that referenced
this pull request
Sep 21, 2026
When Hosting = "Coolify (remote)" is selected in Advanced settings, show a required "Coolify deploy webhook URL" input (+ optional Bearer token) and a "Host with Coolify" link to the self-host docs. Publish is blocked until the webhook URL is filled. The webhook is persisted per-project in localStorage (publish:coolifyWebhook:<id>) and forwarded to the publisher on each publish (coolifyWebhookUrl / coolifyWebhookToken) — never stored server-side or in Build.deployment. Threaded through publishInput, the domain publish procedure, publishProject, and the REST publish.create input (metadata regenerated). Publisher side: webstudio-publisher#37. Claude-Session: https://claude.ai/code/session_017rF3HMB1Z7V3LLsYaUrELs Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fork side of webstudio-self-host#23 (publisher side: webstudio-publisher#37).
When Hosting = "Coolify (remote)" is selected in the Advanced settings disclosure, the Publish panel shows:
Publish is blocked (button disabled + tooltip) until the webhook URL is filled.
The webhook + token are persisted per-project in
localStorage(publish:coolifyWebhook:<id>/…Token:<id>) and forwarded to the publisher on each publish (coolifyWebhookUrl/coolifyWebhookToken) — never stored server-side or inBuild.deployment(no bundle-schema change, no migration).Threaded through:
publishInput(trpc-interface), thedomain.publishprocedure,publishProject, and the RESTpublish.createinput (metadata regenerated).🤖 Generated with Claude Code
https://claude.ai/code/session_017rF3HMB1Z7V3LLsYaUrELs