class XCJobs::Build

Public Class Methods

new(name = :build) { |self| ... } click to toggle source
Calls superclass method XCJobs::Xcodebuild::new
# File lib/xcjobs/xcodebuild.rb, line 227
def initialize(name = :build)
  super
  @description ||= 'build application'
  yield self if block_given?
  define
end

Private Instance Methods

command() click to toggle source
# File lib/xcjobs/xcodebuild.rb, line 253
def command
  'build'
end
define() click to toggle source
# File lib/xcjobs/xcodebuild.rb, line 236
def define
  raise 'the scheme is required when specifying build_dir' if build_dir && !scheme
  raise 'cannot specify both a scheme and targets' if scheme && target

  CLEAN.include(build_dir) if build_dir
  CLOBBER.include(build_dir) if build_dir

  desc @description
  task @name do
    add_build_setting('CONFIGURATION_TEMP_DIR', File.join(build_dir, 'temp')) if build_dir
    add_build_setting('CODE_SIGN_IDENTITY', signing_identity) if signing_identity
    add_build_setting('PROVISIONING_PROFILE', provisioning_profile_uuid) if provisioning_profile_uuid

    run(['xcodebuild', command] + options)
  end
end