Swift package heavily inspired by https://spaceship.airforce
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.sourcery
Sources
Tests
.circle.yml
.codecov.yml
.gitignore
.sourcery.yml
.travis.yml
Autobahn.swift
CODE_OF_CONDUCT.md
CONTRIBUTING.md
LICENSE
Package.resolved
Package.swift
README.md
Shuttle.md
Vagrantfile

README.md

Shuttle

Travis status CircleCI status Code coverage Version Swift 4.0 Docs License Twitter: @kdawgwilk

This basically a port of fastlane's spaceship which is an HTTP client for interacting with the Apple Developer portal and iTunesConnect.

NOTE: This is still a work in progress and there is still much to do, here is a rough list of things I would like to see in the near future

Example

To see an example of the currently available APIs available see Sources/Development/main.swift

ToDO List:

  • Support all API endpoints listed below
  • >90% Code Coverage
  • CLI tool

API Endpoints

Overview of the used API endpoints

  • https://idmsa.apple.com: Used to authenticate to get a valid session
  • https://developerservices2.apple.com:
    • Get a list of all available provisioning profiles
    • Register new devices
  • https://developer.apple.com:
    • List all devices, certificates, apps and app groups
    • Create new certificates, provisioning profiles and apps
    • Disable/enable services on apps and assign them to app groups
    • Delete certificates and apps
    • Repair provisioning profiles
    • Download provisioning profiles
    • Team selection
  • https://itunesconnect.apple.com:
    • Managing apps
    • Managing beta testers
    • Submitting updates to review
    • Managing app metadata
  • https://du-itc.itunesconnect.apple.com:
    • Upload icons, screenshots, trailers ...

Contributing

To get things running locally after cloning the repo:

$ swift package --enable-prefetching generate-xcodeproj
$ open Shuttle.xcodeproj

If you want to be able to run the Sources/Development/main.swift file to test changes you just need to switch to use the Development scheme in Xcode and then edit the scheme settings and add two environment variables for USERNAME and PASSWORD (don't worry the Xcode project is in the gitignore so you won't accidently push up your credentials to the repo)