2013-07-04 5 views
5

Я хочу интегрировать Atlassian Bamboo с AWS Elastic Beanstalk. Есть какой-либо способ сделать это?Как интегрировать атласский бамбук с AWS эластичный бобовый станок

+0

интегрировать как как? Развертывание? –

+0

есть, развертывание. – Khalid

+0

Эта статья помогла мне понять, как это сделать: http://blog.pedago.com/2014/02/18/build-and-deploy-with-grunt-bamboo-and-elastic-beanstalk/ –

ответ

4

Это зависит немного от вашей конфигурации Bamboo и beanstalk, а также от типа приложения, которое вы планируете развернуть на AWS Beanstalk.

Мы сделали некоторые вещи для Java Web Apps:

С Bamboo понимает Maven, вы можете посмотреть на следующий Maven плагин: http://beanstalker.ingenieux.com.br/beanstalk-maven-plugin/configurations-and-templates.html

Мы используем его для некоторых сред для создания войн и загрузите их в эластичный бобовый шток. Затем вы можете создать задачу maven в bamboo для вызова плагина.

Если вы загрузили и установили Bamboo на свой собственный компьютер, вы можете использовать Elastic Beanstalk command line interface (CLI). Это, вероятно, самый мощный подход, но вам нужно установить CLI на экземпляр bamboo. Тогда вы можете сделать почти все. Этот подход также должен работать и для других сред, помимо Java/Tomcat.

Другая идея: Если вы используете Beanstalk с помощью git (т. Е. Развертываете, изменяя код и нажав на Beanstalk), то вы также можете использовать новую функцию «Проект развертывания» в Bamboo, чтобы нажать код после его прохождения все тесты.

+2

Просто FYI: Плагин Beanstalk Maven * ПОДДЕРЖИВАЕТ * развертывание на основе git. См. [Этот URL] (http://docs.ingenieux.com.br/project/beanstalker/deploying-using-git.html) для получения более подробной информации. – aldrinleal

0

В случае, если вы заинтересованы в развертывании C#:

Что мы делаем, чтобы просто начать awsdeploy инструмент (должен быть уже установлен на сервере сборки) со ссылкой на сценарий конфигурации. Я создаю среду просто в Visual Studio, и когда я повторно развертываю приложение один раз, я сохраняю сценарий. Как только скрипт находится на сервере сборки, я ссылаюсь на него в конфигурации развертывания с помощью awsdeploy /r c:\location\of\myscript.txt.

Пакет сам ссылается в сценарии конфигурации развертывания AWS создается во время сборки с помощью команды MSbuild /target:package и определяется как местоположение почтового пакета c:\build-dir\...\project\obj\debug\package артефакт (по умолчанию, но могут быть перезаписаны.

Все работает очень хорошо до сих пор, хотя у меня возникла проблема с тем, чтобы запустить эластичный экземпляр, когда нет доступных (например, ночные сборки).

+0

tnx для вашего ответа marco. – Khalid

3

David's answer предлагает хорошие варианты использования кросс-продуктов AWS Elastic Beanstalk (+1). В настоящее время я рекомендую отличный унифицированный AWS Command Line Interface по сравнению со старым AWS Elastic Beanstalk API Command Line Interface, см. AWS CLI commands for elasticbeanstalk.

Если вы ищете Bamboo конкретное решение, вы можете быть заинтересованы в Utoolity-х Tasks for AWS (Bamboo) дополнения (коммерческий, см отказ от ответственности), которая предусматривает три выделенных задач, а именно:

  • AWS Elastic Beanstalk Применение - создавать, обновлять или удалять приложения AWS Elastic Beanstalk.
  • AWS Elastic Beanstalk Application Version - создавать, обновлять или удалять версии приложений AWS Elastic Beanstalk.
  • AWS Elastic Beanstalk Environment - создавать, обновлять, перестраивать, перезагружать, свопировать или завершать среду AWS Elastic Beanstalk и задавать параметры конфигурации и расширенные параметры.

Отказ от ответственности: Я соучредитель этой надстройки в поставщике, Utoolity.

+0

Почему Задачи для AWS не предлагаются на решениях из облачного бамбука? – Ascherer

+1

@ Ascherer - мы бы очень хотели предложить Задачи для AWS для Bamboo Cloud. К сожалению, в настоящее время мы заблокированы из-за причин, не зависящих от нашего контроля: Atlassian запрещает классические дополнения для обеспечения безопасности и масштабируемости, но пока не поддерживает Bamboo в новой надстройке Atlassian Connect - см. Наш. FAQ [Будет ли Задачи для AWS доступны для Bamboo Cloud (Atlassian OnDemand)?] (Https://utoolity.atlassian.net/wiki/questions/36306948/will-tasks-for-aws-be-available-for-bamboo- cloud-atlassian-ondemand) для деталей. –

0

Взгляните на наш репозиторий: https://github.com/matzegebbe/docker-aws-login С этого фрагмента кода вы можете войти с АМС А.Н. нажимные изображения

простой бамбуковой сценарий задачи (конечно, нужно Docker установленных на агентов):

#!/bin/bash 

docker images hellmann/awscli | grep -q awscli 
[ "$?" -eq "0" ] && exit 0 

cat <<'EOF' >> Dockerfile 
FROM python 
MAINTAINER Mathias Gebbe <[email protected]> 

RUN pip install awscli --ignore-installed six 

ENV aws_access_key_id AWS_ACCESS_KEY 
ENV aws_secret_access_key AWS_SECRET_ACCESS_KEY 

RUN mkdir /root/.aws/ 
RUN printf "[default]\nregion = eu-west-1\n" > /root/.aws/config 
RUN printf "[default]\naws_access_key_id = ${aws_access_key_id}\naws_secret_access_key = ${aws_secret_access_key}\n" > /root/.aws/credentials 
ENTRYPOINT ["/bin/bash","-c"] 
CMD ["aws ecr get-login"] 
EOF 
docker build -t hellmann/awscli . 
$(docker run --rm hellmann/awscli)