首页
/ 静态站点发布定时器:提升您的博客管理效率

静态站点发布定时器:提升您的博客管理效率

2024-05-30 20:53:52作者:申梦珏Efrain

Static Site Post Scheduler

如果你是一位静态网站的拥有者,想要在特定时间自动发布新内容,那么这个开源项目——静态站点发布定时器(Static Site Post Scheduler)将会是你的理想之选。借助Serverless框架,这款工具可以让你无需复杂配置就能实现这一功能,无论你的网站基于Jekyll、Hugo、Phenomic还是Gatsby等任何静态构建平台。

观看演示视频:点击此处

如何工作?

每当有新的拉取请求(即新文章)更新时,GitHub 的Webhook会触发一系列自动化流程:

  1. 如果拉取请求的评论中包含schedule(MM/DD/YYYY H:MM pm)这样的指令,并且提交者是项目合作者,文章就会被安排发布。
  2. 每小时运行一次的无服务器定时任务(Cron Job)检查是否有文章待发布。
  3. 当文章达到预定发布时间,定时任务会自动将该分支合并到master,若你的网站已集成持续集成/持续部署(CI/CD),则会自动重新部署。

取消预设发布的文章只需删除相应的调度评论即可。

架构概览

Webhook架构图:

cloudcraft - post scheduler webhook

Cron Job架构图:

cloudcraft - post scheduler cron setup

安装步骤

首先确保你的计算机上已经安装了Serverless Framework,并且设置了AWS账户。然后通过以下步骤部署该项目:

  1. 克隆仓库并运行npm install安装依赖。
  2. 复制config.prod.example.jsonconfig.prod.json,并填写你的GitHub用户名、API令牌和Webhook密钥。
  3. 使用serverless deploy命令部署服务。
  4. 在GitHub仓库设置中添加Webhook监听URL。
  5. 创建一个PR并尝试一下!

贡献与交流

有改进的想法或建议?欢迎提交PR,创建问题,或者在Twitter上联系@DavidWells

项目特点

  1. 跨平台兼容性:适用于任意静态网站生成器。
  2. 无服务器架构:利用AWS Lambda,降低运维成本。
  3. 安全控制:仅合作者能进行定时发布,保证内容安全。
  4. 简单易用:一键式部署,只需在PR评论中设定发布时间即可。

现在就加入我们,让静态站点的管理变得更加智能化和高效!

登录后查看全文
热门项目推荐