В SSM Parameter Store содержится JSON следующего вида: Необходимо извлечь логин и пароль, и использовать их значения в Terraform коде. Для этого можно воспользоваться следующей конструкцией: И использовать переменные:
Для того, чтобы исключить определенный диапазон или IP адрес необходимо добавить параметр "net_gateway". К примеру, необходимо чтобы сеть "10.0.0.0/8" маршрутизировалась через VPN, но при этом исключить из маршрута сеть "10.0.1.0/24" запись в конфигурационном файле будет выглядеть следующим образом:
Для того, чтобы конвертировать существующий приватный ключ в PEM формат, достаточно выполнить следующее:
При попытке обновить "Jenkins" на CentOS 7 может возникнуть следующая ошибка: Public key for jenkins-2.289.3-1.1.noarch.rpm is not installed Для того чтобы ее устранить достаточно импортировать ключ репозитория:
Подобная ошибка: /etc/resolvconf/update.d/libc: Warning: /etc/resolv.conf is not a symbolic link to /run/resolvconf/resolv.conf Может свидетельствовать о том, что символическая ссылка "/etc/resolv.conf" отсутствует, для того чтобы это исправить можно как создать ее вручную: Или же запустить переконфигурацию "resolvconf" используя следующую команду:
Для выбора версии питона в пайплайне, нужно чтобы нужные версии были установлены в системе. Дальнейшие действия были выполнены на CentOS 7 и установка бинарников происходила в директорию "/usr/bin/" для удобства, так как в системе уже установлены версии "2.7" и "3.6" из репозитория по данному пути. Устанавливаем зависимости: Скачиваем нужные исходники нужных версий, в …
Продолжить читать "Jenkins — Python VirtualEnv с выбором версий"
Цель: Разрешить публичный доступ на чтение для всех объектов в S3 корзине только используя VPN подключение, для подключения с мира объекты должны быть не публичными. В качестве сервиса VPN используется OpenVPN, который может быть развернут где угодно, поэтому разрешающие правило будем строить на проверки IP адреса. Для начала нужно узнать список сетей, которые относятся …
Продолжить читать "AWS — S3: Разрешить публичный доступ к объектам через VPN"
Данный скрипт ищет EBS в регионе "eu-west-1" с тегом, ключ которого "Application" и значение передается как аргумент, создает снапшот данного EBS. Так же по тому же принципу он ищет снапшот по тегу, и удаляет все, кроме последнего. Пример запуска для создания снапшота: Пример запуска для удаления старых снапшотов: main.py:
Для параметризованной сборки, понадобится плагин Active Choices Переходим в настройки Jenkins'а Раздел "Управление плагинами" Переходим к вкладке "Доступные" и в поиске указываем "Active Choices" Устанавливаем его. Создаем "New Item" — "Pipeline", указываем, что это будет параметризованная сборка, и добавляем параметр "Active Choices Parameter" Указываем, что это "Groovy Script" и …
Продолжить читать "Jenkins — Active Choice: SSH — Вернуть значения удаленной команды"
Для параметризованной сборки, понадобится плагин Active Choices Переходим в настройки Jenkins'а Раздел "Управление плагинами" Переходим к вкладке "Доступные" и в поиске указываем "Active Choices" Устанавливаем его. Создаем "New Item" — "Pipeline", указываем, что это будет параметризованная сборка, и добавляем параметр "Active Choices Parameter" Указываем, что это "Groovy Script" и …
Продолжить читать "Jenkins — Active Choice: S3 — Вернуть нужное значение ключа с JSON файла"