feat(ssl): add automatic Let's Encrypt provisioning for primary OneUp… #318

Closed
opened 2026-04-05 16:19:21 +02:00 by MrUnknownDE · 0 comments
Owner

Originally created by @simlarsen on 10/30/2025

…time host

  • Introduce ENABLE_SSL_PROVIONING_FOR_ONEUPTIME env flag (EnvironmentConfig, docker-compose, config.example)
  • Add Helm chart support: values.yaml, values.schema.json, _helpers.tpl, and README entry
  • Add DB fields to GlobalConfig for oneuptime SSL certificate, key, issuedAt and expiresAt
  • Implement OneuptimeSslCertificateService to request/renew certs and persist to GlobalConfig
  • Add worker cron (OneuptimeCerts) to ensure provisioning runs regularly
  • Add WriteOneuptimeCertToDisk job and hook into Nginx startup to write certs to /etc/nginx/certs/OneUptime
  • Update Nginx templates and run.sh to load certificate directives, serve ACME challenge endpoint and handle redirects
  • Extend Greenlock.orderCert to support onCertificateIssued callback and optional persistence of ACME certificates
  • Minor: update .gitignore to include OneUptime cert paths

Title of this pull request?

Small Description?

Pull Request Checklist:

  • Please make sure all jobs pass before requesting a review.
  • Put closes #XXXX in your comment to auto-close the issue that your PR fixes (if such).
  • Have you lint your code locally before submission?
  • Did you write tests where appropriate?

Screenshots (if appropriate):

*Originally created by @simlarsen on 10/30/2025* …time host - Introduce ENABLE_SSL_PROVIONING_FOR_ONEUPTIME env flag (EnvironmentConfig, docker-compose, config.example) - Add Helm chart support: values.yaml, values.schema.json, _helpers.tpl, and README entry - Add DB fields to GlobalConfig for oneuptime SSL certificate, key, issuedAt and expiresAt - Implement OneuptimeSslCertificateService to request/renew certs and persist to GlobalConfig - Add worker cron (OneuptimeCerts) to ensure provisioning runs regularly - Add WriteOneuptimeCertToDisk job and hook into Nginx startup to write certs to /etc/nginx/certs/OneUptime - Update Nginx templates and run.sh to load certificate directives, serve ACME challenge endpoint and handle redirects - Extend Greenlock.orderCert to support onCertificateIssued callback and optional persistence of ACME certificates - Minor: update .gitignore to include OneUptime cert paths ### Title of this pull request? ### Small Description? ### Pull Request Checklist: - [ ] Please make sure all jobs pass before requesting a review. - [ ] Put `closes #XXXX` in your comment to auto-close the issue that your PR fixes (if such). - [ ] Have you lint your code locally before submission? - [ ] Did you write tests where appropriate? ### Related Issue? ### Screenshots (if appropriate):
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github/oneuptime#318