Для хранения и переключения между конфигурациями Kubernetes'а, можно воспользоваться плагином Kubernetes CLI, для работы с ним в системе должен быть установлен "kubectl" Устанавливаем плагин Переходим в настройки Jenkins'а Раздел "Управление плагинами" Переходим к вкладке "Доступные" и в поиске указываем "Kubernetes CLI" Устанавливаем его. Добавляем Kubernetes config Переходим в "Credentials" и …
Продолжить читать "Jenkins — Kubeconfig"
При попытке выполнить любую команду "kubectl" на EKS кластере возникает следующая ошибка: Invalid choice: 'eks', maybe you meant: Возможная причина этого, это старая версия "kubectl", доступная в репозитории. Решение: Установить последнюю версию "kubectl" используя PIP3 Для использования "kubectl" установленным с помощью PIP, нужно чтобы директория бинарных файлов PIP была в переменной PATH, …
Продолжить читать "FIX ERROR — CentOS 7 kubectl: Invalid choice: 'eks', maybe you meant"
Чтобы добавить путь в окружение Jenkins'а глобально, не делая это каждый раз в Pipeline, перейдем в настройки Jenkins'а Далее вкладка "Конфигурация системы" Находим блок "Global properties", ставим галочку "Environment variables". И добавляем переменную, с именем "PATH+EXTRA" и значением — пути, которые необходимо добавить, разделенные ":" между собой, если их несколько.
Для того, чтобы сохранить значение переменной как Secret, переменную необходимо закодировать в base64, для этого воспользуемся "_helpers.tpl" К примеру, нам нужно сохранить значение переменной "applicationSecret" values.yaml: Добавляем в "_helpers.tpl" следующее: _helpers.tpl: Теперь в директории "templates" создадим файл "secret.yaml" secret.yaml:
К примеру есть инстанс, на котором установлен Python 2-ой и 3-ей версий, но по умолчанию используется 2-ая, и чтобы не менять версию по умолчанию и запустить Playbook используя Python3, можно воспользоваться следующей командой: Так же можно указать интерпретатор в инвентори файле: Убедитесь, что для нужной версии Python установлен Ansible модуль
Для того, чтобы создать из шаблона файл и сразу его сохранить как "Pretty JSON" можно воспользоваться модулем "copy" с ключем "content". К примеру сохраним шаблон "config.j2" как файл "/app/config.json" Playbook:
При работе с параметром Active Choice CheckBox, можно выбрать значения по умолчанию добавив параметр ":selected" Pipeline: При сборке с параметрами сразу два окружения, "Development" и "Production" будут выбраны по умолчанию
При работе с параметром Active Choice CheckBox, значения параметра записываются в переменную, через запятую. Для работы с ними как отдельными элементами, нужно их сохранить в массив. К примеру есть следующий Active Choice, который выдает список окружений в виде CheckBox'а Pipeline: Выглядит это следующим образом: Выберем два окружения, "Development" и "QA" Значение переменной …
Продолжить читать "Jenkins — Active Choice: CheckBox — Работа с массивом"
Несколько примеров, как Active Choices параметры можно описывать в Pipeline Пример 1 Одиночный выбор, из предоставленного списка. Выпадающий список окружений, по умолчанию выбран первый в списке элемент. Pipeline:
Для того, чтобы узнать имя пользователя Jenkins'а, понадобится плагин user build vars Переходим в настройки Jenkins'а Раздел "Управление плагинами" Переходим к вкладке "Доступные" и в поиске указываем "user build vars" Устанавливаем его. Пример использования плагина из Pipeline: Так же в модуле есть следующие переменные: BUILD_USER — Full name (first name + …
Продолжить читать "Jenkins — Имя пользователя, запустившего задачу"