Class: Fastlane::Actions::UpdateAppGroupIdentifiersAction
Class Method Summary
collapse
action_name, author, details, method_missing, other_action, return_value, sh, step_text
Class Method Details
.authors ⇒ Object
63
64
65
|
# File 'lib/fastlane/actions/update_app_group_identifiers.rb', line 63
def self.authors
["mathiasAichinger"]
end
|
.available_options ⇒ Object
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
# File 'lib/fastlane/actions/update_app_group_identifiers.rb', line 40
def self.available_options
[
FastlaneCore::ConfigItem.new(key: :entitlements_file,
env_name: "FL_UPDATE_APP_GROUP_IDENTIFIER_ENTITLEMENTS_FILE_PATH", description: "The path to the entitlement file which contains the app group identifiers", verify_block: proc do |value|
UI.user_error!("Please pass a path to an entitlements file. ") unless value.include? ".entitlements"
UI.user_error!("Could not find entitlements file") if !File.exist?(value) and !Helper.is_test?
end),
FastlaneCore::ConfigItem.new(key: :app_group_identifiers,
env_name: "FL_UPDATE_APP_GROUP_IDENTIFIER_APP_GROUP_IDENTIFIERS",
description: "An Array of unique identifiers for the app groups. Eg. ['group.com.test.testapp']",
is_string: false,
verify_block: proc do |value|
UI.user_error!("The parameter app_group_identifiers need to be an Array.") unless value.kind_of? Array
end)
]
end
|
.description ⇒ Object
36
37
38
|
# File 'lib/fastlane/actions/update_app_group_identifiers.rb', line 36
def self.description
"This action changes the app group identifiers in the entitlements file"
end
|
.is_supported?(platform) ⇒ Boolean
67
68
69
|
# File 'lib/fastlane/actions/update_app_group_identifiers.rb', line 67
def self.is_supported?(platform)
platform == :ios
end
|
.output ⇒ Object
59
60
61
|
# File 'lib/fastlane/actions/update_app_group_identifiers.rb', line 59
def self.output
['APP_GROUP_IDENTIFIERS', 'The new App Group Identifiers']
end
|
.run(params) ⇒ Object
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
# File 'lib/fastlane/actions/update_app_group_identifiers.rb', line 10
def self.run(params)
UI.message("Entitlements File: #{params[:entitlements_file]}")
UI.message("New App Group Identifiers: #{params[:app_group_identifiers]}")
entitlements_file = params[:entitlements_file]
UI.user_error!("Could not find entitlements file at path '#{entitlements_file}'") unless File.exist?(entitlements_file)
result = Plist.parse_xml(entitlements_file)
UI.user_error!("Entitlements file at '#{entitlements_file}' cannot be parsed.") unless result
app_group_field = result['com.apple.security.application-groups']
UI.user_error!("No existing App group field specified. Please specify an App Group in the entitlements file.") unless app_group_field
UI.message("Old App Group Identifiers: #{app_group_field}")
result['com.apple.security.application-groups'] = params[:app_group_identifiers]
result.save_plist(entitlements_file)
UI.message("New App Group Identifiers set: #{result['com.apple.security.application-groups']}")
Actions.lane_context[SharedValues::APP_GROUP_IDENTIFIERS] = result['com.apple.security.application-groups']
end
|