2013-04-10 16 views
11

Mam aplikację internetową http://codefu-5euzxjdg6b.elasticbeanstalk.com/codeKungfu.jsp, która jest obecnie hostowana na Amazon Elastic Beanstalk z backendem Java.Travis CI z Amazon Elastic Beanstalk

Proces przepływu, które mam na myśli to:

  • Zobowiązanie do GitHub repo
  • Travis CI jest wyzwalany. Uruchom testy jednostkowe.
  • Wszystkie testy zdały pomyślnie. Zainstaluj na elastycznej fasoli Amazon.

Obecnie utknąłem w kroku 3, gdzie próbuję połączyć Travis CI z Amazon elastic beanstalk.

Szukałem informacji online w odniesieniu do tego, ale nie byłem w stanie znaleźć niczego, co wydaje się przydatne. Najlepsze źródło informacji, które zdobyłem, to: https://superuser.com/questions/510593/elastic-beanstalk-rails-application-with-git-source-and-deploy-hooks

Rozumiem, że Travis CI może zostać wdrożony bezpośrednio w Google App Engine, a zatem uważam, że powinno istnieć również rozwiązanie dla Amazon Elastic Beanstalk.

Czy ktoś może wskazać mi zasoby, które mogą mi pomóc rozwiązać ten problem?

Dzięki!

Odpowiedz

2

Czy osiągnąłeś postęp w tej sprawie? Myślę, że za pomocą zaszyfrowanych zmiennych Travis powinno być możliwe przechowywanie klucza lub danych uwierzytelniających AWS. Następnie możesz użyć tych poświadczeń za pomocą interfejsu API AWS, aby wdrożyć się z poziomu sekcji .travis.yml after_script.

23

dniem 9 grudnia 2014, wdrażanie Elastic Beanstalk nie jest pokryta Travis CI dokumentacji Wdrożenie: http://docs.travis-ci.com/user/deployment/

jednak Travis CI ma otwarte pochodzą ich narzędzie Wdrożenie: DPL i Elastic Beanstalk wdrażania jest ciągły rozwój : https://github.com/travis-ci/dpl

Najlepiej odnieść się do samego źródła, aby dowiedzieć się, jak wykonać wdrożenie.

Obecnie, oto próbka pracy z moich ustawień wdrożeniowych w .travis.yml:

deploy: 
    provider: elasticbeanstalk 
    access_key_id: <AWS Access Key> 
    secret_access_key: 
    secure: <secure secret access key> 
    region: <region, eg. ap-southeast-1> 
    app: <app name> 
    env: <environment name> 
    bucket_name: <S3 bucket name that is used by elastic beanstalk> 
    on: 
    repo: <repo name> 
    branch: develop 
+0

Dzięki za tą odpowiedź, to zdecydowanie powinien być zaakceptowane odpowiedź. Po prostu ustaw to dokładnie i działa jak urok. Dzięki @ Jon – David

+0

Hej! Jak zaszyfrowałeś 'secret_access_key'? Ponieważ zwykle musisz podać parę klucz/wartość podczas szyfrowania rzeczy na Travisie. Co wprowadziłeś jako klucz szyfrowania, gdy wygenerowałeś wartość 'secure' dla klucza tajnego dostępu AWS? –

+0

Możesz zapoznać się z dokumentacją tutaj: http://docs.travis-ci.com/user/encryption-keys/ – Jon