当新的 Prismic 内容发布时,如何将我的 Gatsby 站点部署到 Azure?

问题描述

我目前的工作流程很糟糕!这是由于缺乏静态站点生成器的经验。我有一个用 Gatsby 构建的网站。内容来自 Prismic Headless CMS。我通过命令行 Git 部署到 Azure 静态 Web 应用程序。当我推送或手动运行 Github Action 时,该站点会从 Prismic 获取所有内容,进行构建和部署。您必须先在 Prismic 中发布,然后打开 Github 并运行操作。

Prismic 有一个 webhook 选项。您为其提供一个 API 端点和身份验证凭据,并且在发布内容时会执行另一端的任何内容。我还在 Azure 中设置了一个 API 端点,但它现在什么都不做,只是在您访问它时返回一个字符串。

如何在两者之间架起桥梁,以便在 Prismic 发布内容时构建和重新部署站点

解决方法

这是完全可行的(我自己没有尝试过)但需要一些配置。 为此,您需要使用 Github Actions

使用 Github Actions 要求用户添加带有 repo 作用域键的个人访问令牌。要了解更多信息,请参阅 Github 的 docs

您需要在 Prismic Webhooks 设置中添加标题键和值,例如

enter image description here

注意:目前,自定义标头功能处于测试阶段,很快就会发布,请查看this page以了解该功能的进展。

此外,您可以查看这篇 article 文章以获得一些灵感,如果您能与社区分享您的工作,那将会很酷。