Skip to content

Commit 944186b

Browse files
committed
fix: update workflow to require manual updates for version changes in MySQL Shell
1 parent 7df81ee commit 944186b

File tree

1 file changed

+48
-15
lines changed

1 file changed

+48
-15
lines changed

.github/workflows/check-new-release.yml

Lines changed: 48 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -269,25 +269,15 @@ jobs:
269269
fi
270270
fi
271271
272-
# GitHub Actions ワークフローファイルの更新
273-
local workflow_pattern="version: ${major_version}\\.[0-9]"
274-
local workflow_replace="version: ${short_version}"
275-
for workflow in .github/workflows/docker-*.yml; do
276-
if [[ -f "$workflow" ]]; then
277-
if [[ "$DRY_RUN" != "true" ]]; then
278-
sed -i "s/$workflow_pattern/$workflow_replace/g" "$workflow" || {
279-
echo "::warning::Failed to update version in $workflow, but continuing..."
280-
}
281-
else
282-
echo "dry run: $workflow 内の '$workflow_pattern' を '$workflow_replace' に更新"
283-
fi
284-
fi
285-
done
272+
# ワークフローファイルの更新部分を削除
273+
# この部分を削除または以下のようにコメントアウト
274+
echo "::notice::ワークフローファイルは手動更新が必要です: .github/workflows/docker-*.yml 内の version: ${major_version}.[x] を version: ${short_version} に更新してください"
286275
287276
# PR本文に変更内容を追加
288277
PR_BODY+="* **${type^}:** ${current_version} -> ${new_version}\n"
278+
PR_BODY+="* 注意: ワークフローファイル(.github/workflows/docker-*.yml)は手動で更新する必要があります\n"
289279
290-
# 更新が成功したか確認(少なくともDockerfileは必須)- ドライランでは実行しない
280+
# 更新が成功したか確認
291281
if [[ "$DRY_RUN" != "true" ]]; then
292282
if ! grep -q "ARG MYSQL_SHELL_VERSION=$new_version" docker/$type/Dockerfile; then
293283
echo "::warning::Version update in docker/$type/Dockerfile might have failed, but we'll continue..."
@@ -352,6 +342,49 @@ jobs:
352342
echo "dry run終了: 実際の変更は行われていません。"
353343
fi
354344
345+
# PR作成後に追加のメッセージを表示
346+
- name: Show post-PR creation message
347+
if: steps.check_versions.outputs.INNOVATION_UPDATE_NEEDED == 'true' || steps.check_versions.outputs.LTS_UPDATE_NEEDED == 'true'
348+
run: |
349+
# DRY_RUNがtrueでない場合のみ実行
350+
if [[ "$DRY_RUN" != "true" ]]; then
351+
echo "::group::ワークフローファイル更新手順"
352+
echo "PR #xxx が作成されました。次に手動でワークフローファイルを更新してください。"
353+
echo "1. PRブランチをローカルにチェックアウト:"
354+
echo " git fetch origin $BRANCH_NAME && git checkout $BRANCH_NAME"
355+
echo ""
356+
echo "2. 以下のコマンドでワークフローファイルを更新:"
357+
358+
# Innovation更新の場合
359+
if [[ "${{ steps.check_versions.outputs.INNOVATION_UPDATE_NEEDED }}" == "true" ]]; then
360+
INNOVATION_MAJOR=$(echo "$LATEST_INNOVATION" | cut -d. -f1)
361+
INNOVATION_MINOR=$(echo "$LATEST_INNOVATION" | cut -d. -f2)
362+
INNOVATION_SHORT="${INNOVATION_MAJOR}.${INNOVATION_MINOR}"
363+
echo " # Innovation更新コマンド:"
364+
echo " find .github/workflows -name \"docker-*.yml\" -exec sed -i 's/version: ${INNOVATION_MAJOR}\.x/version: ${INNOVATION_SHORT}/g' {} \\;"
365+
fi
366+
367+
# LTS更新の場合
368+
if [[ "${{ steps.check_versions.outputs.LTS_UPDATE_NEEDED }}" == "true" ]]; then
369+
LTS_MAJOR=$(echo "$LATEST_LTS" | cut -d. -f1)
370+
LTS_MINOR=$(echo "$LATEST_LTS" | cut -d. -f2)
371+
LTS_SHORT="${LTS_MAJOR}.${LTS_MINOR}"
372+
echo " # LTS更新コマンド:"
373+
echo " find .github/workflows -name \"docker-*.yml\" -exec sed -i 's/version: ${LTS_MAJOR}\.x/version: ${LTS_SHORT}/g' {} \\;"
374+
fi
375+
376+
echo ""
377+
echo "3. 変更をコミット:"
378+
echo " git add .github/workflows/"
379+
echo " git commit -m \"Update workflow files for MySQL Shell versions\""
380+
echo ""
381+
echo "4. 変更をプッシュ:"
382+
echo " git push origin $BRANCH_NAME"
383+
echo ""
384+
echo "これで既存のPRにワークフロー更新が追加されます。"
385+
echo "::endgroup::"
386+
fi
387+
355388
# ステップ6: 更新不要の場合の通知
356389
- name: No update needed
357390
if: steps.check_versions.outputs.INNOVATION_UPDATE_NEEDED == 'false' && steps.check_versions.outputs.LTS_UPDATE_NEEDED == 'false'

0 commit comments

Comments
 (0)