Merge pull request #89 from kirurobo/dev_win
Some checks failed
Generate preview-upm branches / update (push) Has been cancelled
Generate upm branches / update (push) Has been cancelled

Added a workflow to create a preview UPM branch
This commit is contained in:
Kirurobo
2025-07-16 10:23:32 +09:00
committed by GitHub
2 changed files with 84 additions and 26 deletions

View File

@@ -1,18 +1,17 @@
name: Generate upm branches
name: Generate preview-upm branches
# Reference
# - https://tips.hecomi.com/entry/2021/10/29/001304
on:
push:
# main ブランチが更新されたときではなく、'v*' というタグが push されたときにのみ実行させる
tags:
- v*
branches:
- main
workflow_dispatch:
env:
MAIN_BRANCH: main
UPM_BRANCH: upm
UPM_BRANCH: preview-upm
PKG_ROOT_DIR: UniWinC/Assets/Kirurobo/UniWindowController
SAMPLES_DIR: Samples
DOC_FILES:
@@ -28,11 +27,6 @@ jobs:
fetch-depth: 0
- run: git checkout "$MAIN_BRANCH"
# イベントを起動したタグを steps.tag.outputs.name に格納
- name: Tag name
id: tag
run: echo ::set-output name=name::${GITHUB_REF#refs/tags/v}
# 生成者の名前を設定
- name: Git config
run: |
@@ -40,7 +34,7 @@ jobs:
git config user.email "github-actions[bot]@users.noreply.github.com"
# UPM 用のブランチを作成
- name: Create UPM branches
- name: Create preview UPM branches
run: |
# 古いブランチを削除
git branch -D "$UPM_BRANCH" &> /dev/null || echo "$UPM_BRANCH" branch is not found
@@ -51,28 +45,14 @@ jobs:
# 切り出したブランチに移動
git checkout "$UPM_BRANCH"
## メインブランチにあった README などをインポート
#for file in "$DOC_FILES"; do
# git checkout "$MAIN_BRANCH" $file &> /dev/null || echo "$file" is not found
#done
# サンプルディレクトリを ~ 付きに改名
git mv "$SAMPLES_DIR" "$SAMPLES_DIR~" &> /dev/null || echo "$SAMPLES_DIR" is not found
# サンプルディレクトリの .meta は削除
rm "$SAMPLES_DIR.meta"
## package.json のバージョンを置換
# sed -i -e "s/\"version\":.*$\"version\": \"$TAG\",/" package.json || echo package.json is not found
# タグ名とともにコミット
git commit -am "release $TAG."
git commit -am "Update preview UPM."
# GitHubへプッシュ
git push -f origin "$UPM_BRANCH"
# タグ付きのブランチも作成してプッシュ
git checkout -b "$UPM_BRANCH@$TAG"
git push -f origin "$UPM_BRANCH@$TAG"
env:
TAG: ${{ steps.tag.outputs.name }}

78
.github/workflows/upm.yml vendored Normal file
View File

@@ -0,0 +1,78 @@
name: Generate upm branches
# Reference
# - https://tips.hecomi.com/entry/2021/10/29/001304
on:
push:
# main ブランチが更新されたときではなく、'v*' というタグが push されたときにのみ実行させる
tags:
- v*
workflow_dispatch:
env:
MAIN_BRANCH: main
UPM_BRANCH: upm
PKG_ROOT_DIR: UniWinC/Assets/Kirurobo/UniWindowController
SAMPLES_DIR: Samples
DOC_FILES:
jobs:
update:
runs-on: ubuntu-latest
steps:
# 最新のリリースバージョンを取得
- name: Checkout
uses: actions/checkout@v2
with:
fetch-depth: 0
- run: git checkout "$MAIN_BRANCH"
# イベントを起動したタグを steps.tag.outputs.name に格納
- name: Tag name
id: tag
run: echo ::set-output name=name::${GITHUB_REF#refs/tags/v}
# 生成者の名前を設定
- name: Git config
run: |
git config user.name "github-actions[bot]"
git config user.email "github-actions[bot]@users.noreply.github.com"
# UPM 用のブランチを作成
- name: Create UPM branches
run: |
# 古いブランチを削除
git branch -D "$UPM_BRANCH" &> /dev/null || echo "$UPM_BRANCH" branch is not found
# アセットの中身を UPM ブランチに切り出す
git subtree split -P "$PKG_ROOT_DIR" -b "$UPM_BRANCH"
# 切り出したブランチに移動
git checkout "$UPM_BRANCH"
## メインブランチにあった README などをインポート
#for file in "$DOC_FILES"; do
# git checkout "$MAIN_BRANCH" $file &> /dev/null || echo "$file" is not found
#done
# サンプルディレクトリを ~ 付きに改名
git mv "$SAMPLES_DIR" "$SAMPLES_DIR~" &> /dev/null || echo "$SAMPLES_DIR" is not found
# サンプルディレクトリの .meta は削除
rm "$SAMPLES_DIR.meta"
## package.json のバージョンを置換
# sed -i -e "s/\"version\":.*$\"version\": \"$TAG\",/" package.json || echo package.json is not found
# タグ名とともにコミット
git commit -am "release $TAG."
# GitHubへプッシュ
git push -f origin "$UPM_BRANCH"
# タグ付きのブランチも作成してプッシュ
git checkout -b "$UPM_BRANCH@$TAG"
git push -f origin "$UPM_BRANCH@$TAG"
env:
TAG: ${{ steps.tag.outputs.name }}