quality / commitlint (push) Skipped
CD / update-wiki (push) Successful in 8s
quality / changes (push) Successful in 10s
quality / docker-check (push) Skipped
quality / web (push) Successful in 1m8s
quality / api (push) Successful in 1m9s
CD / quality (push) Successful in 2m31s
CD / publish (push) Successful in 1m35s
- Added new endpoints for listing and checking service certificates, improving visibility into SSL status. - Integrated certificate monitoring options into service binding updates, allowing for flexible SSL management. - Updated the service detail grid to include SSL monitoring controls, enhancing user interaction with certificate settings. - Refactored related components and schemas to support the new certificate features, ensuring consistency across the application. - Improved test coverage for certificate functionalities, validating the new features and ensuring reliability.
38 lines
950 B
SQL
38 lines
950 B
SQL
ALTER TABLE service_bindings ADD COLUMN cert_monitoring TEXT NOT NULL DEFAULT 'auto'
|
|
CHECK (cert_monitoring IN ('auto', 'required', 'skipped'));
|
|
|
|
ALTER TABLE certificates ADD COLUMN service_id INTEGER REFERENCES services(id) ON DELETE SET NULL;
|
|
|
|
UPDATE service_bindings
|
|
SET cert_monitoring = COALESCE(
|
|
(
|
|
SELECT d.cert_monitoring FROM domains d
|
|
WHERE d.id = service_bindings.domain_id
|
|
),
|
|
'auto'
|
|
)
|
|
WHERE hostname = '@';
|
|
|
|
UPDATE service_bindings
|
|
SET cert_monitoring = COALESCE(
|
|
(
|
|
SELECT s.cert_monitoring FROM subdomains s
|
|
WHERE s.domain_id = service_bindings.domain_id
|
|
AND s.name = service_bindings.hostname
|
|
),
|
|
'auto'
|
|
)
|
|
WHERE hostname != '@';
|
|
|
|
UPDATE certificates
|
|
SET service_id = (
|
|
SELECT sb.service_id
|
|
FROM service_bindings sb
|
|
JOIN domains d ON d.id = sb.domain_id
|
|
WHERE CASE
|
|
WHEN sb.hostname = '@' THEN d.zone_name
|
|
ELSE sb.hostname || '.' || d.zone_name
|
|
END = certificates.hostname
|
|
LIMIT 1
|
|
);
|