有了这款 GitHub Action,码云的付费服务也能免费用!

本文由 yanglbme 原创发布。java

使用 GitHub Pages 时,每当项目有更新,GitHub 会自动帮咱们从新部署 GitHub Pages。对于国内的 Gitee Pages,通常状况下没法自动部署,除非咱们开通 Gitee Pages Pro 功能。而 Pro 功能的开通,须要知足如下其中一个条件:git

  • 花钱开通 Pro 功能,¥99/年。
  • Gitee 项目足够优秀,获得 Gitee 官方的推荐,那么 Gitee 就会提示“您的项目为推荐项目,已自动为您开通 Gitee Pages Pro”。

为了帮助更多朋友实现 Gitee Pages 的自动部署,我开发了 Gitee Pages Action,只须要在项目的 Settings 页面下配置 keys,而后在 .github/workflows/ 下建立一个工做流,引入一些配置参数便可。github

入参

参数 描述 是否必传 默认值
gitee-username Gitee 用户名 -
gitee-password Gitee 密码 -
gitee-repo Gitee 仓库 -
branch 构建的分支 master
directory 构建的目录 ''
https 是否强制 HTTPS true

示例

如下是一个完整示例。ubuntu

在你的 GitHub 仓库 .github/workflows/ 文件夹下建立一个 sync.yml 文件,内容以下:ui

name: Sync

on:
 push:
 branches: [ master ]

jobs:
 build:
 runs-on: ubuntu-latest
 steps:
 - name: Sync to Gitee
 uses: wearerequired/git-mirror-action@master
 env:
          # 注意在 Settings->Secrets 配置 GITEE_RSA_PRIVATE_KEY
 SSH_PRIVATE_KEY: ${{ secrets.GITEE_RSA_PRIVATE_KEY }}
 with:
          # 注意替换为你的 GitHub 源仓库地址
 source-repo: "git@github.com:doocs/advanced-java.git"
          # 注意替换为你的 Gitee 目标仓库地址
 destination-repo: "git@gitee.com:Doocs/advanced-java.git"

 - name: Build Gitee Pages
 uses: yanglbme/gitee-pages-action@master
 with:
          # 注意替换为你的 Gitee 用户名
 gitee-username: yanglbme
          # 注意在 Settings->Secrets 配置 GITEE_PASSWORD
 gitee-password: ${{ secrets.GITEE_PASSWORD }}
          # 注意替换为你的 Gitee 仓库
 gitee-repo: doocs/advanced-java
复制代码

先使用 wearerequired/git-mirror-action 将 GitHub 仓库同步到 Gitee 仓库,再使用 yanglbme/gitee-pages-action 实现 Gitee Pages 的自动部署。spa

请确保在 GitHub 项目的 Settings -> Secrets 路径下配置好 GITEE_RSA_PRIVATE_KEY 以及 GITEE_PASSWORD 两个密钥。其中:code

  • GITEE_RSA_PRIVATE_KEY: 存放你的 id_rsa 私钥。
  • GITEE_PASSWORD: 存放你的 Gitee 帐户密码。

若是一切配置正常,并成功触发 Gitee Pages Action ,咱们可能会收到一封来自 Gitee 的告警邮件/站内信。放心,这是 GitHub Action 程序帮咱们登陆到 Gitee 官网,并为咱们点击了项目的部署按钮。cdn

许可证

MITblog

相关文章
相关标签/搜索