Adds enum certificate_source to pages_domains table
with default manually_uploaded
Mark certificates as 'gitlab_provided'
if the were obtained through Let's Encrypt
Mark certificates as 'user_provided' if they were uploaded through
controller or api
Only show private key in domain edit form if it is 'user_provided'
Only show LetsEncrypt option if is enabled by application settings
(and feature flag)
Refactor and fix some specs to match new logic
Don't show Let's Encrypt certificates as well
This commit adds an auto SSL toggle switch to the settings page of
GitLab Pages domains. This toggle enable or disabled auto SSL
management via Let's Encrypt. Toggling the button dynamically
updates the form using client-side JavaScript. All changes are behind
feature flags.