【问题标题】:Disable Continuous Deployment on netlify在 netlify 上禁用持续部署
【发布时间】:2019-09-30 04:35:24
【问题描述】:

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

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

  • master 分支已更新
  • travis 构建已触发
  • travis 完成后,它会调用 netlify 构建挂钩来启动 netlify 部署

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

【问题讨论】:

    标签: git netlify netlify-cli


    【解决方案1】:

    停止自动部署您的网站构建

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

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

    关闭分支的构建

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

    构建案例 #1(无需构建)

    您可能有一个在 3rd 方 CI 系统上预构建的网站,例如 GitHub Actions,您的工作流程是将静态网站更改推送回存储库。在这种情况下,您并没有关闭构建步骤,而是希望它在发生更改时发布。

    解决方案: 创建什么都不做的构建命令。例如,"echo 'There is nothing to build here!'"

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

    虽然这用于 CLI 部署,但您可能还有其他原因想要忽略分支。您只是不想让站点做任何事情,因为它正在通过netlify-cli 构建和部署。

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

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

    【讨论】:

    • 嘿,我已经试过了,但我又试了一次,只要我向 master 提交,它仍然会开始构建
    • 那时我会发送电子邮件给支持,因为如果我们谈论的是同一件事,那不应该发生。
    • 我可以验证这仍然不会阻止提交时的部署,但它应该。我想要关闭它的原因是因为持续部署与通过 CLI (Netlify Dev) 创建的 netlify lambda 函数兼容。
    • @JeffLowery “停止自动发布”应该停止部署您的生产版本。它不会停止构建。我扩展了这个问题,给出了几个停止构建和预览的例子。有很多情况可以通过设置来处理,如果不了解和测试持续部署如何在 Netlify 上工作,其中一些情况就不是很清楚了。
    猜你喜欢
    • 1970-01-01
    • 2020-10-28
    • 1970-01-01
    • 2021-06-19
    • 2021-11-11
    • 2019-01-24
    • 1970-01-01
    • 1970-01-01
    • 2014-04-08
    相关资源
    最近更新 更多