iTunes Connect Library inspired by FastLane
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
MotherShip.xcodeproj updates May 27, 2018
Resources/MotherShip/Core integrates sake and xcodegen Mar 11, 2018
Sources/MotherShip/Core fixed Linux URLSession Cookie handling SR-7338 May 28, 2018
Tests fixed testflight May 27, 2018
.gitignore updates May 27, 2018
.travis.yml
Cartfile fixed testflight May 28, 2018
Cartfile.resolved
LICENSE
Makefile added updateAppTestInfo Jan 11, 2018
Package.resolved fixed Linux URLSession Cookie handling SR-7338 May 28, 2018
Package.swift fixed Linux URLSession Cookie handling SR-7338 May 28, 2018
README.md linux broken Jun 3, 2018
beak.swift transitioned to beak from sake May 6, 2018
project.yml integrates sake and xcodegen Mar 11, 2018

README.md

Mothership

iTunes Connect Library inspired by FastLane

version Swift Build Status Platforms Swift Package Manager compatible Carthage compatible License: MIT

I wrote MotherShip for two reasons.

  1. love FastLane, but I am not proficient in Ruby.
  2. I wanted to see how difficult it would be to write a port.

What can MotherShip do?

  1. Login to iTunesConnect
  2. Get list of Testers
  3. Get list of Groups
  4. Get list of Versions
  5. Get list of Builds
  6. Get App level Test Info
  7. Invite someone to test an app
  8. Update App level Test Information!
  9. Get Build Details
  10. Update Build Test Info
import MotherShip

let firstName = "C"
let lastName  = "B"
let email     = "info@thecb4.io"

let tester = Tester(email: email, firstName: firstName, lastName: lastName)

let testFlight = TestFlight()

testFlight.login(with: creds)

let code = testFlight.invite(tester: tester, to: appInfo.appIdentifier, for: appInfo.teamIdentifier, groupName: appInfo.testGroup)

To Do

  • Documentation
  • Ability to update app info
  • Upload build
  • Code signing? Or just leave it up to Apple
  • Two-Factor Authentication?

There is a Command Line Interface for MotherShip.

MotherShip-CLI

$ mothership login <user> <password>
$ mothership testflight invite <email> <first-name> <last-name> <app-id> <team-id>

NOTE

I've been working to get MotherShip to work on Linux, but there are open issues with URLSession using cookies that need to be resolved first PR1542