From add6d3f4e047f730c5a5c6da75c7ecb72b7eecb6 Mon Sep 17 00:00:00 2001 From: bisnsh Date: Sat, 7 Feb 2026 16:34:56 +0800 Subject: [PATCH] gitea: add workflow for CI/CD --- .gitea/workflows/main.yml | 49 +++++++++++++++++++++++++++++++++++++++ package-lock.json | 20 ++++++++-------- 2 files changed, 59 insertions(+), 10 deletions(-) create mode 100644 .gitea/workflows/main.yml diff --git a/.gitea/workflows/main.yml b/.gitea/workflows/main.yml new file mode 100644 index 0000000..1d5d6b9 --- /dev/null +++ b/.gitea/workflows/main.yml @@ -0,0 +1,49 @@ +name: 自动部署 + +on: + push: + branches: + - master + # Gitea 支持 release 触发,但确保你的 Gitea 版本较新 + release: + types: + - published + workflow_dispatch: + +env: + TZ: Asia/Shanghai + +jobs: + deploy: + # 这里的 ubuntu-latest 对应你 runner config 里定义的 label + runs-on: ubuntu-latest + steps: + - name: 检查分支 + uses: actions/checkout@v4 # 建议先用 v4,兼容性最稳 + with: + # Gitea 中默认不需要专门传 token 即可 checkout 公开仓库 + # 但为了 push 回去,我们保持 fetch-depth + fetch-depth: 0 + + - name: 缓存项目 npm 包 + id: cache-node-modules + uses: actions/cache@v4 + with: + path: node_modules + key: ${{ runner.os }}-nodeModules-${{ hashFiles('package-lock.json') }}-${{ hashFiles('package.json') }} + + - name: 安装 Node + uses: actions/setup-node@v4 + with: + node-version: "22" + + - name: 安装依赖并生成 + run: | + npm install -g hexo-cli + npm install + npm run clean + npm run build + + - name: 通知服务器 Hook + run: | + curl -k -X POST "https://45.145.229.95:40606/hook?access_key=1XJG8IvYTSZVvD5dpm86GYIpQxgxBcucULnX1MFskZSKayXU" \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 1b379d4..2d64b39 100644 --- a/package-lock.json +++ b/package-lock.json @@ -73,9 +73,9 @@ } }, "node_modules/@babel/generator": { - "version": "7.29.0", - "resolved": "https://mirrors.huaweicloud.com/repository/npm/@babel/generator/-/generator-7.29.0.tgz", - "integrity": "sha512-vSH118/wwM/pLR38g/Sgk05sNtro6TlTJKuiMXDaZqPUfjTFcudpCOt00IhOfj+1BFAX+UFAlzCU+6WXr3GLFQ==", + "version": "7.29.1", + "resolved": "https://mirrors.huaweicloud.com/repository/npm/@babel/generator/-/generator-7.29.1.tgz", + "integrity": "sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==", "license": "MIT", "dependencies": { "@babel/parser": "^7.29.0", @@ -1347,7 +1347,7 @@ "version": "7.2.3", "resolved": "https://mirrors.huaweicloud.com/repository/npm/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "deprecated": "Glob versions prior to v9 are no longer supported", + "deprecated": "Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me", "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", @@ -3308,9 +3308,9 @@ } }, "node_modules/p-limit": { - "version": "7.2.0", - "resolved": "https://mirrors.huaweicloud.com/repository/npm/p-limit/-/p-limit-7.2.0.tgz", - "integrity": "sha512-ATHLtwoTNDloHRFFxFJdHnG6n2WUeFjaR8XQMFdKIv0xkXjrER8/iG9iu265jOM95zXHAfv9oTkqhrfbIzosrQ==", + "version": "7.3.0", + "resolved": "https://mirrors.huaweicloud.com/repository/npm/p-limit/-/p-limit-7.3.0.tgz", + "integrity": "sha512-7cIXg/Z0M5WZRblrsOla88S4wAK+zOQQWeBYfV3qJuJXMr+LnbYjaadrFaS0JILfEDPVqHyKnZ1Z/1d6J9VVUw==", "license": "MIT", "dependencies": { "yocto-queue": "^1.2.1" @@ -4127,9 +4127,9 @@ "license": "0BSD" }, "node_modules/undici": { - "version": "7.20.0", - "resolved": "https://mirrors.huaweicloud.com/repository/npm/undici/-/undici-7.20.0.tgz", - "integrity": "sha512-MJZrkjyd7DeC+uPZh+5/YaMDxFiiEEaDgbUSVMXayofAkDWF1088CDo+2RPg7B1BuS1qf1vgNE7xqwPxE0DuSQ==", + "version": "7.21.0", + "resolved": "https://mirrors.huaweicloud.com/repository/npm/undici/-/undici-7.21.0.tgz", + "integrity": "sha512-Hn2tCQpoDt1wv23a68Ctc8Cr/BHpUSfaPYrkajTXOS9IKpxVRx/X5m1K2YkbK2ipgZgxXSgsUinl3x+2YdSSfg==", "license": "MIT", "engines": { "node": ">=20.18.1"