Catalyze 部署

此页面记录使用 dpl v1 的部署,当前是默认版本。下一个主要版本 dpl v2 将很快发布,我们建议您开始使用它。请参阅 我们的博文 获取详细信息。 dpl v2 文档可以在这里找到

Travis CI 可以在构建成功后自动部署到 Catalyze

在配置您的 .travis.yml 之前,您需要

  1. 找到您的 Catalyze git 远程地址
    1. 确保您的 Catalyze 环境已 关联
    2. 通过在关联的存储库中运行 git remote -v 获取 git 远程地址。

    3. 编辑您的 .travis.yml

      deploy:
        provider: catalyze
        target: "ssh://git@git.catalyzeapps.com:2222/app1234.git"
      
  2. 为 Travis CI 设置一个到 Catalyze 的部署密钥
    1. 安装 Travis CI 的 命令行客户端
    2. 获取您的 Travis CI 项目的公共 SSH 密钥,并通过运行以下命令将其保存到文件中

      travis pubkey > travis.pub
      
    3. 使用关联的存储库中的 catalyze 命令行客户端将密钥添加为部署密钥。例如

      catalyze deploy-keys add travisci ./travis.pub code-1
      

      其中 code-1 是您的服务名称。

  3. 为 Travis CI 设置 Catalyze 作为已知主机
    1. 通过运行 cat ~/.ssh/known_hosts 列出您的已知主机。
    2. 找到并复制包含在 步骤 1 中找到的 git 远程地址的行。它看起来像这样

      [git.catalyzeapps.com]:2222 ecdsa-sha2-nistp256 BBBB12abZmKlLXNo...
      
    3. 更新 .travis.yml 中的 before_deploy 步骤以更新 known_hosts 文件

      before_deploy:  echo "[git.catalyzeapps.com]:2222 ecdsa-sha2-nistp256 BBBB12abZmKlLXNo..." >> ~/.ssh/known_hosts
      

部署文件的一部分 #

例如,要仅部署 build 文件夹,请设置 skip_cleanup: true 和 path: “build”

deploy:
  provider: catalyze
  target: "ssh://git@git.catalyzeapps.com:2222/app1234.git"
  skip_cleanup: true
  path: "build"

在部署前后运行命令 #

有时您可能希望在部署之前或之后运行命令。您可以使用 before_deployafter_deploy 阶段来实现。这些阶段仅在 Travis CI 实际部署时触发。

before_deploy: "echo 'ready?'"
deploy:
  ..
after_deploy:
  - ./after_deploy_1.sh
  - ./after_deploy_2.sh