Pull to refresh
0
Rating
Jelastic
Jelastic DevOps PaaS для хостеров и ISV

Непрерывная интеграция в облаке

Jelastic corporate blogJava
Tutorial
В последнее время разработчики все чаще и чаще обращаются к нам с просьбами реализовать CI в Jelastic. Для чего же нужна непрерывная интеграция? Как правило, в проекте, где над разными частями разработчики трудятся независимо, стадия интеграции является заключительной и довольно трудоемкой, соответственно требует дополнительных затрат времени. Переход к непрерывной интеграции позволяет снизить эту трудоемкость, а так же обнаружить и устранить ошибки заранее, пока они еще не укоренились и не выросли в более серьезную проблему. Да действительно, если осуществлять контроль качества на протяжении всего процесса разработки, можно сэкономить и время, и деньги, и усилия, при одновременном повышении качества. Такой подход особенно полезен для крупных проектов с участием большого количества разработчиков.

Сегодня мы покажем, как можно реализовать непрерывную интеграцию в облаке Jelastic на простом примере с использованием Jenkins.

Пошаговая инструкция:

1. Создайте окружение в Jelastic и разверните в нем Jenkins (или разверните его локально у себя на компьютере). Свое приложение Вы можете развернуть в этом же окружении или создать еще одно отдельно.

2. Теперь нужно немного модифицировать файлы Вашего проекта: settings.xml и pom.xml, чтобы применить Maven плагин для Jelastic.

Пропишите тег profile в файле settings.xml и укажите Ваш логин и пароль к Jelastic dashboard:
<profile>
<id>jelastic</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<jelastic.username>[insert your Jelastic username]</jelastic.username>
<jelastic.password>[insert your Jelastic password]</jelastic.password>
</properties>
</profile>

Теперь добавьте секцию Plugin Repository в pom.xml, укажите путь к репозиторию, в котором хранится Jelastic Maven плагин:
<pluginRepositories>
<pluginRepository>
<id>sonatype-oss-public</id>
<url>https://oss.sonatype.org/content/groups/public</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>

Так же в pom.xml пропишите секцию plugins, в которую нужно добавить плагин, чтобы автоматически развернуть приложение в созданном ранее окружении:
<plugins>
<!--… -->
<plugin>
<groupId>com.jelastic</groupId>
<artifactId>jelastic-maven-plugin</artifactId>
<version>1.7-SNAPSHOT</version>
<configuration>
<email>${jelastic.username}</email>
<password>${jelastic.password}</password>
<context><!--insert your context path or ROOT for default--></context>
<environment><!--insert your environment name--></environment>
<api_hoster><!--default value «api.jelastic.com»--></api_hoster>
</configuration>
</plugin>
<!--… -->
</plugins>

В теге <api_hoster> укажите соответсвующий API хостера.

3. Откройте Jenkins и браузере и установите Maven автоматически.

image

4. Создайте новый проект.

5. На странице Configuration в секции Source Code Management выберите Subversion и введите URL к Вашему репозиторию.
Так же Вы можете опрашивать Вашу систему на наличие изменений через определенный период времени. Для этого заполните соответствующее поле.

6. В секции Build укажите Root pom (pom.xml). В поле Goals and Options введите следующую строку:

clean install jelastic:deploy

Это позволит задеплоить ваше приложение в Jelastic автоматически.

image

Ну вот и все! Теперь достаточно кликнуть Build now и Ваш проект будет автоматически собран и развернут в облаке. А Jenkins будет опрашивать систему на внесенные изменения согласно указанному Вами периоду времени.

Будем очень благодарны за фидбэк и предложения по улучшению данного функционала.
Tags:javacontinuous integrationjenkinsmavenpaasплатформа как услугаplatform as a servicetomcatsubversionpluginrepositoryjelasticci
Hubs: Jelastic corporate blog Java
Total votes 7: ↑5 and ↓2+3
Views7.1K

Information

Founded
Location
США
Website
jelastic.com
Employees
Unknown
Registered