Настройка первого проекта в Bamboo.
В качестве VCS используется Git.
Добавим простой проект на Java, которые будем билдить на Bamboo с помощью Maven.
На рабочей машине cоздаём каталог для файлов Java:
C:UserssetevoyDocumentsgittest>mkdir srcmainjavahello
Создаём файл HelloWorld.java
:
C:UserssetevoyDocumentsgittest>notepad srcmainjavahelloHelloWorld.java
С таким содержимым:
package hello; public class HelloWorld { public static void main(String[] args) { Greeter greeter = new Greeter(); System.out.println(greeter.sayHello()); } }
И файл srcmainjavahelloGreeter.java
:
package hello; public class Greeter { public String sayHello() { return "Hello world!"; } }
В корне рабочей директории создаём pom.xml
:
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.springframework</groupId> <artifactId>gs-maven</artifactId> <packaging>jar</packaging> <version>0.1.0</version> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>2.1</version> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> <transformers> <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> <mainClass>hello.HelloWorld</mainClass> </transformer> </transformers> </configuration> </execution> </executions> </plugin> </plugins> </build> </project>
Добавляем, коммитим и отправляем в репозиторий:
C:UserssetevoyDocumentsgittest>git add .
C:UserssetevoyDocumentsgittest>git commit -m "Java test project" ... 3 files changed, 50 insertions(+), 23 deletions(-) rewrite pom.xml (87%) create mode 100644 src/main/java/hello/Greeter.java create mode 100644 src/main/java/hello/HelloWorld.java
C:UserssetevoyDocumentsgittest>git push origin master ... To [email protected]:/home/git/gitrepo/test.git e28b994..3206dcd master -> master
Переходим на сервер Bamboo, и устанавливаем Git, если ещё не установлен:
# yum -y install git
Логинимся под пользователем, созданным при установке Bamboo, и устанавливаем Maven:
$ mkdir maven
$ cd maven/
$ wget http://apache.cp.if.ua/maven/maven-3/3.2.5/binaries/apache-maven-3.2.5-bin.tar.gz
$ tar xfp apache-maven-3.2.5-bin.tar.gz
$ ls -l apache-maven-3.2.5 total 44 drwxrwxr-x 2 bamboo bamboo 4096 Mar 9 09:22 bin drwxrwxr-x 2 bamboo bamboo 4096 Mar 9 09:22 boot drwxr-xr-x 3 bamboo bamboo 4096 Dec 14 19:27 conf drwxr-xr-x 3 bamboo bamboo 4096 Mar 9 09:22 lib -rw-r--r-- 1 bamboo bamboo 18842 Dec 14 19:30 LICENSE -rw-r--r-- 1 bamboo bamboo 182 Dec 14 19:30 NOTICE -rw-r--r-- 1 bamboo bamboo 2508 Dec 14 19:27 README.txt
В ~/.bashrc
задаём M2_HOME
и добавляем bin
в PATH
:
M2_HOME="/home/bamboo/maven/apache-maven-3.2.5" export PATH="$PATH:$M2_HOME/bin"
Перечитываем файл:
$ . ../.bashrc
Проверяем:
$ mvn -version Apache Maven 3.2.5 (12a6b3acb947671f09b81f49094c53f426d8cea1; 2014-12-14T19:29:23+02:00) Maven home: /home/bamboo/maven/apache-maven-3.2.5 Java version: 1.7.0_75, vendor: Oracle Corporation Java home: /home/bamboo/java/jdk1.7.0_75/jre Default locale: en_US, platform encoding: UTF-8 OS name: "linux", version: "2.6.32-504.8.1.el6.i686", arch: "i386", family: "unix"
От пользователя bamboo
логинимся на Git-сервер, что бы сохранить ключ и проверить доступ:
$ ssh [email protected] The authenticity of host 'git.domain.local (192.168.1.139)' can't be established. RSA key fingerprint is 2d:59:87:ad:4a:c1:65:b4:ff:11:79:c5:d5:14:4d:f7. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'git.domain.local,192.168.1.139' (RSA) to the list of known hosts. [email protected]'s password: Last login: Sun Mar 8 19:45:29 2015 from 192.168.1.146 [git@git ~]$
Переходим к Bamboo.
Создаём проект:
Указываем названия, выбираем систему VCS и настраиваем подключение (у меня пока не получилось авторизовать через RSA-ключу, поэтому – просто логин-пароль):
Добавляем задачи (build step в терминологии TeamCity):
Выбираем тип задачи, которых у Bamboo множество – и этот список можно ещё расширить:
Задача сейчас – собрать Java-файл с помощью Maven.
Жмём Add new executable, что бы добавить Maven к Bamboo:
Указываем директорию Maven, который мы установили ранее:
Указываем goal, убираем The build will produce test results, жмём Save:
Готово, ставим галочку “Enable plan” и жмём Create:
Переходим в Bamboo administration > Overview:
Находим исполняемый файл Git:
# which git /usr/bin/git
Слева находим Server capabilities и в Add capability добавляем Git:
Возвращаемся в Build > All build plans:
Запускаем билд:
Кликаем на номер билда, что бы увидеть процесс:
Билд готов: