Coder Social home page Coder Social logo

gradle-xcodeplugin's Introduction

gradle-xcodePlugin

gradle xcodePlugin to build Mac and iOS projects

Current stable version is 0.9.11

0.9.11 supports both Xcode 5 and Xcode 6 (beta)

Introduction: http://openbakery.org/gradle.php

Example: build.gradle

xcodebuild Parameters:

  • scheme - the xcode build scheme that should be used. If the scheme is set the configuration and target is ignored

    default value: empty

  • workspace - the workspace file that should be used for the build.

    default value: empty

  • configuration - the build configuration name that should be used (e.g. 'Debug', 'Release')

    default value: 'Debug'

  • sdk - the SDK that should be used (e.g. 'iphonesimulator', 'iphoneos')

    default value: 'iphonesimulator'

  • target - the xcode build target that should be used

    default value: empty

  • signing - signing configuration that should be used when building for the device

    default value: empty

    • mobileProvisionURI - URI where the mobile provision profile is located that should be used when signing the app

      default value: empty

    • certificateURI - Uri to the certificate that should be used to sign the app

      default value: empty

    • certificatePassword - Password for the certificate file

      default value: empty

    • keychainPassword - Password for the chain that is created

      default value: "This_is_the_default_keychain_password"

    • keychain - Parameter to specify an existing keychain. If this parameters is set no keychain is created and also the certificate is not imported.

      default value: empty

      Note: Make sure that /usr/bin/codesign is allowed to access the certificate in the keychain that is needed to sign.

  • destination * - destination configuration

    default value: empty

    • platform - Platform, e.g. 'iOS' or 'OS X'

    default value: empty

    • name - Name of the destination device. Needed for iOS builds

    default value: empty

    • arch - Architecture of the destination target

    The arch can a single value e.g. 'i386' or a list of values e.g. [ 'armv7', 'armv7s' ]

    default value: empty

  • additionalParameters - additional parameters for the xcodebuild. Here you can for example pass preprocessor definitions: additionalParameters = "GCC_PREPROCESSOR_DEFINITIONS='TIME=" + System.currentTimeMillis() + "'".

    Also an array of parameters is excepted e.g. ["-xcconfig", "/path/to/the/xconfig" ]

    default value: empty

  • bundleNameSuffix - String that should be appended to the generated app bundle. e.g. the default app bundle name is 'Demo.App'. When you set bundleNameSuffix=-1.0.0 than the generated bundle is 'Demo-1.0.0.app'

    default value: empty

  • arch - Use the architecture specified by architecture when building each target. e.g. 'i386', 'armv6', 'armv7'

    default value: empty

    NOTE: when scheme and workspace is set and also the sdk value is 'iphonesimulator' that the arch is set per default to the value 'i386', otherwise a simulator build fails

  • buildRoot - build root directory for the build output

    default value: build

  • dstRoot - the distribution root directory

    default value: 'build/dst'

  • objRoot - the object root directory

    default value: 'build/obj'

  • symRoot - the sym directory. Here is where the app and ipa is generated

    default value: 'build/sym'

  • sharedPrecompsDir

    default value: 'build/shared'

  • infoPlist - override the Info.plist file that is configured in the xcode project file

    default value: empty

infoplist Parameters:

  • bundleIdentifier - If set it override the bundle identifier in the Info.plist (CFBundleIdentifier)

    default value: empty

  • bundleIdentifierSuffix - If set it adds a suffix to the bundle identifier in the Info.plist (CFBundleIdentifier)

    default value: empty

  • bundleDisplayName - If set it override the bundle display name in the Info.plist (CFBundleDisplayName)

    default value: empty

  • bundleDisplayNameSuffix - If set it adds a suffix to the bundle display name in the Info.plist (CFBundleDisplayName)

    default value: empty

  • version - sets the CFBundleVersion to the given version Note: version=2.3.4 and versionSuffix=-Suffix and versionPrefix=Prefix- results in 'Prefix-2.3.4-Suffix'

    default value: empty

  • versionSuffix - adds the value to the CFBundleVersion e.g. 'CFBundleVersion=1.0.0' and 'versionSuffix=-Test' results in '1.0.0-Test'

    default value: empty

  • versionPrefix - adds the value in front of the CFBundleVersion e.g. 'CFBundleVersion=1.0.0' and 'versionPrefix=Test-' results in 'Test-1.0.0'

    default value: empty

  • shortVersionString - sets the CFBundleShortVersionString to the given shortVersionString

    default value: empty

  • shortVersionStringSuffix - adds the value to the CFBundleVersion e.g. 'CFBundleShortVersionString=1.0.0' and 'versionSuffix=-Test' results in '1.0.0-Test'

    default value: empty

  • shortVersionStringPrefix - adds the value in front of the CFBundleVersion e.g. 'CFBundleShortVersionString=1.0.0' and 'versionPrefix=Test-' results in 'Test-1.0.0'

    default value: empty

hockeykit Parameters:

  • displayName - Title that should be used that is shown on the hockeykit site for the app. If the value is not set then the bundle identifier is used

    default value: the CFBundleDisplayName from the Info.plist file is used

  • versionDirectoryName - subdirectory that should be used for the app.

    default value: "0"

  • outputDirectory - directory where to store the files that are generated for the hockeykit distribution

    default value "build/hockeykit";

  • notes - Release notes as HTML or Markdown for the build that is stored in a releasenotes.html.

    default value: empty

TestFlight Parameters:

  • apiToken - The TestFlight API Token (https://testflightapp.com/account/#api-token)

    default value: empty

  • teamToken - The TestFlight Team Token (https://testflightapp.com/dashboard/team/edit/?next=/api/doc/)

    default value: empty

  • notes - Release notes for the build

    default value: "This build was uploaded using the gradle xcodePlugin"

  • outputDirectory - Output directory where the ipa an dSYM.zip is created

    default value: "build/testflight"

  • distributionLists - Comma separated distribution list names which will receive access to the build

    default value: empty

  • notifyDistributionList - notify permitted teammates to install the build

    default value: false

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

    default value: false

Note: see also https://testflightapp.com/api/doc/

HockeyApp Parameters:

  • apiToken - The HockeyApp API Token (see https://rink.hockeyapp.net/manage/auth_tokens )

    default value: empty

  • appID - The HockeyApp App ID (see https://rink.hockeyapp.net/manage/dashboard and select the app)

    default value: empty

  • outputDirectory - Optional, output directory where the ipa an dSYM.zip is created

    default value: "build/hockeyapp"

  • notes - Release notes for the build

    default value: "This build was uploaded using the gradle xcodePlugin"

  • status - Optional, download status (can only be set with full-access tokens):

    default value: 2

  • notify - Optional, notify testers

    default value: 1

  • notesType - Optional, type of release notes

    default value: 1

DeployGate Parameters:

  • apiToken - The DeployGate API Token (https://deploygate.com/settings)

    default value: empty

  • userName - The DeployGate User Name (https://deploygate.com/settings)

    default value: empty

  • message - Release notes for the build

    default value: "This build was uploaded using the gradle xcodePlugin"

  • outputDirectory - Output directory where the ipa

    default value: "build/deploygate"

Note: see also https://deploygate.com/docs/api

sparkle Parameters:

  • appName - You should specify this parameter when your appname does not match your target name. Default appname in XCode is $(TARGET_NAME). Do not specify .app here because it will be added automatically. If a different file ending than .app will be needed in future we will add a new parameter.

    default value: empty

  • outputDirectory - The directory to output a ZIP file and release notes of the app.

    default value: empty

coverage Parameters:

Note: For coverage the the "Generate Test Coverage Files" in the project for the executed target must be set to Yes

  • exclude - Exclude data files that match this regular expression. e.g. '.*h$|.*UnitTests.*m$' excludes all headers and all *.m files from the UnitTests directory

    default value: empty

  • outputFormat - Format of the generated output. Possible values are, xml or html. If not specified text file is generated

    default value: empty

  • outputDirectory - Output directory for the results

    default value: "build/coverage"

gradle-xcodeplugin's People

Contributors

renep avatar perchrh avatar henteko avatar drewmca03 avatar kslavkov avatar daleljefferson avatar hannesoid avatar boardbloke avatar quanturium avatar

Watchers

 avatar James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.