Для того, чтобы создать из шаблона файл и сразу его сохранить как "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 — Имя пользователя, запустившего задачу"
Для параметризованной сборки с выбором ветки, понадобится плагин Active Choices Переходим в настройки Jenkins'а Раздел "Управление плагинами" Переходим к вкладке "Доступные" и в поиске указываем "Active Choices" Устанавливаем его. Создаем "New Item" — "Pipeline", указываем, что это будет параметризованной сборка, и добавляем параметр "Active Choices Reactive Parameter" Указываем, что это "Groovy …
Продолжить читать "Jenkins — Active Choice: Git branch"
По умолчанию Jenkins использует язык настроек вашего браузера. Для того, чтобы принудительно его поменять можно воспользоваться плагином Locale Переходим в настройки Jenkins'а Раздел "Управление плагинами" Переходим к вкладке "Доступные" и в поиске указываем "Locale" Устанавливаем его. И возвращаемся в настройки Jenkins'а, вкладка "Конфигурация системы" Находим блок "Locale" и указываем необходимый …
Продолжить читать "Jenkins — Изменить язык по умолчанию"
При попытке получить значение с AWS SSM Ansible Playbook используя в качестве интерпретатора Python3 выдает следующую ошибку: fatal: [localhost-py3]: FAILED! => {"changed": false, "msg": "AnsibleError: An unhandled exception occurred while templating '{{ lookup('aws_ssm', 'server_listeners', decrypt=false, region=’eu-west-1′) }}'. Error was a <class 'ansible.errors.AnsibleError'>, original message: An unhandled exception occurred while running the lookup plugin 'aws_ssm'. Error …
Продолжить читать "FIX ERROR — Ansible AWS SSM: AnsibleError: An unhandled exception occurred while templating"
HTTPS Для того, чтобы можно было работать с Git репозиторием в CodeCommit используя AIM роль, на инстансе должен быть установлен AWS Cli. Так же понадобится "credential-helper", для этого создадим файл конфигурации для Git'а: И скопируем в него следующее: Теперь можно работать с CodeCommit по протоколу HTTPS не указывая логин/пароль. SSH Для работы …
Продолжить читать "CodeCommit — Git"
Проверяем задано ли значение переменной "GIT_COMMIT_ID", если да, то делаем checkout по хешу коммита, если нет, то делаем checkout по имени ветки. Переменная "GIT_BRANCH_NAME" берется из Active Choice параметра. Jenkinsfile: