Buddy 在 CSS-Tricks 上

❥ 赞助

这里有一点直接的产品推荐:我实际上在所有项目中使用 Buddy 进行部署。

Buddy 不仅仅是一个部署工具,我们稍后会讲到,但这确实是 Buddy 做得非常好的事情,也是你可能想选择它的原因之一,如果你正在寻找可靠、高质量的部署服务。

以下是我的当前设置

  • CSS-Tricks 是一个 WordPress 网站。
  • 整个 wp-content 文件夹是 GitHub 上的一个私有仓库。
  • 托管在 Flywheel 上,它允许我访问服务器的 SFTP。
  • 当我推送到 Master 分支时,Buddy 会自动通过 SFTP 部署已更改的文件。这是非常快的,因为它只处理已更改的文件。

Buddy 上的此设置非常不错且简单,我从未遇到过任何问题。你可能还想考虑使用 零停机时间部署,其中文件首先上传到一个单独的目录,如果整个上传成功,则与目标目录交换。

我不仅在 CSS-Tricks 上使用此设置,而且在我所有需要这种部署类型的网站上都使用它。

但正如我所说,Buddy 不仅仅是部署。Buddy 的核心是管道。你可以(以可视化的方式)配置你想要 Buddy 替你执行的一系列任务,以及触发它的条件。推送到 Master 只是一个可能的触发条件,你也可以手动或按照计时器触发它们。

哪些任务?嗯,一个常见的任务是运行你的测试。你知道:持续集成 (CI) 和持续部署 (CD)。你可以告诉 Buddy 运行你想要的任何终端命令(它们会为你创建一个 Docker 容器),因此无论你如何运行测试并获取输出,都将正常工作。

你可以让它发送电子邮件、访问其他网络服务或运行构建过程。

以下是我现在在我的管道中运行的实际任务

  1. 通过 SFTP 上传文件
  2. 告诉 Cloudflare 清除网站上的所有缓存
  3. 向 Slack 上的特定频道发送消息(在失败时也执行此操作)

非常有用。

它非常易于设置,几乎鼓励你使用管道做更多事情。我需要在其中加入一些 Cypress 测试,而且我非常希望集成一个操作来自动优化提交中的所有图像。