Для параметризованной сборки с выбором тега образа, понадобится плагин Active Choices Переходим в настройки Jenkins'а Раздел "Управление плагинами" Переходим к вкладке "Доступные" и в поиске указываем "Active Choices" Устанавливаем его. Так же необходим плагин Amazon Web Services SDK Создаем "New Item" — "Pipeline", указываем, что это будет параметризованной сборка, и добавляем параметр …
Продолжить читать "Jenkins — Active Choice: AWS ECR Images tag (AWS SDK)"
Для параметризованной сборки с выбором тега образа, понадобится плагин Active Choices Переходим в настройки Jenkins'а Раздел "Управление плагинами" Переходим к вкладке "Доступные" и в поиске указываем "Active Choice" Устанавливаем его. Создаем "New Item" — "Pipeline", указываем, что это будет параметризованной сборка, и добавляем параметр "Active Choices Reactive Parameter" Указываем, что это …
Продолжить читать "Jenkins — Active Choice: AWS ECR Images tag (AWS Cli)"
Пример только с использованием AWS Cli, без сторонних утилит Пример с использованием утилиты jq
Для хранения и переключения между конфигурациями 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" будут выбраны по умолчанию