class Flow::Cli::YamlBuilders::IosBuildStepGenerator

Attributes

cli_config[RW]

Public Class Methods

new(cli_config = {}) click to toggle source
# File lib/flow/cli/yaml_builders/ios_build_step_generator.rb, line 8
def initialize(cli_config = {})
  self.cli_config = cli_config
  if ENV["FLOW_CLI_TEST"] != "TRUE"
    Gym.config = FastlaneCore::Configuration.create(Gym::Options.available_options, {})
    config = Gym.config.values(ask: false).reject { |_k, v| v.nil? }
    allowed_params = %i[workspace project scheme clean output_name configuration
                        codesigning_identity include_symbols include_bitcode
                        export_method export_options export_xcargs]
    @gym_config = config.select { |k, _v| allowed_params.include? k }
  else
    @gym_config = {}
  end
end

Public Instance Methods

build_gym_params() click to toggle source
# File lib/flow/cli/yaml_builders/ios_build_step_generator.rb, line 34
def build_gym_params
  @gym_config.map { |k, v| "--#{k} #{v}".rstrip }.join(' ')
end
generate_gym_script() click to toggle source
# File lib/flow/cli/yaml_builders/ios_build_step_generator.rb, line 22
def generate_gym_script
  merge_user_cli_gym_config
  "fastlane gym build #{build_gym_params}"
end
merge_user_cli_gym_config() click to toggle source

返回 由 gym 调用的 core 的生成的相关参数

# File lib/flow/cli/yaml_builders/ios_build_step_generator.rb, line 28
def merge_user_cli_gym_config
  user_gym_config = { export_method: 'ad-hoc' }.merge(cli_config[:gym_config] || {})
  @gym_config.merge!(user_gym_config)
  @gym_config
end