View App.io on the plugin site for more information.
This plug-in allows you to upload an iOS application package to App.io so that you can see the app running on a remote iPhone/iPad simulator: if successful, the simulator will be displayed embedded on the main project page as shown below, and there is also a link that will take you to the App.io site, where you can customize your application view. There is an example of the plugin in use on the CloudBees partnerdemo site, with the Jenkins configuration.
As this is an initial version, there are quite a few to-dos and, I am sure, bugs - please do try it out and let me know if there are additional features or changes you would like to see. Limitations that I am aware of in the current implementation include:
- Need for Proxy Server support
- DescriptorImpl.doCheckAppFile() not yet implemented
- Allow user to configure simulator iPad/iPhone Landscape/Portrait orientation
- More generic mechanism for file upload (currently uses a simple Amazon S3 scheme)
- The simulator will only deploy correctly once at least one successful build has been deployed to App.io
The plugin makes REST API calls to app.io: the root CA for the certificate used by app.io is not included as a trusted cert (cacerts) in all JRE distributions. This will cause the API calls to fail - I have raised the issue with app.io, but the short-tem fix is to add the cert to your cacerts manually or use javax.net.ssl.keyStore to use a different keystore (see Java JSSE Reference Guide for more information)
Configuring the Plugin
Global Configuration Parameters
The plugin uses Amazon's S3 service to upload the zipped .app iOS build: use Jenkins->Manage Jenkins->Manage Credentials to enter the AWS Access and Secret Key and S3 bucket to use for uploading. We strongly recommend that you create an IAM user specifically for this purpose and configure a security profile that limits access to that specific bucket, like this:
The following properties are configured via the Credentials page:
- AWS Access Key: (used for S3 file uploads)
- AWS Secret Key: (used for S3 file uploads)
- AWS S3 Bucket Name: (used for S3 file uploads)
- App.io API Key: (used for App.io REST API calls) - see https://app.io/account/api
Configuring a Post-build Action
The following parameters need to be set:
- Build package: the name of the .app iOS build package to upload to App.io. This must be a simulator build - typically this would be something like WORKSPACE/build/Debug-iphonesimulator/<package>.app. The package will be zipped and uploaded to App.io via S3.
- Application name: the name that App.io will use for this application
Version 1.0 (Jun 18, 2013)
- Initial release