Skip to content

boardbloke/gradle-xcodePlugin

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gradle-xcodePlugin

gradle xcodePlugin to build iOS projects

Current stable version is 0.8.5

The lastest version is not compatible with 0.7.x, the signing configuration has changed. See Changelog.md

Introduction: http:https://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

  • unitTestTarget - Unit Test target that should be executed when running xcodebuild. Here first the target is build and afterwards the unitTestTarget is build and executed. This target only works when the iphonesimulator sdk is 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.

  • 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:

HockeyApp Parameters:

  • apiToken - The HockeyApp API Token (http:https://support.hockeyapp.net/kb/api)

    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

About

gradle xcodePlugin to build iOS projects

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Groovy 100.0%