Category Archives: Jenkins

Continuous Integration сервер Jenkins

Jenkins: pipeline плагин и триггер билда через Github webhook

02/24/2017
 

 Задача: триггерить билд по каждому push в репозиторий. Усложнаяется задача тем, что некоторые билды созданы как Freestyle project и используют плагин GitHub плагин, а некоторые – созданы через Pipeline плагин. Ниже описано создание вебхуков в Github для обоих типов билдов.

AWS: билд Java + Maven + Docker + Packer + Terraform

02/20/2017
 

 Достаточно…. Скажем так – интересная схема билда и деплоя одного приложения. Приложение включает в себя 6 контейнеров (5 – сервисы самого приложения, и один контейнер – Zuul discovery service). Сама идея и архитектура – красивая и достаточно сложная. Но использовать такое для билда и деплоя 5 контейнеров… Overhead, overengineering. Ещё один антипаттерн того, как надо… Read More »

Linux: [[: not found

02/17/2017
 

 Во время Jenkins-билда – скрипт деплоя возвращает ошибку: … [jm-cms-transform-layer-build] Running shell script + [[ -d config ]] /var/jenkins_home/workspace/jm-cms-transform-layer-build@tmp/durable-6569c8ce/script.sh: 2: /var/jenkins_home/workspace/jm-cms-transform-layer-build@tmp/durable-6569c8ce/script.sh: [[: not found …

Azure: подключение дополнительного диска к VM и миграция Jenkins

02/09/2017
 

 Диски в Azure Как и любой компьютер – виртуальная машина в Azure использует диски для размещения операционной системы, приложений и данных. Всем машины в Azure имеют как минимум два диска – для операционной системы (operating system disk), который создаётся из образа ОС, и диск для временных данных (temporary disk). Кроме того – к машине можно… Read More »

Jenkins: sandbox.RejectedAccessException: Scripts not permitted to use

02/08/2017
 

 Во время создания нового билда – ошибка: org.jenkinsci.plugins.scriptsecurity.sandbox.RejectedAccessException: Scripts not permitted to use method groovy.lang.GroovyObject invokeMethod java.lang.String java.lang.Object (org.jenkinsci.plugins.docker.workflow.Docker push org.codehaus.groovy.runtime.GStringImpl) Ответ нагугливается тут>>> по запросу “RejectedAccessException: Scripts not permitted to use“.

AWS: AWS CLI и bash – blue/green деплой AutoScale группы за ELB

01/06/2017
 

 Имеется достаточно интересная ифраструктура одного проекта (UPD: описана в посте AWS: билд Java + Maven + Docker + Packer + Terraform), в котором деплой API-приложения выполняется скриптом, описанным ниже. Его задача – запустить EC2 инстансы, объединённые в blue AutoScale группу, подключить её к Elastic Load Balancer-у (ELB), отключить от ELB green-группу, перезапустить в ней инстансы,… Read More »

Jenkins: запуск на AWS EC2 + Pipeline Plugin + Docker Pipeline Plugin

10/12/2016
 

 Задача – поднять Jenkins 2 на AWS EC2, и создать два билда: с помощью плагина workflow-aggregator (Jenkins Pipeline Plugin) – вывести “Hello, World” через Pipeline Script; с помощью плагина docker-workflow (CloudBees Docker Pipeline Plugin) запустить Docker контейнер, в котором Maven-ом будет выполенна сборка Java-проекта. Документация по Jenkins Pipeline Plugin – тут>>>. Документация по CloudBees Docker Pipeline Plugin – тут>>>. Создание EC2 Установка NGINX, Docker Установка… Read More »