【发布时间】:2020-07-01 05:57:54
【问题描述】:
您好,我目前尝试通过 travis CI 将我的反应应用程序部署到 AWS Elastic Bean Stalk。但它失败了..我应该在我的 travis yml 中更改什么?
这是我的 .travis.yml
sudo: required
services:
- docker
before_install:
- docker build -t sample:dev .
script:
- docker run -e CI=true sample:dev npm run test -- --coverage
deploy:
provider: elasticbeanstalk
region: "us-west-1"
app: "my-app"
env: "MyApp-env"
bucket_name: "xxxx"
bucket_path: "xxx"
on:
branch: master
access_key_id: $AWS_ACCESS_KEY
secret_access_key:
secure: "$AWS_SECRET_KEY"
但我未能将其部署在 aws elastic bean stalk 中。以下是来自 travis ci 的信息:
命令 "docker run -e CI=true sample:dev npm run test -- --coverage" 以 0 退出。
dpl_0
1.27s$ rvm $(travis_internal_ruby) --fuzzy do ruby -S gem install dpl
dpl.1
安装部署依赖项
成功安装jmespath-1.4.0
成功安装 aws-eventstream-1.0.3
成功安装 aws-sigv4-1.1.1
更新版本可用:请升级到适用于 Ruby V3 的 AWS 开发工具包
成功安装 aws-sdk-core-2.11.471
更新版本可用:请升级到适用于 Ruby V3 的 AWS 开发工具包
成功安装 aws-sdk-resources-2.11.471
更新版本可用:请升级到适用于 Ruby V3 的 AWS 开发工具包
成功安装 aws-sdk-2.11.471
成功安装rubyzip-1.3.0
成功安装dpl-elastic_beanstalk-1.10.15
安装了 8 个宝石
!!! AWS Elastic Beanstalk 支持是实验性的!!!
dpl.2
准备部署
使用git stash --all 清理 git 存储库。如果您需要构建工件进行部署,请设置deploy.skip_cleanup: true。见https://docs.travis-ci.com/user/deployment#Uploading-Files-and-skip_cleanup。
没有要保存的本地更改
更新版本可用:请升级到适用于 Ruby V3 的 AWS 开发工具包
dpl.3
部署应用程序
未找到隐藏条目。
/home/travis/.rvm/gems/ruby-2.4.5/gems/aws-sdk-core-2.11.471/lib/seahorse/client/plugins/raise_response_errors.rb:15:in call': The request signature we calculated does not match the signature you provided. Check your key and signing method. (Aws::S3::Errors::SignatureDoesNotMatch)
from /home/travis/.rvm/gems/ruby-2.4.5/gems/aws-sdk-core-2.11.471/lib/aws-sdk-core/plugins/s3_sse_cpk.rb:19:incall'
来自/home/travis/.rvm/gems/ruby-2.4.5/gems/aws-sdk-core-2.11.471/lib/aws-sdk-core/plugins/s3_dualstack.rb:24:in call'
from /home/travis/.rvm/gems/ruby-2.4.5/gems/aws-sdk-core-2.11.471/lib/aws-sdk-core/plugins/s3_accelerate.rb:34:incall '
来自/home/travis/.rvm/gems/ruby-2.4.5/gems/aws-sdk-core-2.11.471/lib/aws-sdk-core/plugins/jsonvalue_converter.rb:20:in call'
from /home/travis/.rvm/gems/ruby-2.4.5/gems/aws-sdk-core-2.11.471/lib/aws-sdk-core/plugins/idempotency_token.rb:18:incall '
来自/home/travis/.rvm/gems/ruby-2.4.5/gems/aws-sdk-core-2.11.471/lib/aws-sdk-core/plugins/param_converter.rb:20:in call'
from /home/travis/.rvm/gems/ruby-2.4.5/gems/aws-sdk-core-2.11.471/lib/seahorse/client/plugins/response_target.rb:21:incall '
来自 /home/travis/.rvm/gems/ruby-2.4.5/gems/aws-sdk-core-2.11.471/lib/seahorse/client/request.rb:70:in send_request'
from /home/travis/.rvm/gems/ruby-2.4.5/gems/aws-sdk-core-2.11.471/lib/seahorse/client/base.rb:207:inblock(2 级)在定义操作方法'
来自/home/travis/.rvm/gems/ruby-2.4.5/gems/aws-sdk-resources-2.11.471/lib/aws-sdk-resources/request.rb:24:in call'
from /home/travis/.rvm/gems/ruby-2.4.5/gems/aws-sdk-resources-2.11.471/lib/aws-sdk-resources/operations.rb:41:incall'
来自/home/travis/.rvm/gems/ruby-2.4.5/gems/aws-sdk-resources-2.11.471/lib/aws-sdk-resources/operation_methods.rb:19:in block in add_operation'
from /home/travis/.rvm/gems/ruby-2.4.5/gems/dpl-elastic_beanstalk-1.10.15/lib/dpl/provider/elastic_beanstalk.rb:131:inupload'
来自/home/travis/.rvm/gems/ruby-2.4.5/gems/dpl-elastic_beanstalk-1.10.15/lib/dpl/provider/elastic_beanstalk.rb:49:in push_app'
from /home/travis/.rvm/gems/ruby-2.4.5/gems/dpl-1.10.15/lib/dpl/provider.rb:199:inblock in deploy'
来自/home/travis/.rvm/gems/ruby-2.4.5/gems/dpl-1.10.15/lib/dpl/cli.rb:41:in fold'
from /home/travis/.rvm/gems/ruby-2.4.5/gems/dpl-1.10.15/lib/dpl/provider.rb:199:indeploy'
来自/home/travis/.rvm/gems/ruby-2.4.5/gems/dpl-1.10.15/lib/dpl/cli.rb:32:in run'
from /home/travis/.rvm/gems/ruby-2.4.5/gems/dpl-1.10.15/lib/dpl/cli.rb:7:inrun'
来自 /home/travis/.rvm/gems/ruby-2.4.5/gems/dpl-1.10.15/bin/dpl:5:in <top (required)>'
from /home/travis/.rvm/gems/ruby-2.4.5/bin/dpl:23:inload'
来自 /home/travis/.rvm/gems/ruby-2.4.5/bin/dpl:23:in `'
部署失败
【问题讨论】:
标签: ruby amazon-web-services docker amazon-elastic-beanstalk travis-ci