Automatisation des releases

VérifiéPrudence

Automatise le processus de release en effectuant une détection de secrets via gitleaks, en générant le CHANGELOG.md à partir de l'historique des commits, en mettant à jour la version dans plusieurs fichiers (package.json, Cargo.toml, tauri.conf.json) et en créant un tag git avec push. Utile pour simplifier les releases et réduire les erreurs manuelles lorsque vous dites "je veux faire une release vX.Y.Z".

Spar Skills Guide Bot
DevOpsIntermédiaire
9002/06/2026
Claude Code
#release#versioning#changelog#gitleaks#automation

Recommandé pour

Notre avis

Automatise le processus de release : vérification des secrets (gitleaks), génération du CHANGELOG, mise à jour de version, commit, tag et push.

Points forts

  • Intègre une vérification de sécurité gitleaks avant chaque release
  • Génère automatiquement un CHANGELOG structuré à partir des commits
  • Met à jour simultanément trois fichiers de version (package.json, Cargo.toml, tauri.conf.json)

Limites

  • Nécessite que gitleaks soit installé dans l'environnement
  • La classification des commits en catégories peut être imparfaite
  • Ne gère pas les cas de conflits de merge ou d'erreurs push
Quand l'utiliser

Lorsque vous préparez une nouvelle version d'un projet Tauri/Node.js et souhaitez un processus standardisé et sécurisé.

Quand l'éviter

Pour des releases qui demandent une validation manuelle complexe ou des étapes de build spécifiques non couvertes.

Analyse de sécurité

Prudence
Score qualité88/100

The skill automates a release process involving git push, npm, and gitleaks. All actions are standard for a release workflow, and it includes a secret scan step and user confirmation to mitigate risks. No destructive or malicious commands.

Points d'attention
  • Executes git push to remote repository, which could propagate changes unintentionally if the user is not careful. However, user confirmation is required.
  • Uses npm install --package-lock-only, which is generally safe but modifies lockfile.
  • Runs gitleaks, a third-party tool, which is fine for its purpose.

Exemples

Release version 1.4.0
v1.4.0 をリリースしたい
Complete release process
リリースしたい

name: release description: 機密情報チェック→CHANGELOG生成→バージョンバンプ→コミット→タグ→プッシュのリリース作業を実行。「リリースしたい」「vX.Y.Z をリリース」と言った時に使用 argument-hint: <version>

Leaner Waigaya リリース手順

引数として新バージョン(例: 1.4.0)を受け取り、以下の手順でリリース作業を行う。

手順

1. 準備確認

  • 引数の <version> から v プレフィックスを除去して正規化する(例: v1.4.01.4.0
  • package.json の現在バージョンを読んで直前タグ(例: v1.3.0)を確認する
  • ユーザーに確認する:「現在 X.Y.Z → v{version} にリリースします。よろしいですか?」
  • git status でコミットされていない変更がないか確認する(あれば警告)

2. 機密情報チェック(gitleaks)

直前タグからHEADまでの差分を gitleaks でスキャンする:

gitleaks detect --log-opts="-p v{prevVersion}..HEAD"
  • 検出あり: リリースを中断し、該当箇所をユーザーに報告する
  • 検出なし: 「機密情報は検出されませんでした」と報告して次へ進む

3. CHANGELOG.md 生成

git log v{prevVersion}..HEAD --oneline でコミット一覧を取得し、内容を読んで以下の形式で CHANGELOG.md の先頭に追記する(既存の CHANGELOG.md がなければ新規作成):

## [X.Y.Z] - YYYY-MM-DD

### Added
- 新機能の説明

### Fixed
- バグ修正の説明

### Changed
- 変更の説明
  • バージョンバンプ用コミットメッセージ(例: "v1.3.0 リリース")はChangelog から除外する
  • コミットメッセージから内容を推測して適切なカテゴリに分類する

4. バージョンバンプ(3ファイル同時更新)

以下の3ファイルのバージョン文字列を更新する:

| ファイル | 更新箇所 | |----------|----------| | package.json | "version": "..." | | src-tauri/Cargo.toml | version = "..." | | src-tauri/tauri.conf.json | "version": "..." |

5. package-lock.json 更新

npm install --package-lock-only

6. コミット

git add CHANGELOG.md package.json package-lock.json src-tauri/Cargo.toml src-tauri/tauri.conf.json
git commit -m "v{version} リリース"

7. タグ作成 & プッシュ

git tag v{version}
git push origin main
git push origin v{version}

8. 完了報告

リリース完了後、以下を報告する:

  • タグ v{version} を作成してプッシュした旨
  • GitHub Actions が自動ビルド・リリースを実行している旨
  • GitHub のリリースページ URL(リポジトリ: leaner-co-jp/leaner-waigaya
Skills similaires