Understand how iOS IPA distribution pipelines were automated before Fastlane became the standard (historical reference).
Inspect the provisioning profile details inside an existing IPA file using the ipa info command.
| nomad-cli/shenzhen | lobsters/lobsters | hahwul/webhackersweapons | |
|---|---|---|---|
| Stars | 4,637 | 4,668 | 4,598 |
| Language | Ruby | Ruby | Ruby |
| Setup difficulty | hard | hard | easy |
| Complexity | 2/5 | 4/5 | 1/5 |
| Audience | developer | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
Deprecated, relies on the Xcode 6 build API which Apple dropped, will not work with Swift 3 or watchOS.
Shenzhen is a Ruby command-line tool for building iOS apps into distributable IPA files and uploading them to various testing and distribution services. The README opens with an important notice: Shenzhen is deprecated. It relies on an Xcode 6 build API that Apple stopped supporting years ago, which causes problems with Swift 3, watchOS targets, and other modern features. The maintainers recommend using Fastlane's gym tool for builds and Fastlane itself for distribution instead. When it was current, Shenzhen added a single command called ipa to your terminal. Running ipa build in an iOS project directory compiled the app and produced an IPA file. Running ipa distribute then sent that file to whichever distribution service you chose. Supported destinations included TestFlight (via iTunes Connect), HockeyApp, Crashlytics Beta, TestFairy, DeployGate, Amazon S3, FTP, SFTP, and several Chinese distribution platforms (FIR.im, PGYER). Each distribution target had its own subcommand, and credentials could be passed as flags or loaded from environment variables, making it straightforward to integrate into automated build pipelines. There was also an ipa info command that read the provisioning profile embedded in an IPA file and printed its details in a formatted table, which was useful for quickly checking which certificates and entitlements were included in a build. Shenzhen is one of several iOS-focused command-line tools built by the Nomad project, a collection that also covered push notifications, in-app purchase receipt verification, and Apple Developer Center account management. Because the project is deprecated and no longer maintained, it should not be used for new projects. Installation was done via gem install shenzhen.
A deprecated Ruby CLI tool that built iOS apps into IPA files and uploaded them to TestFlight, HockeyApp, and other services. Use Fastlane instead for new projects.
Mainly Ruby. The stack also includes Ruby, Xcode.
Setup difficulty is rated hard, with roughly 1day+ to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.