/IPAUploader

👨🏼‍💻 Uploads your apps to TestFlight & App Store.

Primary LanguageSwiftMIT LicenseMIT

IPA Uploader

CI Status Maintainability License Platform Swift 5.0

Uploads your apps to TestFlight & App Store.

Features

  • Uploads IPAs to TestFlight and the App Store.
  • Designed to be invoked from an automation server e.g. Jenkins as part of your CI process.
  • Optionally provides the option to notify of upload status via Slack.

For more information on IPA Uploader, take a look at the keynote presentation.

Installation

Homebrew

To install using Homebrew:

brew install rwbutler/tools/ipa-uploader

Usage

The IPA Uploader tool is invoked as follows:

  • --ipa-path: The path to the IPA to be uploaded.

  • --username: The username of the Apple ID to upload the IPA as.

  • --password: The app-specific password to use when uploading the IPA (see below).

The following optional parameters may also be specified:

  • --itms-transporter-path: The path to ITMSTransporter for uploading.
  • --emit-app-name: Emits the application name as part of output.
  • --notify-only-on-failure: Output will only be emitted in the event of a failure.
  • --slack-url: The hook URL for posting to Slack.
  • --timeout: A timeout specified in seconds to wait on the upload.
  • --verbose: Emits more detailed output.
  • --verbose-on-failure: In the event of a failure, verbose output will be emitted to help diagnose the issue.

App-Specific Passwords

An app-specific password is one which is generated and then provided to a third-party app to allow limited access to perform authorized actions using your Apple ID. This prevents your account credentials from being compromised.

In order to generate an app-specific password login at https://appleid.apple.com and then scroll down to the Security section. Under App-Specific Passwords, follow the Generate Password... link.

Author

Ross Butler

License

IPA Uploader is available under the MIT license. See the LICENSE file for more info.

Additional Software

Controls

AnimatedGradientView
AnimatedGradientView

Frameworks

  • Cheats - Retro cheat codes for modern iOS apps.
  • Connectivity - Improves on Reachability for determining Internet connectivity in your iOS application.
  • FeatureFlags - Allows developers to configure feature flags, run multiple A/B or MVT tests using a bundled / remotely-hosted JSON configuration file.
  • FlexibleRowHeightGridLayout - A UICollectionView grid layout designed to support Dynamic Type by allowing the height of each row to size to fit content.
  • Hash - Lightweight means of generating message digests and HMACs using popular hash functions including MD5, SHA-1, SHA-256.
  • Skylark - Fully Swift BDD testing framework for writing Cucumber scenarios using Gherkin syntax.
  • TailorSwift - A collection of useful Swift Core Library / Foundation framework extensions.
  • TypographyKit - Consistent & accessible visual styling on iOS with Dynamic Type support.
  • Updates - Automatically detects app updates and gently prompts users to update.
Cheats Connectivity FeatureFlags Skylark TypographyKit Updates
Cheats Connectivity FeatureFlags Skylark TypographyKit Updates

Tools

  • Clear DerivedData - Utility to quickly clear your DerivedData directory simply by typing cdd from the Terminal.
  • Config Validator - Config Validator validates & uploads your configuration files and cache clears your CDN as part of your CI process.
  • IPA Uploader - Uploads your apps to TestFlight & App Store.
  • Palette - Makes your TypographyKit color palette available in Xcode Interface Builder.
Config Validator IPA Uploader Palette
Config Validator IPA Uploader Palette