fastlane
詳細情報
| タイトル | fastlane |
|---|---|
| URL | https://fastlane.tools/ |
| バージョン | ver 2.232.2 |
| 更新日 | 2026/02/27 |
| 追加日 | 2016/02/28 |
| 種別 | フリーソフト / オープンソース(MIT) |
| 説明 | iOSアプリのリリースフローを自動化することができるツール。 |
レビュー
概要
fastlaneは、iOSおよびAndroidアプリのビルド・テスト・デプロイプロセスを自動化するオープンソースのモバイル開発ツールです。2013年にFelix KrauseがiOSスクリーンショットの自動収集スクリプト「iOS-Screenshot-Automator」として公開したことを起源とし、その後「deliver」(iTunes Connectへのバイナリアップロードツール)、「snapshot」、「frameit」、「PEM」などの関連ツールが次々と開発されました。2015年5月5日にバージョン1.0がリリースされ、2016年にはGoogleがfastlaneを買収してGoogle傘下となりましたが、2024年にThe Mobile Security Research Foundationへ移管されました。現在700名以上のコントリビューターを擁し、世界中の多くのモバイル開発チームに採用されています。
主要な特徴・機能
- Fastfile: ルーン(lane)と呼ばれる自動化ワークフローをRubyのDSLで記述し、複雑なデプロイフローをコード化
- deliver: App StoreへのバイナリアップロードやメタデータをApp Store Connectに自動送信
- supply: Google PlayストアへのAPK/AABアップロードとメタデータ管理を自動化
- match: チーム全体でiOSコード署名証明書とプロビジョニングプロファイルを安全に共有・管理
- snapshot: 複数のデバイスサイズと言語でスクリーンショットを自動生成
- frameit: スクリーンショットにデバイスフレームを自動合成
- gym(build_app): iOSアプリのビルドとIPA生成を簡略化
- pilot: TestFlightへのビルドアップロードとベータテスター管理
- scan(run_tests): iOSおよびAndroidのテスト実行を自動化
- CI/CD連携: Jenkins、GitHub Actions、CircleCI、Bitrise、Travis CIなどの主要CI/CDプラットフォームとシームレスに統合
- プラグインシステム: コミュニティが提供するプラグインで機能を拡張可能
対象ユーザー
- iOSおよびAndroidアプリのリリースプロセスを効率化したい開発者・チーム
- App StoreやGoogle Playへの定期的なリリース作業を自動化したいモバイル開発者
- CI/CDパイプラインにモバイルアプリのビルド・デプロイを組み込みたいDevOpsエンジニア
- コード署名の管理に課題を抱えているiOS開発チーム
ライセンス情報
MITライセンスのオープンソースソフトウェアとして無償提供されています。ソースコードはGitHubで公開されており、活発なコミュニティによってメンテナンスされています。
スクリーンショット
更新グラフ
バージョン履歴
- [sigh] fix: prevent empty string as input to codesign on VERBOSE (#29910) via Connor Tumbleson (@iBotPeaches)
- Fix console command compatibility with Ruby 3.3+ (#29925) via Jerome Lacoste (@lacostej)
- cli: do not hide the original exception when failing in our ensure block (#29923) via Jerome Lacoste (@lacostej)
- [core] Fix gemspec bin/console exclusion to subtract "console" not "bin/console" (#29914) via Tachibana waita (@whywaita)
- [core] Upgrade rack transitive dep to please dependabot (#29911) via Jerome Lacoste (@lacostej)
- build: move to faraday 1.10.5 (#29906) via Connor Tumbleson (@iBotPeaches)
- [action] Revert to "-uploadedDate" sort order for app_store_build_num… (#29899) via Kai Leonhardt (@Mik4sa)
- Revert "[pilot] Add Support of the BuildAudienceType Field (#29859)" (#29881) via Connor Tumbleson (@iBotPeaches)
- [match] Download Apple's new Developer ID intermediate certificates (#29890) via Ian G. Maia (@iangmaia)
- [match] Bump minimum version of
aws-sdk-s3dependency to~> 1.197(#29750) via Olivier Halligon (@AliSoftware) - [action] Switch to "build uploads" api for app_store_build_number and latest_testflight_build_number action (#29879) via Kai Leonhardt (@Mik4sa)
- [appium] Fix appium driver usage (#29882) via Naveed Ahmad (@naveed-ahmad)
- [gym, scan, snapshot] Allow disabling swift packages fetches when using xcodebuild (#298
- [core] build: move to modern plist for Ruby 3.4 frozen strings (#29851) via Connor Tumbleson (@iBotPeaches)
- [ci] always record latest_fl_version during part 2 release (#29866) via Connor Tumbleson (@iBotPeaches)
- [core] add support for stdgem changes in Ruby 4 (#29869) via Connor Tumbleson (@iBotPeaches)
Important
fastlane will begin warning if you are using a Ruby version we will no longer support in future.
- [core] chore: rename key (ruby_min) key to remove "VERSION" from it (#29864) via Connor Tumbleson (@iBotPeaches)
- [scan] Handle Xcode26 test failure (#29854) via Yusuf Özgül (@yusufozgul)
- [spaceship] add support for key creation scope in portal client (#29458) via Daniel Costa (@danicunhac)
- [ci] chore: remove slack train plugin (#29830) via Connor Tumbleson (@iBotPeaches)
- [action] Fix target selection in
get_version_number(#22178) via Sven Münnich (@svenmuennich) - [core] feat: add warning to output on unsupported Ruby v
- [gym] evaluate building for .ipa or .pkg beyond iOS and macOS (#22145) via Davide (@keeshux)
- [sigh][match] fix: provisioning profiles location for Xcode 16 (#29508) via Vitalii Budnik (@nekrich)
- [install_xcode_plugin] hardening sh() to properly handle repo URL (#29811) via Grzegorz Siewruk (@siewer)
- [gym][pilot] Add
AppStoreInfo.plistsupport for TestFlight uploads on non-macOS platforms (#29717) via Cristian Caruceru (@ccaruceru) - [frameit] fix: iPhone-14-pro off by one pixel (#29539) via Mark Heijnekamp (@TheHunterDog)
- [core] Fix Xcode 26 altool zero exit code confusion. (#29740) via Connor Tumbleson (@iBotPeaches)
- [deliver] skip
- [ci] Restore a regular 'bunde install' during releases (#29775) via Connor Tumbleson (@iBotPeaches)
- build: releases should ignore changes to .bundle/config (#29774) via Connor Tumbleson (@iBotPeaches)
- [core] add support for more gems removed from stdlib (ruby 3.4) (#29767) via Connor Tumbleson (@iBotPeaches)
- [ci] speed up release actions + fix gha publishing (#29765) via Connor Tumbleson (@iBotPeaches)
- [ci] lock standard gem openssl to non-affected version(s) to support OpenSSL 3.6.0+ (#29763) via Connor Tumbleson (@iBotPeaches)
- [ci] downgrade to 2.4.22 bundler for 2.6.x Ruby support (#29762) via Connor Tumbleson (@iBotPeaches)
- Bump actions/checkout from 2 to 4 (#22089) via dependabot[bot] (@dependabot[bot])
- [ci] Fix CircleCI & modernize AppVeyor & Add Ruby 3.4 CI (#29753) via Connor Tumbleson (@iBotPeaches)
- chore(workflows): remove
tags(#29665) via Rui Chen (@chenrui333) - Support Ruby 3.4 (#29184) via Takuma Homma (@mataku)
- [match] Fix
Aws::S3::Object#download_filedeprecation (#29704) via Oliv
- [sigh][match] fix issue where unknown attribute
template_nameis being sent when creating provisioning profiles (#29591) via Florentin Luca Rieger (@visuallization) - [action][hipchat] remove hipchat action (#29558) via Eitan Adler (@grimreaper)
Important
If your app relies on managed capabilities (previously referred to as custom entitlements or the template_name parameter in match), you are impacted by a change that Apple made to their APIs in the last 2 weeks.
Please check out the ongoing discussion at https://github.com/fastlane/fastlane/discussions/29609 for the latest updates. Your insights and contributions are welcome!
- [deliver] Fix altool not logging errors (#29545) via TCROC (@TCROC)
- [precheck] fix typo in precheck error (#22086) via Hans Knöchel (@hansemannn)
- [pilot] ability to upload ipas to Testflight from Linux (#22014) via Cristian Caruceru (@ccaruceru)
- [docs] Clarify only-testing/skip-testing format (#27585) via Ben LaVerriere (@benlaverriere)
- [match] fix error with universal provisioning filter ("'UNIVERSAL' is not a valid filter value") (#29500) via Michael Neeley (@redreceipt)
- Bump xcpretty to version 0.4.1 (#29516) via Iulian Onofrei (@revolter)
- [scan] Remove unnecessary shellescape when generating -resultBundlePath option (#22285) via Junfeng (@hujunfeng)