Архив рубрики: Build tools

Инструменты для сборки и компиляции проектов на различных языках программирования

Packer: введение, примеры

20 октября 2016
 

 Введение Packer – утилита для сборки образов виртуальных машин для различных платформ из одного файла конфигурации. Packer не является заменой таких средств как Chef или Ansible, и может использовать их для конфигрирования системы перед сборкой образа. Образ, создаваемый Packer, включает в себя настроенную операционную систему, необходимый набор ПО, который позволяет быстро развернуть новую машину. Packer умеет… Читать далее »

AWS: Grunt – деплой JS приложения в S3

18 октября 2016
 

 Задача: собрать JavaScript (AngularJS + Node.js) приложение, и задеплоить его в корзину S3 для хостинга статического сайта. Продробнее про S3 – AWS: S3, Simple Storage Service – описание, примеры. Про хостинг сайтов в S3 – AWS: S3 – хостинг статического сайта. Сначала – запустим простой “Hello, %username%” в S3. Затем – соберём имеющееся приложение, и задеплоим его… Читать далее »

Azure: GoCD и MSDeploy – деплой UmbracoCMS в Azure WebServices

14 октября 2016
 

 Описание инфрастуктуры и процесса деплоя приложения одного немецкого производителя приятноалкогольной продукции. Работает на UmbracoCMS, .NET, язык – C#, использует две Azure (MS) SQL базы – одну для хранения настроек, вторую – для пользовательских данных. Для приложения имеются две различные ресурс-группы – Development и Production, при этом у Production имеется Staging swap-slot (у Dev – тоже, но он пока не… Читать далее »

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

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 Установка… Читать далее »

Travis: запуск и сборка Docker-образов

18 июля 2016
 

 Travis CI позволяет собирать, запускать и отправлять образы в репозиторий Docker. Пример .travis.yml файла для запуска Docker: sudo: required services: – docker branches: only: – develop – master before_install: – docker pull microsoft/azure-cli:0.10.0 – docker run microsoft/azure-cli:0.10.0 bash -c “azure –version;” script: – if [ $TRAVIS_BRANCH = “develop” ]; then echo “DEV deploy”; fi -… Читать далее »

MSBuild: MSB4036: The “TransformXml” task was not found

14 июля 2016
 

 Сборка .NET проекта останавливается с ошибкой: 10:42:42.010 (AfterBuild target) -> 10:42:42.010 C:\GO\pipelines\Platform\server\Platform_Soln\Platform.CMS\Platform.CMS.csproj(2584,5): error MSB4036: The “TransformXml” task was not found. Check the following: 1.) The name of the task in the project file is the same as the name of the task class. 2.) The task class is “public” and implements the Microsoft.Build.Framework.ITask interface. 3.)… Читать далее »

MSDeploy: обновить параметры в web.config во время деплоя

8 июля 2016
 

 Во время деплоя требуется изменить некоторые параметры для приложения в файле web.config. Сделать это можно с помощью файла параметров и опции MSDeploy –setParamFile. Проверяем наличие MSDeploy: PS C:\> dir ‘C:\Program Files (x86)\IIS\Microsoft Web Deploy V3’ … -a— 3/9/2016 11:05 AM 216440 msdeploy.exe -a— 4/24/2015 9:26 AM 227 msdeploy.exe.config

Python: requests, JFrog Artifactory и деплой

26 января 2016
 

 Пример скрипта деплоя. Задача скрипта – сохранить результаты билда в Artifactory и деплоить из Artifactory на хост с JBoss. Из “особенностей” – результатом билда являются два *.ear архива разных типов: ${GIT_COMMIT}-${VERSION}-unlock-service.ear – бекенд из одного репозитория; ${GIT_COMMIT}-${VERSION}-unlock-ui.ear – фронтенд из второго репозитория. ${GIT_COMMIT} грепается из git log, ${VERSION} – из файла build.gradle, в котором девелоперы устанавливают версию. В Artifactory… Читать далее »

Jenkins: установка и настройка Maven билда

25 января 2016
 

 Пример ручной установки Jenkins на Vagrant бокс с Ubuntu 14. Добавляем Vagrant машину: $ vagrant init ubuntu/trusty64 Редактируем Vagrantfile: Vagrant.configure(2) do |config| … config.vm.network “forwarded_port”, guest: 8081, host: 8081 … config.vm.network “public_network” … config.vm.provider “virtualbox” do |vb| … vb.memory = “2048” … end … end Запускаем и подключаемся: $ vagrant up $ vagrant ssh

Jenkins: установка Gradle разных версий

18 января 2016
 

 В требованиях заказчика указано использование Gradle версии 2.9 и выше, в то время как Jenkins по умолчанию использует Gradle 2.5: … [workspace] $ /bin/sh -xe /tmp/hudson7550889694096545979.sh + ./gradlew clean build Downloading https://services.gradle.org/distributions/gradle-2.5-all.zip … Для решения – используем плагин Gradle Plugin.