Skip to content

ci: Windows・macOS の単体テストと Release ワークフローを追加 - #6

Merged
zredjet merged 1 commit into
mainfrom
ci/release-workflow
Sep 25, 2026
Merged

zredjet merged 1 commit into
mainfrom
ci/release-workflow

Conversation

@zredjet

@zredjet zredjet commented Sep 25, 2026

Copy link
Copy Markdown
Owner

概要

GitHub Actions に2つのワークフローを追加しました。

  • CI: Windows・macOS で単体テストを実行する
  • Release: タグの push で Windows・macOS 向けの実行ファイルを発行し、GitHub Release に添付する

ワークフロー

CI(.github/workflows/ci.yml)

  • 実行タイミング: PR、main への push
  • 内容: windows-latest と macos-latest で dotnet test

Release(.github/workflows/release.yml)

  • 実行タイミング: v* タグの push(リリースを作成する)、手動実行・このワークフローか BugConvergenceTool.csproj を変更した PR(成果物のアップロードのみ)
  • 各 OS の処理(windows-latest → win-x64、macos-latest → osx-arm64):
    1. 単体テスト
    2. 自己完結型の単一ファイルとして発行(ネイティブライブラリも実行ファイルに含める。タグの v を除いた部分を Version に設定)
    3. 動作確認: 発行した実行ファイルを別のディレクトリから、サンプルデータ(Templates/Template.xlsx)と主要オプション(--all-extended --holdout-days 5 -d --pi --ma --ci)で実行し、Excel・レポート・グラフ5枚が出力されることを確認
    4. アーカイブ作成(Windows は zip、macOS は実行権限を保つため tar.gz)
  • リリース: gh release create で GitHub Release を作成し、アーカイブを添付(リリースノートは自動生成。ハイフンを含むタグはプレリリース)
  • その他:
    • 動作確認で出力したグラフも成果物(smoke-output-*、7日間)として残すので、文字化けを目視で確認できる
    • 権限は contents: read を基本とし、リリースを作るジョブだけ contents: write にしている

README

  • ビルド済み実行ファイルのダウンロードと、使うときの注意(macOS の Gatekeeper、Windows の SmartScreen)
  • CI とリリース手順

確認

  • actionlint: 指摘なし
  • osx-arm64 の発行と動作確認のステップをローカル(macOS)で再現し、成功することを確認
  • Windows で発行した実行ファイルの動作は、この PR の Release ワークフロー(PR で実行される)で確認する

補足

  • 使用アクション: actions/checkout@v7、actions/setup-dotnet@v6、actions/upload-artifact@v7、actions/download-artifact@v8(いずれも現時点の最新メジャー)
  • macOS の実行ファイルはコード署名・公証をしていない(Apple Developer Program の証明書が必要なため)

🤖 Generated with Claude Code

- CI: PR と main への push で、Windows・macOS の単体テストを実行
- Release: v* タグの push で、各 OS で単体テスト → 自己完結型の単一ファイルを発行
  (win-x64 / osx-arm64)→ 発行した実行ファイルをサンプルデータで実行して動作確認 →
  GitHub Release を作成してアーカイブを添付。手動実行とワークフロー変更時の PR では成果物のみ
- README にダウンロード時の注意(macOS の Gatekeeper など)とリリース手順を追記

Co-Authored-By: Claude Opus 5.5 <[email protected]>
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

@zredjet
zredjet merged commit e035f06 into main Sep 25, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant