Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Automating TestFlightApp with Xcode and Provisioning Portal

I currently have a fairly manual process when releasing a new build in TestFlight:

  1. Download the additional devices text files from TestFlightApp
  2. Log into the Provisioning Profile
  3. Upload devices
  4. Update the Provisioning Profile to include the newly added devices
  5. Download the generated .mobileprovision file
  6. Click on the file to add to Xcode
  7. Product -> Archive, Share, Create IPA
  8. New Build in TestFlightApp
  9. Type up the release notes
  10. Upload (wait)
  11. Select testers to notify

Are there scripts or utilities that handle these steps for me? I don't mind a solution for part of these steps, as long as it reduces this process.

On the other hand, maybe I'm repeating steps I shouldn't be, or not doing things in an efficient manner.

like image 887
gak Avatar asked Sep 27 '11 22:09

gak


3 Answers

There's a blog entry on developmentseed.org where it describes how to automate an archive build to be uploaded to TestFlight.

It doesn't include automatically updating devices in the provisioning profile, but MoProPro appears to be a command line utility to add new devices.

like image 111
gak Avatar answered Nov 04 '22 19:11

gak


Jenkins is a build server with plugins for xcode and TestFlight. It is a huge time saver if you have multiple projects to upload. Once the job is set up, it can be a one-click process to deliver the apps to TestFlight. With my set up, I even get a email when the build has completed the upload to TestFlight.

Note, it does not do the first 6 points of your question, but it does do the rest.

like image 42
lindon fox Avatar answered Nov 04 '22 19:11

lindon fox


Have you seen the nomad CLI tools for iOS development? They let you do things like:

Manage Devices

$ ios devices:add "iPad 1"=abc123
$ ios devices:add "iPad 2"=def456 "iPad 3"=ghi789 ...

Manage Provisioning Profiles

$ ios profiles:list

+----------------------------------+--------------+---------+
| Profile                          | App ID       | Status  |
+----------------------------------+--------------+---------+
| iOS Team Provisioning Profile: * | ABCDEFG123.* | Valid   |
+----------------------------------+--------------+---------+

Build & Distribute through TestFlight

$ cd /path/to/iOS Project/
$ ipa build
$ ipa distribute

And more!

All examples taken from the nomad documentation.

like image 1
Edward Dale Avatar answered Nov 04 '22 18:11

Edward Dale