Engine Yard 部署
此页面记录使用下一个主要版本 dpl v2 进行的部署,该版本目前处于 beta 版发布阶段。请参阅 我们的博客文章 了解详细信息。当前默认版本是 dpl v1。查看 dpl v1 文档。
请务必阅读 v2 部署概述。
Travis CI 可以在成功构建后自动部署您的 Engine Yard 应用程序。
对于最小配置,请将以下内容添加到您的 .travis.yml
中
deploy:
provider: engineyard
api_key: <encrypted api_key>
edge: true # opt in to dpl v2
或者,您可以使用 email
和 password
deploy:
provider: engineyard
email: <email>
password: <encrypted password>
Engine Yard API 令牌可以从 这里 获得。
状态 #
对 Engineyard 部署的支持处于 **alpha** 阶段。有关详细信息,请参阅 成熟度级别。
已知选项 #
使用以下选项来进一步配置部署。需要使用 api_key
或 email
和 password
。
api_key |
Engine Yard API 密钥 - **秘密**,类型:字符串,注意:可以在 https://cloud.engineyard.com/cli 获得 |
email |
Engine Yard 帐户电子邮件 - 类型:字符串 |
password |
Engine Yard 密码 - **秘密**,类型:字符串 |
app |
Engine Yard 应用程序名称 - 类型:字符串,默认:仓库名称 |
env |
Engine Yard 应用程序环境 - 类型:字符串,别名:environment |
migrate |
Engine Yard 迁移命令 - 类型:字符串 |
account |
Engine Yard 帐户名称 - 类型:字符串 |
共享选项 #
cleanup |
在部署之前从 Git 工作目录中清理构建工件 - 类型:布尔值 |
run |
部署成功完成后要执行的命令 - 类型:字符串或字符串数组 |
环境变量 #
如果所有选项都以 ENGINEYARD_
或 EY_
为前缀,则可以作为环境变量给出。
例如,api_key
可以作为
ENGINEYARD_API_KEY=<api_key>
或EY_API_KEY=<api_key>
保护秘密 #
秘密选项值应作为构建配置(.travis.yml
文件)中的加密字符串或仓库设置中的环境变量给出。
可以在仓库设置页面上设置环境变量,也可以使用 travis env set
设置。
travis env set ENGINEYARD_API_KEY <api_key>
为了在将选项值添加到 .travis.yml
文件时对其进行加密,请使用 travis encrypt
travis encrypt <api_key>
或者使用 --add
直接将其添加到 .travis.yml
文件中。请注意,此命令必须在仓库的根目录中运行
travis encrypt --add deploy.api_key <api_key>
要部署的应用程序或环境 #
默认情况下,应用程序名称将从您的仓库名称推断出来。
您可以通过 **app** 选项显式设置名称
deploy:
provider: engineyard
# ⋮
app: <app-name>
将分支部署到不同的应用程序或环境 #
为了根据当前分支选择应用程序或环境,请使用单独的部署配置
deploy:
- provider: engineyard
# ⋮
env: production
on:
branch: master
- provider: engineyard
# ⋮
env: staging
on:
branch: staging
或使用 YAML 引用
deploy:
- &deploy
provider: engineyard
# ⋮
env: production
on:
branch: master
- <<: *deploy
env: staging
on:
branch: staging
运行迁移 #
您可以使用 migrate 选项触发迁移
deploy:
provider: engineyard
# ⋮
migrate: rake db:migrate
拉取请求 #
请注意,拉取请求构建会完全跳过部署步骤。