使用github action同时部署hexo到github和coding最优雅的方式

本文介绍了如何通过GitHub Action将Hexo博客同时部署到GitHub和Coding,支持多账号配置。通过修改Hexo的部署设置和配置SSH密钥路由,实现了在本地和GitHub CI中一键部署。此外,文章还提供了定制GitHub Action的改造方法,以实现同时推送至两个平台。
摘要由CSDN通过智能技术生成

原文发于我的博客和公众号:“Noosphere博客”,“智圈云公众号”,了解相关信息可以关注“智圈云

目标

我们知道使用github action 可以很简单的部署hexo的静态文件到github pages,但是如果在国内我们希望部署到github pages同时也部署到coding,然后通过dns双线路由,另外,我们可能有多个账号,比如公司的和个人的博客或者网站,也是同时部署到coding和github,那就这个github action解决不了,下面我们改造一下,使其达到这个目标:

  1. hexo的source存放在独立库
  2. 生成的静态文件存在独立的库
  3. 提交markdown文件后,自动生成静态文件
  4. 自动部署到github pages
  5. 自动部署到coding
  6. 同一份hexo source库,只需要配置一次hexo的_config.yml,就可以直接通过hexo deploy -g 或者git push来触发部署
  7. 支持多个github账号,同时也支持多个coding账号

配置hexo的deploy

找到hexo根目录的_config.yml,然后配置deploy字段的内容如下

deploy:
  type: 'git'
  repo: 
    github: 'git@noosphere-coder.github.com:noosphere-coder/noosphere-coder.github.io.git'
    coding: 'git@e.coding.net:noosphere/noosphere.git'
  branch: 'master'

这个配置目标是让我们直接hexo deploy可以同时推送到 github 和 coding 的 pages 仓库

配置 hexo deploy命令支持多个github和coding账号

一般来说,如果我只有一个github的账号,在这个配置下直接执行hexo g -d,一个命令就可以直接完成两个仓库的部署了。

那么如果我们的github账号有多个,比如有一个办公用的,一个私人的,那怎么办?
我们知道 git 的 ssh 推送方式是需要使用特定的 key 的, 所以,我们只需要配置 ssh 去路由特定的域名到key即可.

根据需求,在配置这个ssh key的路由之前,我们要先生成一个key用于做pages部署

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值