- Alpine 3.23 (in serversideup/php:8.4-fpm-nginx-alpine) ships pg17, not pg15
- Add .forgejo/workflows/build.yml for automated image builds on push to mapledeploy
Use mapledeploy.ca/api/logo/lockup for light/dark logo images
in navbar, mobile header, auth pages, and force-password-reset.
Remove unused mapledeploy-logo.svg.
Replace all Coolify branding with MapleDeploy across 111 files:
- Logo, favicon, and color palette (Canadian red scale, stone greys)
- Fonts: Overlock for headings, Inter for body (self-hosted woff2/ttf)
- All ~70 page titles updated to "| MapleDeploy"
- Auth pages, navbar, footer, email templates, settings, boarding flow
- Remove Hetzner provider, Coolify Cloud upsells, sponsorship popups
- Disable telemetry (Sentry DSN null, undead.coolify.io ping disabled)
- Point auto-update to MapleDeploy Forgejo registry image
- Redirect help/support links to mapledeploy.ca/contact
- Add AGPL source code link to Forgejo repo in navbar
- OpenAPI docs rebranded to MapleDeploy
- added dockerfile_location as it is needed for Dockerfile deployments to work properly
- added is_spa as it makes sense together with is_static
- added is_auto_deploy_enabled and is_force_https_enabled
- rename fqdn to urls as that is what it actually is
- improve URL validation to allow urls without a TLD
- improve error messages to make it clear that URLs are needed
- improve code by combining some actions
- add force_domain_override functionality and docs
- delete service on creation if there is URL conflicts as otherwise we will have stale services (we need to create the service because we need to parse it and more)
- remove `docker_compose_raw` from post and patch endpoints, as the compose file is sourced from git and should not be manually settable via the api
- improve the documentation for `docker_compose_domains` (URLs)
- enhanced array validation for `docker_compose_domains` by validating each array field and verifying which fields are allowed
- set a custom array validation error message, as the default message is not really clear
- show an error if the user attempts to set `domains` when the build pack is `dockercompose`
- validate that the `domains` in `docker_compose_domains` are proper URLs and include a valid scheme (`http` or `https`)