返回

一键发布OBS,告别手动部署Hexo,构建全自动文章发布流水线

后端

全自动 Hexo 文章发布流水线:一键发布,轻松管理网站

作为一名博主,你是否经常为文章发布而烦恼?手动编译代码、上传到 OBS、刷新 CDN 缓存,这繁琐的流程不仅浪费时间,还容易出错。现在,是时候告别这些麻烦了,使用全自动化的 Hexo 文章发布流水线,实现一键发布文章,让网站更新变得轻松无忧。

前提条件

在开启这趟自动化之旅之前,你需要准备以下材料:

  • 一个 OBS 存储桶和 CDN 加速域名
  • 已安装并配置好的 Hexo
  • 一个 CodeArts 账号

CodeArts 流水线配置

  1. 创建 CodeArts 项目: 登录 CodeArts,创建并命名你的流水线项目。
  2. 使用模板: 在流水线控制台中,选择 "从模板创建",搜索 "使用 CodeArts 发布 OBS,函数工作流刷新 CDN 缓存" 模板,点击使用。
  3. 配置触发器: 选择 "代码提交" 触发器,输入 Hexo 项目的 Git 仓库地址和要监听的分支,例如 "master"。
  4. 添加任务: 在流水线中,添加以下三个任务:
    • 编译 Hexo 网站: 指定 Hexo 项目的根目录。
    • 发布 OBS: 输入 OBS 存储桶名称、根目录、Access Key ID 和 Access Key Secret。
    • 刷新 CDN 缓存: 输入 CDN 加速域名和要刷新的缓存路径。

测试与部署

  1. 测试流水线: 点击 "测试",立即运行流水线,查看日志以确保一切正常。
  2. 部署流水线: 点击 "部署",立即部署流水线,同样查看日志以确认部署成功。

使用流水线发布文章

  1. 编辑或创建文章: 在 Hexo 项目中,编辑或创建你的新文章。
  2. 提交到 Git: 将文章保存并提交到 Git 仓库。
  3. 流水线自动触发: CodeArts 流水线将自动触发,按照配置的任务执行。
  4. 文章发布: 文章将被编译、发布到 OBS,并刷新 CDN 缓存。
  5. 访问网站: 访问你的 Hexo 网站,就能看到最新发布的文章。

优势与好处

  • 全自动化: 一键发布文章,告别繁琐的手动流程。
  • 提升效率: 节省时间和精力,专注于创作优质内容。
  • 降低错误率: 自动化流程减少了人为错误的可能性。
  • 简化管理: 轻松管理网站内容,提升工作效率。

代码示例

以下是 CodeArts 流水线任务的代码示例:

编译 Hexo 网站:

- name: 编译 Hexo 网站
  script: npm run generate

发布 OBS:

- name: 发布 OBS
  script: obs publish . --bucket-name ${OBS_BUCKET} --root ${OBS_ROOT} --access-key-id ${OBS_ACCESS_KEY_ID} --access-key-secret ${OBS_ACCESS_KEY_SECRET}

刷新 CDN 缓存:

- name: 刷新 CDN 缓存
  script: fun cdnPurgeCache --domain ${CDN_DOMAIN} --path ${CDN_CACHE_PATH}

常见问题解答

1. OBS 存储桶或 CDN 加速域名是什么?

  • OBS 存储桶是一个存储你网站文件的位置,CDN 加速域名可以帮助你的网站加载更快。

2. 如何获取 OBS Access Key ID 和 Access Key Secret?

  • 登录你的 OBS 账号,在 "Access Management" 中创建 Access Key。

3. CDN 域名在哪里获取?

  • 登录你的 CDN 服务提供商,在 "域名管理" 中找到你的 CDN 域名。

4. CDN 缓存刷新路径是什么?

  • 这是你想要刷新的 CDN 缓存部分,例如网站的根目录 "/"。

5. 如何更新已发布的文章?

  • 对文章进行更新,提交到 Git 仓库,流水线将自动重新发布更新后的文章。

结论

全自动化的 Hexo 文章发布流水线不仅可以为你节省大量时间,还能提高你的网站管理效率。有了这个强大工具,你可以专注于创作高质量的内容,让你的博客成为信息和见解的宝贵来源。快来尝试一下吧,让自动化为你赋能,简化你的写作之旅。