脚本部署
此页面记录了使用下一个主要版本 dpl v2 的部署,该版本目前处于 Beta 发布阶段。请参阅 我们的博文 以获取详细信息。当前默认版本为 dpl v1。请查看 此处提供的 dpl v1 文档。
请务必阅读 v2 部署概述。
如果您的部署需要比 after_success
方法允许的更多自定义,请使用自定义脚本。
以下示例在构建成功时在存储库的 develop
分支上运行 scripts/deploy.sh
。
deploy:
provider: script
script: bash scripts/deploy.sh
on:
branch: develop
如果需要运行多个命令,请编写一个可执行的包装器脚本,该脚本运行所有命令。脚本部署提供程序中 script:
的参数必须是单个命令。
如果脚本返回非零状态,则部署被视为失败,并且构建将被标记为“出错”。
向脚本传递参数 #
可以向脚本部署传递参数。
deploy:
# deploy develop to the staging environment
- provider: script
script: bash scripts/deploy.sh staging
on:
branch: develop
# deploy master to production
- provider: script
script: bash scripts/deploy.sh production
on:
branch: master
脚本可以访问所有常用的 环境变量。
deploy:
provider: script
script: bash scripts/deploy.sh production $TRAVIS_TAG
on:
tags: true
all_branches: true
Ruby 版本 #
为了确保部署一致运行,我们使用预安装在我们所有构建镜像上的 Ruby 版本,该版本在镜像更新时可能会发生变化。
travis_internal_ruby
函数打印确切的预安装 Ruby 版本
如果需要运行需要与预安装的默认版本不同的 Ruby 版本的命令,则需要显式设置它
deploy:
provider: script
script: rvm use $TRAVIS_RUBY_VERSION do script.rb
Pull Request #
请注意,Pull Request 构建完全跳过部署步骤。