如何使用 GitHub Actions 部署和管理 Ghost 主题

越来越成为一个 流行的开源 CMS. 它是轻量级且对开发人员友好的。 是的,它比 WordPress 快得多。

我们使用 Ghost for Linux 手册。 如果您也使用它,您可能会遇到每次更改主题时都重新上传主题的不便。

GitHub 操作,您可以直接从 GitHub 对所有主题文件进行更改,而无需担心一次又一次上传更改的额外步骤。

使用 GitHub 操作部署 Ghost 主题的步骤

在本教程中,我详细介绍了每个步骤。 即使你是 GitHub 的新手,也不应该有任何麻烦。

我已经部署了一个全新的 Ghost 博客来向您展示它是如何完成的。 我从默认的 Casper 主题开始,然后向您展示将其更改为使用 GitHub Actions 部署的不同主题的步骤。

先决条件:

您将需要以下内容:

  • 对幽灵博客的管理员访问权限
  • GitHub 账号
  • 对 YAML 语法的基本知识表示赞赏,但不是必需的

第 1 步:为 GitHub Actions 添加自定义集成

登录您的 Ghost admin 您托管和管理博客的面板。 它通常是 yourblogdomainname.com/ghost。

登录后,转到 集成 设置下的部分。 单击底部的“添加自定义集成”。

它将打开一个弹出窗口,以便您提供必要的详细信息。

我们将其称为“Github Actions”,以便您可以轻松回忆起它的用途。

完成后,您将看到一些显示给您的参数。 在稍后阶段,您将需要 Admin API 密钥和 API URL。 API URL 是您的博客的 URL,您显然已经知道了。

您可以随时访问新添加的自定义集成并获取 API 密钥。

第 2 步:在 GitHub 上创建或派生主题存储库

登录到您的 GitHub 帐户。 没有的话可以报名 这里.

你可以做以下两件事之一:

  • 如果您选择的 Ghost 主题是开源的并且在 GitHub 上可用,请分叉存储库。
  • 如果您购买了 Ghost 主题,则应先创建一个私有存储库,然后将代码放在这里。 如果您可以在不违反条款的情况下这样做,您应该咨询主题开发人员。

这里我用过 谎言主题 作为一个 example 它使用开源 MIT 许可证。 我要去 fork 其 GitHub 存储库.

现在您拥有了自己的主题存储库。

步骤 3:在存储库中配置工作流

转到分叉或新的存储库,然后单击“设置“在右边你会发现”秘密” 在底部左侧的列中。

GitHub 设置

在这里,您需要根据之前在自定义集成步骤中获得的 API 密钥值创建两个新的存储库机密。

API URL 对应于 GHOST_ADMIN_API_URL,Admin API Key 对应于 GHOST_ADMIN_API_KEY。 Enter 获得的值并相应地添加它们:

添加值后,您在 GitHub 上分叉的 ghost 主题存储库上的 Secrets 页面将如下所示:

请注意,此存储库已经包含一个“.github”目录。 如果您的主题存储库没有“.github”目录,那么您也必须创建一个。

在 .github 目录中创建另一个目录,名为“工作流程“。创建文件时,只需按键盘上的“/”按钮,输入目录名称,然后再次按“/”。现在您可以在其下写入文件名,名称为“deploy-theme.yml”。

确保使用以下内容保存文件:

name: Deploy Theme
on:
  push:	
    branches:	
      - master
      - main
jobs:
  deploy:
    runs-on: ubuntu-18.04
    steps:
      - uses: actions/[email protected]
      - uses: TryGhost/[email protected]
        with:
          api-url: ${{ secrets.GHOST_ADMIN_API_URL }}
          api-key: ${{ secrets.GHOST_ADMIN_API_KEY }}

第 3 步:通过 GitHub 操作部署 Ghost 主题

单击“操作”选项卡。 在“所有工作流程”下,您可以单击“部署主题”以查看您的新 Ghost 主题部署的详细信息。

注意到“创建 deploy-theme.yml”旁边的绿色复选标记了吗? 这意味着部署已经成功! 典型的 GitHub Action 工作流程如下所示:

如果您好奇,可以尝试单击上面显示的五个标题,并了解有关部署如何进行的所有详细信息。

如果出现红色十字标志而不是上述绿色复选标记,则这五个部分中的一个或多个必须受到影响。 如果您需要诊断将来遇到的错误,那么在这种情况下检查他们的详细信息会很有帮助。

正如您在此处看到的,所有五个都已检查,我们可以确定我们的部署按预期进行。

第 4 步:在 Ghost 上激活新主题 admin 控制板

现在回到你的幽灵身边 admin 控制板。 转到设置 -> 设计 – 您会注意到新主题已列在“已安装的主题”下。

但是要开始使用它,您仍然需要激活它。

激活后,新主题将为您的博客启用!

记住

从此时起,您对分叉主题存储库所做的任何更改都将立即对您的 Ghost 博客主题生效。 每次进行更改时,您都不需要将主题上传到您的 Ghost 博客。

为避免即时部署太多更改,您不应直接从 GitHub 帐户对主分支进行任何更改。

标准工作流程是

  • 创建一个开发分支
  • 将此分支拉到您的系统
  • 修改代码
  • 提交更改并将其推送到开发分支
  • 从开发分支创建到主分支的合并请求

当拉取请求合并到主分支时,它会将修改后的代码部署到您的 Ghost 博客。

这似乎是一项艰巨的任务,但相信我,一旦您完成了这个设置,它就会简化 Ghost 主题的部署。 您拥有所做更改的历史记录,您可以接受或拒绝更改,它会自动上传到您的 Ghost 实例。

希望这可以帮助您更有效地管理您的 Ghost 博客!

请加入对话并在下面的讨论部分分享您可能有的任何想法。