20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
# File 'lib/deploygate/xcode/ios.rb', line 20
def build(ios_analyze,
target_scheme,
codesigning_identity,
provisioning_profile_info = nil,
build_configuration = nil,
export_method = DeployGate::Xcode::Export::AD_HOC,
allow_provisioning_updates = false)
raise NotSupportExportMethodError, 'Not support export' unless DeployGate::Xcode::Export::SUPPORT_EXPORT_METHOD.include?(export_method)
values = {
export_method: export_method,
workspace: ios_analyze.build_workspace,
configuration: build_configuration || DeployGate::Xcode::Analyze::DEFAULT_BUILD_CONFIGURATION,
scheme: target_scheme
}
values[:codesigning_identity] = codesigning_identity if codesigning_identity
values[:export_xcargs] = '-allowProvisioningUpdates' if allow_provisioning_updates
values[:export_options] = provisioning_profile_info if provisioning_profile_info
v = FastlaneCore::Configuration.create(Gym::Options.available_options, values)
begin
absolute_ipa_path = File.expand_path(Gym::Manager.new.work(v))
rescue => e
use_xcode_path = `xcode-select -p`
puts HighLine.color(I18n.t('xcode.ios.build.error.use_xcode', use_xcode_path: use_xcode_path), HighLine::RED)
raise e
end
absolute_dsym_path = absolute_ipa_path.gsub(".ipa", ".app.dSYM.zip")
absolute_ipa_path
end
|