EE: 45560 provide zero configuration domain name for auto devops using nip io
requested to merge ee-45560-provide-zero-configuration-domain-name-for-auto-devops-using-nip-io into master
What does this MR do?
- Implements EE multi-cluster ingress default domains
- Implements EE override for
DeploymentPlatform#find_cluster
- Moves
AUTO_DEVOPS_DOMAIN
toproject#auto_devops_domain_variable
, which is then used inCI::Build#persisted_environment_variables
- Implements EE override for
This follows the following rules of precedence :
- cluster(s) IP based domain
- Auto DevOps domain or instance domain
- CI scoped variables (Settings > CI/CD > Variables,
AUTO_DEVOPS_DOMAIN
, with any environment scope)
NOTE : The move to deployment_variables basically means that AUTO_DEVOPS_DOMAIN
variable will now only be available for the jobs that sets a environment
in the gitlab-ci.yaml file.
Are there points in the code the reviewer needs to double check?
Why was this MR needed?
Add support for multi-cluster scenario
Screenshots (if relevant)
Development tasks
-
Support multiple ingress default domains -
add deployment_cluster to DeploymentPlatform -
Move user provided value for AUTO_DEVOPS_DOMAIN
from project#predefined_variables to project#deployment_variables -
Set ingress default_domain for each environment in project#predefined_variables
-
- [-] Help text for multiple clusters
Does this MR meet the acceptance criteria?
-
Changelog entry added, if necessary -
Documentation created/updated - [-] API support added
-
Tests added for this feature/bug - Conforms to the code review guidelines
-
Has been reviewed by a UX Designer - [-] Has been reviewed by a Frontend maintainer
-
Has been reviewed by a Backend maintainer - [-] Has been reviewed by a Database specialist
-
-
EE specific content should be in the top level /ee
folder -
Conforms to the merge request performance guidelines -
Conforms to the style guides - [-] Conforms to the database guides
-
If you have multiple commits, please combine them into a few logically organized commits by squashing them -
Internationalization required/considered - [-] If paid feature, have we considered GitLab.com plan and how it works for groups and is there a design for promoting it to users who aren't on the correct plan
-
End-to-end tests pass ( package-and-qa
manual pipeline job)
What are the relevant issue numbers?
Edited by 🤖 GitLab Bot 🤖