class Fastlane::Actions::GetEmtitlementsPlistFilePathAction
Public Class Methods
available_options()
click to toggle source
# File lib/fastlane/plugin/ci_apps/actions/get_emtitlements_plist_file_path.rb, line 57 def self.available_options # Define all options your action supports. # Below a few examples [ FastlaneCore::ConfigItem.new(key: :api_token, env_name: "FL_GET_EMTITLEMENTS_PLIST_FILE_PATH_API_TOKEN", # The name of the environment variable description: "API Token for GetEmtitlementsPlistFilePathAction", # a short description of this parameter verify_block: proc do |value| UI.user_error!("No API token for GetEmtitlementsPlistFilePathAction given, pass using `api_token: 'token'`") unless (value and not value.empty?) # UI.user_error!("Couldn't find file at path '#{value}'") unless File.exist?(value) end), FastlaneCore::ConfigItem.new(key: :development, env_name: "FL_GET_EMTITLEMENTS_PLIST_FILE_PATH_DEVELOPMENT", description: "Create a development certificate instead of a distribution one", is_string: false, # true: verifies the input is a string, false: every kind of value default_value: false) # the default value if the user didn't provide one ] end
description()
click to toggle source
@!group Documentation
# File lib/fastlane/plugin/ci_apps/actions/get_emtitlements_plist_file_path.rb, line 47 def self.description "A short description with <= 80 characters of what this action does" end
details()
click to toggle source
# File lib/fastlane/plugin/ci_apps/actions/get_emtitlements_plist_file_path.rb, line 51 def self.details # Optional: # this is your chance to provide a more detailed description of this action "You can use this action to do cool things..." end
find_project(params)
click to toggle source
# File lib/fastlane/plugin/ci_apps/actions/get_emtitlements_plist_file_path.rb, line 22 def self.find_project(params) project = Xcodeproj::Project.open(params[:xcodeproj]) project end
find_target(params)
click to toggle source
# File lib/fastlane/plugin/ci_apps/actions/get_emtitlements_plist_file_path.rb, line 27 def self.find_target(params) project = find_project(params) if params[:target] target = project.targets.detect { |t| t.name == params[:target] } target else # firstly we are trying to find modern application target target = project.targets.detect do |t| t.kind_of?(Xcodeproj::Project::Object::PBXNativeTarget) && t.product_type == 'com.apple.product-type.application' end target = project.targets[0] if target.nil? target end end
is_supported?(platform)
click to toggle source
# File lib/fastlane/plugin/ci_apps/actions/get_emtitlements_plist_file_path.rb, line 119 def self.is_supported?(platform) # you can do things like # # true # # platform == :ios # # [:ios, :mac].include?(platform) # platform == :ios end
output()
click to toggle source
# File lib/fastlane/plugin/ci_apps/actions/get_emtitlements_plist_file_path.rb, line 102 def self.output # Define the shared values you are going to provide # Example [ ['GET_EMTITLEMENTS_PLIST_FILE_PATH_CUSTOM_VALUE', 'A description of what this value contains'] ] end
return_value()
click to toggle source
# File lib/fastlane/plugin/ci_apps/actions/get_emtitlements_plist_file_path.rb, line 110 def self.return_value # If your method provides a return value, you can describe here what it does end
run(params)
click to toggle source
# File lib/fastlane/plugin/ci_apps/actions/get_emtitlements_plist_file_path.rb, line 11 def self.run(params) project = find_project(params) target = find_target(params) buildConfiguration = target.build_settings("Release") filePath = buildConfiguration["CODE_SIGN_ENTITLEMENTS"] if params[:is_absolute] then filePath = File.join(Pathname.new(project.path).parent.to_path, filePath) end filePath end