12 Commits
Author SHA1 Message Date
Andras Bacsai fc4562ede7 fix(services): treat SERVICE_FQDN_ twin as a copy of SERVICE_URL_ declaration
A service that declares SERVICE_FQDN_X_PORT while the named service declares
SERVICE_URL_X_PORT (same value) now counts as a copy, like an exact copy, so it
does not take the named service's domain. Also replace the Postgres-only
regex in the magic variable loop with the same check in PHP.
2026-10-18 11:29:39 +02:00
Andras Bacsai 699cd361b4 fix(services): keep SERVICE_URL_* on the named service domain
When a compose service copies another service's SERVICE_URL_/SERVICE_FQDN_
declaration (old Twenty template: worker repeats SERVICE_URL_TWENTY_3000),
the parser and updateCompose wrote the variable from the copier's generated
domain, so a custom domain on the named service was lost on every deploy.
Skip exact copies; declarations with another path or port are unchanged.

Closes #11924
2026-10-16 23:05:06 +02:00
Andras Bacsai 3f1235158d fix(domains): detect Docker Compose domain conflicts
Normalize schemes when comparing routing identities and include per-service
Compose domains in conflict checks. Show the conflicting service name and
align the service domains heading layout.
2026-09-10 14:53:01 +02:00
Andras Bacsai 851a902346 fix(domains): preserve removed compose service domains 2026-09-04 16:47:12 +02:00
Andras BacsaiandShadowArcanist 8ae56587d5 feat(ui): Shadow UI redesign, domain management, and DNS autoconfigure (#11119)
Co-authored-by: ShadowArcanist <162910371+ShadowArcanist@users.noreply.github.com>
2026-08-03 23:11:54 +02:00
Andras Bacsai 0b843bb07c fix(compose): normalize service-name keys for domains and env vars (#11040) 2026-08-03 23:08:56 +02:00
Andras Bacsai bce871d991 fix(domains): reject non-HTTP URL schemes 2026-07-07 12:20:26 +02:00
Osamaali313 74b1077010 fix: accept underscores in domain hostnames for API URL validation
PHP's FILTER_VALIDATE_URL rejects underscores in the host, so domains
like https://myapp_service.example.com were rejected by the API and
never got a Let's Encrypt certificate. Add an isValidDomainUrl() helper
that validates a copy with underscores replaced by hyphens, and route
domain validation in the Applications and Services API controllers
through it.

Fixes #10597
2026-06-13 22:46:04 +03:00
peaklabs-dev fb56959418 fix(api): include docker_compose_domains in domain conflict check 2026-01-14 15:22:43 +01:00
Andras Bacsai 75b61a6b00 feat(domains): add force_domain_override option and enhance domain conflict detection responses 2025-08-28 11:21:30 +02:00
Andras Bacsai 80499a03d8 feat(domains): implement domain conflict detection and user confirmation modal across application components 2025-08-28 10:52:41 +02:00
Andras Bacsai e0aa28ba31 refactor(domains): rename check_domain_usage to checkDomainUsage and update references across the application 2025-08-28 10:00:19 +02:00