duanchun1909 2016-09-30 22:21
浏览 88

使用Jenkins,git和eb cli在Elastic Beanstalk上部署php Web应用程序

I have a php application that i want to deploy to an elastic beanstalk environment using Jenkins. The Code is on git and i want to be able to use eb cli commands like eb use eb deploy.

So, i am not sure how to make this work... as in how to set up the credentials so that i can have the eb cli commands run using the Jenkins shell.

Any thoughts about how to go about this would be very helpful.

My script currently looks a bit like this

git fetch

git checkout "$GIT_REF"

git pull origin "$GIT_REF"

eb use "$CUSTOM_EB_ENV"

eb deploy

$GIT_REF and $CUSTOM_EB_ENV are variables pointing to git branch and ElasticBeanstalk environment name.

When I run the job, i get the following error

+ 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条回答 默认 最新

  • douju2053 2017-02-03 20:20
    关注

    In order to use the EB CLI in a directory you first have to run eb init but it looks like you have already done that.

    The problem you are having seems to be from the lack of valid credentials. The EB CLI pulls credentials the same way the AWS CLI does, you can find more information in the documentation.

    You will most likely have to setup a pair of AWS credentials for your jenkins server. One way to do this would be to created the file $JENKINS_HOME/.aws/credentials and store your AWS credentials in there.

    [default]
    aws_access_key_id = MYAWSACCESSKEY
    aws_secret_access_key = MYAWSSECRETKEY
    

    With that file created the EB CLI will automatically pull the credentials and run the desired operations.

    评论

报告相同问题?

悬赏问题

  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘