grunt-testflight

    0.1.3 • Public • Published

    grunt-testflight Build Status

    Uploads the build to TestFlight

    Getting Started

    If you haven't used grunt before, be sure to check out the Getting Started guide.

    From the same directory as your project's Gruntfile and package.json, install this plugin with the following command:

    npm install grunt-testflight --save-dev

    Once that's done, add this line to your project's Gruntfile:

    grunt.loadNpmTasks('grunt-testflight');

    If the plugin has been installed correctly, running grunt --help at the command line should list the newly-installed plugin's task or tasks. In addition, the plugin should be listed in package.json as a devDependency, which ensures that it will be installed whenever the npm install command is run.

    The "testflight" task

    Overview

    In your project's Gruntfile, add a section named testflight to the data object passed into grunt.initConfig().

    grunt.initConfig({
      testflight: {
        iOS: {
          options: {
            apiToken: 'Enter your api token',
            teamToken: 'Enter your team token',
            file: 'Enter your build path',
            notes: "It's a awesome app!",
            distributionLists: ['Enter your distribution list'],
            notify: true
          }
        }
      }
    })

    Options

    options.apiToken

    Type: String

    Required. (Get your API token)

    options.teamToken

    Type: String

    Required, token for the team being uploaded to. (Get your team token)

    options.file

    Type: String

    Required, file path for the build.

    options.notes

    Type: String or function

    Required, release notes for the build.

    options.dsym

    Type: String Default: null

    iOS ONLY - the zipped .dSYM corresponding to the build.

    options.distributionLists

    Type: Array Default: null

    distribution list names which will receive access to the build.

    options.notify

    Type: Boolean Default: false

    notify permitted teammates to install the build.

    options.replace

    Type: Boolean Default: false

    options.onDone

    Type: Function Default: function (responseJson) {}

    could be used to get JSON Result testflight sends back to each API call (https://testflightapp.com/api/doc/)

    replace binary for an existing build if one is found with the same name/bundle version.

    Usage Examples

    var gitRev = require('git-rev');
     
    grunt.initConfig({
      localConfig: grunt.file.readYAML('localConfig.yml');
     
      testflight: {
        options: {
          apiToken: '<%= localConfig.testflight.apiToken %>',
          teamToken: '<%= localConfig.testflight.teamToken %>',
          notes: function(done) { // you can use async function.
            gitRev.long(function(hash) {
              done("commit " + hash);
            });
          },
          distributionLists: ['gatchamen'],
          notify: true
        },
     
        iOS: {
          options: {
            file: '<%= localConfig.builds.ipa %>'
          }
        },
     
        android: {
          options: {
            file: '<%= localConfig.builds.apk %>'
          }
        }
      }
    });

    Contributing

    In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using grunt.

    Release History

    • 2014-08-16   v0.1.3   Print TestFlight API response on error.
    • 2014-08-16   v0.1.2   Add TestFlight JSON result object handling.
    • 2014-01-05   v0.1.1   Handle non 200 responses from testflight.
    • 2013-10-12   v0.1.0   First release.

    License

    Copyright (c) 2013 Shogo Iwano Licensed under the MIT license.

    Install

    npm i grunt-testflight

    DownloadsWeekly Downloads

    2

    Version

    0.1.3

    License

    none

    Last publish

    Collaborators

    • shiwano