Bläddra i källkod

Fix github action and publish 0.0.25

杜府 3 år sedan
förälder
incheckning
89b7cbddc8
4 ändrade filer med 64 tillägg och 26 borttagningar
  1. 59 21
      .github/workflows/auto-releases.yml
  2. 1 1
      components/package.json
  3. 2 2
      doc/guide/changelog.md
  4. 2 2
      doc/guide/changelog_en.md

+ 59 - 21
.github/workflows/auto-releases.yml

@@ -1,10 +1,10 @@
 # 当分支 main 有 push 事件,并且此次 push 包含了 components 目录下的文件时,执行以下任务
 # 读取 components/package.json 中的 version 字段,作为 Releases tag 和 Releases title
-# 读取仓库内的 /doc/guide/changelog.md 的第一行内容,去除 ## 和空格,与 components/package.json 中的 version 字段比较
+# 读取仓库内的 /doc/guide/changelog.md 和 /doc/guide/changelog_en.md 的第一行内容,去除 ## 和空格,与 components/package.json 中的 version 字段比较
 # 如果不相同则此次不需要发布 Release,退出
 # 如果相同则继续往下执行
-# 进入到 .github 目录下,执行 pnpm install,再执行 node releases.js,生成 releases.txt 文件
-# releases.js 实现:读取仓库内的 /doc/guide/changelog.md 和 /doc/guide/changelog_en.md 中第一个二级标题与第二个二级标题之间的内容
+# 读取仓库内的 /doc/guide/changelog.md 中前两个二级标题之间的内容,包含换行和空格
+# 读取仓库内的 /doc/guide/changelog_en.md 中第一个二级标题与第二个二级标题之间的内容,包含换行和空格
 # 将两个内容合并为一个字符串,中间使用 --- 分隔
 # 组成内容示例为:
 # -  新增了一个功能。
@@ -13,6 +13,11 @@
 # 将合并的内容作为 Releases describe
 # Set as the latest release 并发布本次 Release
 
+
+# 进入到 .github 目录下,执行 pnpm install,再执行 node releases.js,生成 releases.txt 文件
+# releases.js 实现:读取仓库内的 /doc/guide/changelog.md 和 /doc/guide/changelog_en.md 中第一个二级标题与第二个二级标题之间的内容
+# 将两个内容合并为一个字符串,中间使用 --- 分隔
+
 name: Auto releases
 
 on:
@@ -36,43 +41,52 @@ jobs:
               run: |
                   echo version=$(cat components/package.json | grep version | head -1 | awk -F: '{ print $2 }' | sed 's/[",]//g' | tr -d '[[:space:]]') >> $GITHUB_OUTPUT
 
-            # 读取仓库内的 /doc/guide/changelog.md 的第一行内容,去除 ## 和空格
+            # 读取仓库内的 /doc/guide/changelog.md 的第一行内容,去除 ## 和空格
             - name: Get md_version
               id: md_version
               run: |
                   echo md_version=$(cat doc/guide/changelog.md | head -1 | sed 's/## //g' | tr -d '[[:space:]]') >> $GITHUB_OUTPUT
 
-            # 比较 Get version 与 Get md_version 的输出内容,如果不相同则此次不需要发布 Release,退出
+            # 读取仓库内的 /doc/guide/changelog_en.md 的第一行内容,去除 ## 和空格
+            - name: Get md_version_en
+              id: md_version_en
+              run: |
+                  echo md_version_en=$(cat doc/guide/changelog_en.md | head -1 | sed 's/## //g' | tr -d '[[:space:]]') >> $GITHUB_OUTPUT
+
+            # 比较 Get version 与 Get md_version 和 Get md_version_en 三者的输出内容,如果不相同则此次不需要发布 Release,退出
             - name: Check version
               run: |
                   if [[ ${{ steps.version.outputs.version }} != ${{ steps.md_version.outputs.md_version }} ]]; then
                       echo "This is not a tag push. Skipping."
                       exit 78
                   fi
+                  if [[ ${{ steps.version.outputs.version }} != ${{ steps.md_version_en.outputs.md_version_en }} ]]; then
+                      echo "This is not a tag push. Skipping."
+                      exit 78
+                  fi
 
-            - name: Setup Node.js environment
-              uses: actions/setup-node@v1
-              with:
-                  node-version: 18.x
-
-            # 安装 pnpm
-            - name: Install pnpm
+            # 读取仓库内的 /doc/guide/changelog.md 中前两个二级标题之间的内容,包含换行和空格
+            - name: Get changelog
+              id: changelog
               run: |
-                  npm install -g pnpm
+                  echo changelog=$(sed -n '1,/##/{/##/!p;}' doc/guide/changelog.md | sed '/^$/d') >> $GITHUB_OUTPUT
 
-            # cd 到 .github 目录下,执行 pnpm install,执行 node releases.js,生成 releases.txt 文件
-            - name: Install dependencies and generate releases.txt
+            # 读取仓库内的 /doc/guide/changelog_en.md 中第一个二级标题与第二个二级标题之间的内容,包含换行和空格
+            - name: Get changelog_en
+              id: changelog_en
               run: |
-                  cd .github
-                  pnpm install
-                  node releases.js
+                  echo changelog_en=$(sed -n '1,/##/{/##/!p;}' doc/guide/changelog_en.md | sed '/^$/d') >> $GITHUB_OUTPUT
 
-            # cd 到 .github 目录下,读取 releases.txt 文件内容,保留其中的换行与空格,作为 Releases describe
+            # 将 Get changelog 和 Get changelog_en 两个输出内容合并为一个字符串,中间使用 --- 分隔,其中的换行和空格保留,--- 单独占一行
             - name: Get body
               id: body
               run: |
-                  cd .github
-                  echo -e body=$(cat releases.txt) >> $GITHUB_OUTPUT
+                  echo body=$(cat <<EOF
+                  ${{ steps.changelog.outputs.changelog }}
+                  ---
+                  ${{ steps.changelog_en.outputs.changelog_en }}
+                  EOF
+                  ) >> $GITHUB_OUTPUT
 
             # 作为 latest release 发布本次 Release
             - name: Release
@@ -85,3 +99,27 @@ jobs:
                   body: ${{ steps.body.outputs.body }}
                   draft: false
                   prerelease: false
+
+            #       - name: Setup Node.js environment
+            #   uses: actions/setup-node@v1
+            #   with:
+            #       node-version: 18.x
+
+            # # 安装 pnpm
+            # - name: Install pnpm
+            #   run: |
+            #       npm install -g pnpm
+
+            # # cd 到 .github 目录下,执行 pnpm install,执行 node releases.js,生成 releases.txt 文件
+            # - name: Install dependencies and generate releases.txt
+            #   run: |
+            #       cd .github
+            #       pnpm install
+            #       node releases.js
+
+            # # cd 到 .github 目录下,读取 releases.txt 文件内容,保留其中的换行与空格,作为 Releases describe
+            # - name: Get body
+            #   id: body
+            #   run: |
+            #       cd .github
+            #       echo body=$(cat releases.txt) >> $GITHUB_OUTPUT

+ 1 - 1
components/package.json

@@ -1,6 +1,6 @@
 {
     "name": "stdf",
-    "version": "0.0.24",
+    "version": "0.0.25",
     "description": "Mobile Web component library based on Svelte and Tailwind",
     "main": "index.js",
     "scripts": {

+ 2 - 2
doc/guide/changelog.md

@@ -1,6 +1,6 @@
-## 0.0.24
+## 0.0.25
 
--   0.0.12 ~ 0.0.24 版本无实质更新,仅用于测试 GitHub Action。
+-   0.0.12 ~ 0.0.25 版本无实质更新,仅用于测试 GitHub Action。
 
 ## 0.0.11
 

+ 2 - 2
doc/guide/changelog_en.md

@@ -1,6 +1,6 @@
-## 0.0.24
+## 0.0.25
 
--   0.0.12 ~ 0.0.24 versions have no substantial updates, only for testing GitHub Action.
+-   0.0.12 ~ 0.0.25 versions have no substantial updates, only for testing GitHub Action.
 
 ## 0.0.11