mcpField
A
automate-flutter-app-releases

automate-flutter-app-releases

github.com/rodydavisクラウド・DevOps6067 回インストール2 週間前に更新
リポジトリ

automate-flutter-app-releases について

Flutterプロジェクトのメンテナー向けに、beta版とproduction版のリリースを自動化するシェルスクリプトです。バージョン更新、Fastlaneでのリリース、Dartのフォーマット、プロジェクトのクリーンアップ、クラスの再生成、コミット、CocoaPodsの更新をまとめて実行します。

主な機能

  1. 01beta版とproduction版のリリースコマンド
  2. 02pubspec.yamlからのバージョン更新
  3. 03Fastlaneによるアプリリリース
  4. 04Dartのフォーマットとプロジェクトの整理
  5. 05クラスの再生成とCocoaPodsの更新

活用シーン

  1. 01Flutterアプリのbeta版リリース準備
  2. 02アプリのproduction版リリース実行
  3. 03リリース前のフォーマットと再ビルド

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/rodydavis/skills --skill automate-flutter-app-releases

インストール後、Claude Code で/automate-flutter-app-releasesを入力して読み込まれたか確認します。

詳細

Flutter アプリのリリースを自動化する

TLDR スクリプトはこちらから入手できます。

#!/bin/bash

echo "App Release Automator by @rodydavis"

action="$1"
red=`tput setaf 1`
green=`tput setaf 2`
reset=`tput sgr0`

if [ ${action} = "build" ]; then

    echo "${green}Generating built files.. ${reset}"
    flutter packages pub run build_runner clean
    flutter packages pub run build_runner build --delete-conflicting-outputs

    pub global activate pubspec_version
    git commit -a -m "Build $(pubver bump patch)"
    
    echo "${green}Building Project...${reset}"
    find . -name "*-e" -type f -delete
    flutter format .
    flutter clean

    echo "${green}Project Size: $(find . -name "*.dart" | xargs cat | wc -c)${reset}"

    echo "${green}Building APK...${reset}"
    flutter build apk

    echo "${green}Builing IPA..${reset}"
    cd ./ios && pod install && pod repo update && cd ..
    flutter build ios

    git commit -a -m "Project Rebuilt"


elif [ ${action} = "beta" ]; then

    echo "${green}Generating built files..${reset}"
    flutter packages pub run build_runner clean
    flutter packages pub run build_runner build --delete-conflicting-outputs

    pub global activate pubspec_version
    git commit -a -m "Beta $(pubver bump patch)"
    
    echo "${green}Building Project...${reset}"
    find . -name "*-e" -type f -delete
    flutter format .
    flutter clean

    echo "${green}Project Size: $(find . -name "*.dart" | xargs cat | wc -c)${reset}"

    echo "${green}Building APK...${reset}"
    flutter build apk

    echo "${green}Sending Android to Beta...${reset}"
    cd ./android && fastlane beta && cd ..

    echo "${green}Builing IPA..${reset}"
    flutter build ios

    echo "${green}Sending iOS to Beta..${reset}"
    cd ./ios && fastlane beta && cd ..

    git commit -a -m "Sent to Beta"


elif [ ${action} = "release" ]; then

    echo "${green}Generating built files..${reset}"
    flutter packages pub run build_runner clean
    flutter packages pub run build_runner build --delete-conflicting-outputs

    pub global activate pubspec_version
    git commit -a -m "Production $(pubver bump minor)"

    echo "${green}Building Project...${reset}"
    find . -name "*-e" -type f -delete
    flutter format .
    flutter clean

    echo "${green}Project Size: $(find . -name "*.dart" | xargs cat | wc -c)${reset}"

    echo "${green}Building APK...${reset}"
    flutter build apk

    echo "${green}Sending Android to Production...${reset}"
    cd ./android && fastlane release && cd ..

    echo "${green}Builing IPA..${reset}"
    flutter build ios

    echo "${green}Sending iOS to Production...${reset}"
    cd ./ios && fastlane release && cd ..

    git commit -a -m "Sent to Production"

fi

echo "${green}Successfully completed${reset}"

必要なもの:

  • 各ディレクトリでの Fastlane のセットアップ
  • 依存関係としての build_runner
  • VCS 内の Git プロジェクト

実行手順:

  1. このファイルをダウンロードし、Flutter プロジェクトのルートに配置します
  2. ターミナルを開き、プロジェクトの場所に移動します
  3. 次のコマンドを入力します:chmod +x release.sh

使い方

  • ベータ版の場合:./release.sh beta
  • 本番版の場合:./release.sh release

次の処理が実行されます:

  • pubspec.yaml のバージョンを使用している場合、バージョン番号を更新します
  • Fastlane でアプリをリリースします
  • すべての Dart ファイルをフォーマットします
  • プロジェクトをクリーンアップします
  • クラスを再ビルドします
  • コミットメッセージを追加します

ビルドをベータ版と本番版に向けて自動化し、作業を楽にしましょう!

必要なもの

  • 各ディレクトリでの Fastlane のセットアップ
  • 依存関係としての build_runner
  • VCS 内の Git プロジェクト

初期設定

  • このファイルをダウンロードします
  • Flutter プロジェクトのルートに配置します
  • ターミナルを開き、プロジェクトの場所に移動します
  • 次のコマンドを入力します:chmod +x release.sh

使い方

このスクリプトを実行できるようになりました!

  • ベータ版の場合:./release.sh beta
  • 本番版の場合:./release.sh release

概要

  • pubspec.yaml のバージョンを使用している場合、バージョン番号を更新します
  • Fastlane でアプリをリリースします
  • すべての Dart ファイルをフォーマットします
  • プロジェクトをクリーンアップします
  • クラスを再ビルドします
  • コミットメッセージを追加します
  • Cocoa Pods を更新します

コメント