在netlify上禁用持续部署

时间:2019-09-30 04:35:24

标签: git netlify netlify-cli

我有一个项目,其中我使用Travis CI for CI。我在netlify上也有一个网站设置,用于将上述项目部署到该网站。 Travis CI涉及的步骤基本上是运行测试,然后调用netlify构建挂钩来触发构建并在netlify上进行部署。

但是,我遇到的问题是每次master分支更新时netlify都会进行构建和部署。所以,我想要实现的是这个

  • 主分支已更新
  • travis构建已触发
  • 在travis完成后,它将调用netlify构建挂钩,该挂钩将启动netlify部署

netlify似乎有一个添加skip-ci提交消息的选项,但我希望有一个更好的和自动化的解决方案。

1 个答案:

答案 0 :(得分:3)

停止自动构建您的网站版本

可以在Netlify上停止每个站点的自动发布。在Netlify管理控制台中,登录并选择site > Deploys,然后选择“停止自动发布”

enter image description here

“停止自动发布”不会在您的站点的Netlify CI中关闭生成或预览。它只会停止更改站点文件的原子部署!要部署构建,必须手动部署。

关闭分支的构建

这将取决于您要执行的操作,但是我们将介绍几个案例。

构建案例1(无需构建)

您可能有一个在第三方CI系统上预先构建的站点,例如GitHub Actions,而您的工作流程是将静态站点更改推回到存储库中。在这种情况下,您不是要关闭构建步骤,而是希望它在有更改时发布。

解决方案::创建不执行任何操作的构建命令。例如,"echo 'There is nothing to build here!'"

构建案例2(无连续部署,手动部署)

尽管这用于CLI部署,但您可能还有其他原因想要忽略分支。您只是不希望该网站执行任何操作,因为它是通过netlify-cli构建和部署的。

  

此方法将文件直接从本地项目目录上载到Netlify(Read here)上的站点。

解决方案::在网站的管理控制台中将生产分支更改为不存在的分支名称(即does-not-exist),然后关闭部署预览并设置为仅构建生产分支不存在。

enter image description here