脚本部署
此页面记录了使用 dpl v1 进行的部署,dpl v1 目前是默认版本。下一个主要版本 dpl v2 将很快发布,我们建议您开始使用它。请参阅 我们的博客文章 了解详细信息。 此处可以找到 dpl 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