Динамическое создание пространств имен K8s (AKS) для каждого запроса ветвления / извлечения в GitLab с помощью jenkins - PullRequest
0 голосов
/ 26 марта 2020

У нас есть среда с Azure Kubernetes + Jenkins + GitLab. При существующей настройке один раз после запроса на слияние в GitLab сборка запускается в Jenkins, а модули развертываются на Azure K8 (AKS). Теперь у нас есть требование иметь динамическое пространство имен c для всех запросов на получение данных и Uris, которые будут тестироваться для каждой ветви. Позже, когда это объединено, мы должны удалить это пространство имен Dynami c. Не могли бы вы помочь мне с настройкой или подходом, чтобы добиться этого.

1 Ответ

0 голосов
/ 28 марта 2020

kubectl ваш путь к go. Вам просто нужно создать пространство имен и / или развертывание с уникальным ha sh (который вы можете извлечь из git commit ha sh для PR):

kubectl create namespace NAMESPACE_NAME_COMMIT_HASH

Я довольно убедитесь, что вы можете покрыть все ваши требования с помощью единого пространства имен тестирования, просто сгенерировав развертывания + service + ingress с уникальным коммитом ha sh в их именах и удалив их в конце конвейера. В тестируемом пространстве имен не будет никаких коллизий, если ваши модули не инициируют какую-либо связь внутри пространства имен между ними, например, кластеризация и т. Д. c.

...