【GitHub Action / Pages】自动化部署同步掘金平台

6,162 阅读4分钟

前言

大家好,我是 “酱酱们的每日掘金” 的主理人之一。

(负责船长Captain 带队的 “茶酱” )

image.png

(ps:在第175期开始,正式改名为酱酱们的每日掘金,之前是酱酱们的下午茶。)

image.pngimage.png

今天呢,给大家介绍一个 自动化同步文章平台(auto-sync-blog) 项目。

一、项目介绍

项目名:自动化同步文章平台(auto-sync-blog)

自动化执行任务:获取掘金指定用户指定专栏的文章, 并将文章目录链接更新至GitHub Pages.

自动化运行时间:北京时间下午 16:20 左右.

作用:实现在写作平台(如掘金、CSDN、简书等)的每日能进行自动同步数据(文章标题和链接);同时,对文章进行友好的分类,并实现更直观的浏览那些年写过的文章。(目前仅支持掘金平台的同步,其他还在开发。)

二、展示效果

老规矩,先上展示效果!

tea-blog1.gif

三、操作流程

视频教程传送门:www.bilibili.com/video/BV1Vh…

接下来,跟着操作流程,实现 github 同步掘金文章。

第一步,fork 仓库

  1. 访问 github.com/TeaTools/au…
  2. Fork 仓库,创建 Fork

第二步,给该仓库添加权限(创建并添加仓库权限,也就是添加 Personal access tokens (classic)

1. 找到 Personal access tokens (classic)

点击右上角头像 ——》 Setting ——》 跳到的个人 Setting 页 ——》 往下拉直到出现 Developer settings 并点击 ——》Personal access tokens ——》 Tokens (classic) ——》 Generate new token ——》 Generate new token (classic)

image.png

然后会出现让输入密码,输入就继续下一步。

2. 添加 Personal access tokens (classic)

输入好记的命名,后面方便再来看,能好知道这个是哪个项目的。这里就直接弄仓库名了(用户名.github.io

image.png

下面的权限都勾选后,点击创建 token

跳转的页面,会生成一段密钥 key,这段 key出现一次,要保存好。如果忘了可以重新走这个步骤去生成。复制这段 key

image.png

3. 仓库添加 PRESS_TOKEN_TEA_BLOG

打开 fork 的仓库 ——》 Settings ——》 Security 下的 Secrets and variables ——》 Actions ——》 New repository secret

image.png

把刚刚复制的 key 粘贴到 Secret * 下的输入框中 ——》 Name * 下的输入框必须要输入的是PRESS_TOKEN_TEA_BLOG(不可改动)。

image.png

第三步,添加掘金的用户id(即 user_id )

复制个人主页的 .../user/ 后面跟的那串数字,这串数字就是你的 user_id.

image.png

打开 fork 的仓库 ——》 Settings ——》 Security 下的 Secrets and variables ——》 Actions ——》 New repository secret

image.png

image.png

第三步(二),额外步(指定专栏的步骤,指定用户的可忽略这步)

这里是要《酱酱们的每日掘金》的专栏,那么这里还需要多加一步。就多添加一个JUEJIN_COLUMN_ID.

image.png

image.png

第四步,修改 actions 权限

Setting ——》 Actions ——》 General ——》 Actions permissions 下,选择 Allow all actions and reusable workflows ——》 Workflow permissions 下,选择 Read and write permissions.

image.png

第五步,启动 actions

Actions ——》 blog-catch-and-pages ——》 Run workflow ——》Run workflow

image.pngimage.png

第六步,blog-catch-and-pages 完成

等待完成,绿色打钩✔通行

image.png

第七步,检查 pages 路径是否选择 gh-pages 分支和路径正确

必须要在gh-pages分支的根目录下,这里原本是 main 分支的根目录下的,所以需要检查并修改一下。

Settings ——》 Pages ——》 gh-pages ——》Save

image.png

最后,等待自动的 actions 去 pages 操作,绿色,访问,完成!

修改完成后,它需要 actions 会重新 pages.(即 actions 里的 pages-build-deployment 会重新进行执行)等待完成后,访问自己的 github.io (即 用户名.github.io ) 。

image.png

四、体验地址(直观展示与体验)

指定专栏

《每日掘金》专栏的 github pages 是tea-blog.github.io/auto-sync-blog

指定用户

南方者的对应 github pages 是 nanfangzhe404.github.io/auto-sync-blog

五、其他问题

库有更新了,同步步骤

后续会基于不改变当前库的前提下,闲余时间会继续开发,完善更完美的同步 github 。

image.png

更多Q&A

六、技术要点和总结

  1. 熟悉 actions 的机制(主要就是.github\workflows\xxx.yml的配置,包括如何传参actions
  2. vuepress 的熟悉,把 vuepress 的相关配置进行模板化,每次都能保证是新生成。
  3. 寻找请求地址和模拟请求地址(寻找掘金相关的请求地址,浏览器的F12 网络进行找)
  4. 把请求得来的数据进行处理,生成相关 markdown 文档。

七、鸣谢

  1. 这位大佬的开源项目: github.com/dravenww/cu…
  2. 船长Captain 的支持
  3. “茶酱” 其他主理人的支持
  4. ...

文章小尾巴

文章写作、模板、文章小尾巴可参考:《写作“小心思”》
  感谢你看到最后,最后再说两点~
  ①如果你持有不同的看法,欢迎你在文章下方进行留言、评论。
  ②如果对你有帮助,或者你认可的话,欢迎给个小点赞,支持一下~
   我是南方者,一个热爱计算机更热爱祖国的南方人。
  (文章内容仅供学习参考,如有侵权,非常抱歉,请立即联系作者删除。)