Package: applause-tool
Applause ToolApplause Tool is a command line package aimed at making it easy to connect
various continuous integration platforms with Applause Inc. services.SetupPrerequisitiesPythonApplause Tool requires Python2.6+ interpreter to be installed on your
machine. If you are using Linux/Unix/MacOSX system this prerequisit is already met.
Please consult your platform specific Python installation scripts for more info.PIPPython 2.7.11 and later (on the python2 series), and Python 3.4 and later include pip by default, so you may have pip already.
If not please consult this page for a ready to use recipe to install it on your local machine:https://pip.pypa.io/en/latest/installing.html#install-pipInstallationTo install applause-tool, run:$pipinstallapplause-toolTo verify your installation please run the following command in your terminal:$applause-tool--versionUpdatingTo update applause-tool, run:$pipinstallapplause-tool--upgradeUsageLoginBefore running product specific commands you need to log in with your Applause Account.
In case you don’t have one please consult you Applause project manager.During the process you will be asked to provide your username and password. You can choose to store the password
in your home directory by using the–store-passwordflag (or just-s). If you don’t, the requested OAuth
token stored in your home directory will only allow you to access Applause services for 2 weeks and it will not
renew itself automatically. You will be asked to log in again after it expires.You can also choose to provide the username and password in environment variables APPLAUSE_USER and APPLAUSE_PASSWORD.
Please note that using the–store-passwordflag should be used with caution, as the password is kept in an unencrypted way.
If you’re concerned with the security of your password and still want to use our tool e.g. in Continuous Integration
scenarios, we advise to pass the credentials via environment variables.If you don’t pass the credentials in any of the aforementioned ways, you will be prompted for them.$exportAPPLAUSE_USERNAME=<user>$exportAPPLAUSE_PASSWORD=<password>$applause-toollogin# OR$applause-toollogin-uusername-ppassword# OR$applause-toollogin-uusername-ppassword--store-password# OR$applause-toollogin-uusername-ppassword-s# OR$applause-toollogin--store-passwordLogoutIf you wish to remove the Applause Tool from your OS please make sure to log out from you existing
session. You can do that by typing:$applause-toollogoutAccountAt any point in time you can check who is the actively logged in user by running:$applause-toolaccountApplause SDKIn order to upload & distribute your build please run the following command in your terminal:$applause-toolsdkdistributeCOMPANY_IDAPP_ID/path/to/build[-ejohn.smith@test.com-c"New Release"]COMPANY_ID - ID of the company you created in the Applause SDK service.APP_ID - ID of the application to which you wish to upload your builds to.PATH - A full path to the build you wish to upload(Optional) -e - emails to which you wish to distribute your build to. Please make sure to repeat this option for each email you wish to add.(Optional) -c - changelog to attach to the build file in Applause SDK. This operation will add more information on the build OTA (over-the-air) installation page connected to the distribution email.Example 1Simple distribution with email list & changelog comming directly from the command line:$applause-toolsdkdistribute3133test_files/Test.ipa-erelease@applause.com-c"Fresh new release, straight from the oven"Example 2Applause Tool allows you to provide both email & changelog information directly from locally created files.
In order to instruct Applause Tool to do so please add ‘@’ sign at the start of the parameter value. For example:$applause-toolsdkdistribute3133test_files/Test.ipa-e@/Users/john/files/AppDistributionList.txt-c"Fresh new release, straight from the oven"Where the content of AppDistributionList.txt is as follows:release@applause.com
management@applause.com
cannary@applause.comPlease note that emails are separated out with new line characters.NoteYou can obtain both COMPANY_ID and APP_ID values from you product specific URL address. The URL scheme is:https://sdk.applause.com/companies/COMPANY_ID/application/APP_ID/dashboard/$applause-toolsdkdistributeCOMPANY_IDAPP_ID/path/to/build[-ejohn.smith@test.com-c@/home/user/builds/1.0/release-notes.txt]Applause BETAUploading build to Applause Mobile BETA Management is supported. Optionally changelog can be attached.ExampleUploading build:applause-tool beta upload 22 ~/my_apps/ExampleApp.ipa [-c @/home/user/builds/1.0/release-notes.txt]Distribution via Applause Mobile BETA Management is supported.ExampleDistributing build using justapp_id:applause-tool beta distribute 2344 ~/my_apps/ExampleApp.ipa -g my_release_groupApplause AISInjects Applause SDK and a specific configuration to a iOS/Android mobile build.
Only MBM service integration is supported for now.Exampleapplause-tool ais instrument ~/my_apps/ExampleApp.ipa --customer-key ABC -k XYZ -o ~/output/path/ExampleAppInstrumented.ipaDistribution via Applause Mobile BETA Management is supported.~/my_apps/ExampleApp.ipa - A full path to the build you wish to processcustomer-key - Access key for AIS service. Please reach out to applause customer support to get one.-k - APP KEY assigned to your SDK/MBM product (please see the settings section of your product for more info)-o - (Optional) name of the output file. Default:instrumented-{timestamp}.{fmt}.Jenkins IntegrationTo integrate Applause Tool with Jenkins:Make sure that you have Python2.6+ and applause-tool installed on your job worker nodesWe strongly recommend putting username and password for applause-tool logging in environment variables in worker node configurationAdd anExecute shellbuild step in which you can invoke applause-tool as an ordinary shell command, like below:applause-toollogin-u${APPLAUSE_USER}-p${APPLAUSE_PASSWORD}-sapplause-toolsdkdistribute...You can also install the Jenkins plugin PostBuildScript (https://wiki.jenkins-ci.org/display/JENKINS/PostBuildScript+Plugin) , which enables you
to trigger those commands only if all the build steps are successfully completed.Known issuesInsecurePlatformWarning:AtrueSSLContextobjectisnotavailable.This has been widely discussed here:http://stackoverflow.com/questions/29099404/ssl-insecureplatform-error-when-using-requests-packageWe strongly recommend upgrading your Python version to 2.7.9 or higher.