post Image
iOS向けfastlaneアクションまとめ

概要

iOS向けのfastlaneアクション(fastlaneで簡単に利用できる機能群)についてざっと知りたい方向けに、公式ドキュメントと概要をまとめてみました。以下のカテゴリに分類してあります。

  • ビルド
  • コード署名
  • Push通知
  • テスト
  • スクリーンショット
  • リリース

fastlane v2.68.0よりアクション名が新しくなっていますので、以下の形式で併記します。
Fastlane core action rename & aliases #10939
v2.68.0以降の新アクション名|旧アクション名

ビルド

build_ios_app, build_app|gym

  • 公式ドキュメント
  • ビルドとiOSパッケージ(ipaファイル)の作成を自動化
  • xcodebuildの代わり
  • 例)gym(scheme: "MyApp")

cocoapods

carthage

badge

  • 公式ドキュメント
  • アプリアイコンにバッジをつける(色やバージョンなどの文言を指定可能)
  • 例)badge --dark

コード署名

get_provisioning_profile|sigh

  • 公式ドキュメント
  • ローカルマシンにCertificateに紐づく有効なProvisioningProfileをセットアップ
  • 例)sigh(adhoc: true, force: true, filename: "myFile.mobileprovision")

sync_code_signing|match

  • 公式ドキュメント
  • gitリポジトリでCertificateとProvisioningProfileを管理
  • 既存のCertificateはrevoke
  • 例)match(type: "appstore", app_identifier: "tools.fastlane.app")

get_certificates|cert

  • 公式ドキュメント
  • ローカルマシンに有効なCertificateと秘密鍵をセットアップ
  • 新規作成や既存の有効なCertificatをローカルに保存など
  • 例)cert(development: true, username: "user@email.com")

Push通知

get_push_certificate|pem

テスト

run_tests|scan

  • 公式ドキュメント
  • テストを実行
  • テスト結果を見やすく整形してコマンドライン出力
  • 例)scan

slather

  • 公式ドキュメント
  • コードカバレッジレポート生成を自動化
  • 例)slather(
    build_directory: "foo",
    input_format: "bah",
    scheme: "MyScheme",
    proj: "MyProject.xcodeproj"
    )

swiftlint

  • 公式ドキュメント
  • ルールに従ったswiftコードのバリデーション処理を自動化
  • 例)swiftlint(mode: :autocorrect)

upload_to_testflight|pilot

  • 公式ドキュメント
  • TestFlightの管理の自動化
  • アプリのアップロードと配布、テスター管理、テスターと端末の情報取得
  • testflightアクションのエイリアス
  • 例)pilot

スクリーンショット

capture_ios_screenshots, capture_screenshots|snapshot

  • 公式ドキュメント
  • 言語別、端末別のスクリーンショットを作成
  • deliverと連携してiTunesConnectへアップロード
  • 例)snapshot(
    skip_open_summary: true,
    clean: true
    )

frame_screenshots|frameit

  • 公式ドキュメント
  • スクリーンショットをiPhoneやmacなど端末写真の画面内にはめ込む
  • キャッチコピー用の文字も挿入可能(色、フォントも指定可能)
  • 例)frameit(rose_gold: true)

リリース

upload_to_app_store|deliver

  • 公式ドキュメント
  • スクリーンショット、メタデータ、アプリバイナリをiTunesConnectへアップロード
  • 例)deliver(
    submit_for_review: true,
    force: true,
    metadata_path: "./metadata"
    )

create_app_online|produce

  • 公式ドキュメント
  • iTunesConnectやApple Developer Portalで新規アプリ作成時に必要な手続きを自動化
  • AppIDやアプリ名、デフォルト言語などの指定
  • アプリの利用サービス(ApplePay、GameCenter、IAPなど)の有効化
  • 例)
produce(
  username: "felix@krausefx.com",
  app_identifier: "com.krausefx.app",
  app_name: "MyApp",
  language: "English",
  app_version: "1.0",
  sku: "123",
  team_name: "SunApps GmbH"
)

check_app_store_metadata|precheck

  • 公式ドキュメント
  • AppStore審査の前にアプリを事前チェックしてリジェクトリスクを減らす
  • メタデータの文言チェックやアプリのスキャンを実行
  • 例)

  • precheck(
    negative_apple_sentiment(level: :skip),
    curse_words(level: :warn)
    )

参考

なるべくメジャーなものを記載しましたが、上記以外にもアクションはたくさんあります。その他のアクションはこちらのドキュメントから確認できます。


『 Swift 』Article List