2016-09-30 19 views
0

Jenkinsを使用して弾力のあるbeanstalk環境にデプロイしたいPHPアプリケーションがあります。コードはgitにあり、 eb use eb deployのようなeb cliコマンドを使用できるようにしたいと考えています。Jenkins、git、eb cliを使用してElastic BeanstalkにPHP Webアプリケーションをデプロイ

この作業を行う方法がわかりません... Jenkinsシェルを使用してeb cliコマンドを実行できるように、資格情報を設定する方法と同じです。

これについてどうすればよいかについてのご意見は非常に役に立ちます。

私のスクリプトは現在少しこの

git fetch 

git checkout "$GIT_REF" 

git pull origin "$GIT_REF" 

eb use "$CUSTOM_EB_ENV" 

eb deploy 

$ GIT_REFと$ CUSTOM_EB_ENVのように見えるがGitのブランチとElasticBeanstalk環境名を指す変数です。

私は仕事を実行すると、私はあなたが最初eb initを実行する必要がありますが、すでにこれを行っているように見えるディレクトリにEB CLIを使用するためには、次のエラー

+ git fetch 
+ git checkout master 
Previous HEAD position was 36f0456t... f 
Switched to branch 'master' 
Your branch is up-to-date with 'origin/master'. 
+ git pull origin master 
From github.com:something/foo_bar 
* branch   master  -> FETCH_HEAD 
Already up-to-date. 
+ eb use Environment_name 
ERROR: Operation Denied. The security token included in the request is invalid. 
+ eb deploy 
ERROR: This branch does not have a default environment. You must either specify an environment by typing "deploy my-env-name" or set a default environment by typing "eb use my-env-name". 

答えて

1

を取得します。

問題は、有効な資格情報がないことが原因です。 EB CLIは、AWS CLIと同じ方法で資格情報を取得します。詳細については、documentationを参照してください。

ほとんどの場合、jenkinsサーバーのAWS資格情報のペアを設定する必要があります。これを行う1つの方法は、ファイル$JENKINS_HOME/.aws/credentialsを作成し、そこにAWS認証情報を格納することです。

[default] 
aws_access_key_id = MYAWSACCESSKEY 
aws_secret_access_key = MYAWSSECRETKEY 

このファイルを作成すると、EB CLIは資格情報を自動的にプルして、目的の操作を実行します。

関連する問題