class Flow::Cli::YamlBuilders::FlowYamlBuilder
Attributes
flow_cli_config[RW]
Public Class Methods
init_yaml_builder(flow_cli_config)
click to toggle source
# File lib/flow/cli/yaml_builders/flow_yaml_builder.rb, line 71 def init_yaml_builder(flow_cli_config) if flow_cli_config[:flow_language] == "objc" IosYamlBuilder.new(flow_cli_config) else new(flow_cli_config) end end
new(flow_cli_config = {})
click to toggle source
# File lib/flow/cli/yaml_builders/flow_yaml_builder.rb, line 6 def initialize(flow_cli_config = {}) self.flow_cli_config = flow_cli_config end
Public Instance Methods
build_yaml()
click to toggle source
# File lib/flow/cli/yaml_builders/flow_yaml_builder.rb, line 10 def build_yaml build_yaml_hash.deep_stringify_keys.to_yaml end
build_yaml_hash()
click to toggle source
# File lib/flow/cli/yaml_builders/flow_yaml_builder.rb, line 14 def build_yaml_hash yaml_hash = { env: ["FLOW_YAML_FROM=flow-cli"], flows: [create_default_flow_dict] } yaml_hash end
create_default_flow_dict()
click to toggle source
# File lib/flow/cli/yaml_builders/flow_yaml_builder.rb, line 22 def create_default_flow_dict flow = {} flow[:name] = flow_cli_config[:flow_name] || 'default_flow_by_cli' flow[:language] = flow_cli_config[:flow_language] flow[:version] = flow_cli_config[:flow_version] flow[:env] = flow_cli_config[:env] flow[:trigger] = { push: %w[develop master] } flow[:steps] = generate_steps flow end
generate_custom_build_step()
click to toggle source
生成编译脚本
# File lib/flow/cli/yaml_builders/flow_yaml_builder.rb, line 51 def generate_custom_build_step # script = IosBuildStepGenerator.new(flow_cli_config).generate_gym_script # { # name: "build", # scripts: [script] # } end
generate_normal_steps()
click to toggle source
创建一些标准的steps
# File lib/flow/cli/yaml_builders/flow_yaml_builder.rb, line 42 def generate_normal_steps steps = [] steps << generate_step_dict("init", name: "#{flow_cli_config[:flow_language]}_init") steps << generate_step_dict("git") steps << generate_step_dict("install", name: "#{flow_cli_config[:flow_language]}_init") steps end
generate_step_dict(name, plugin_config = nil)
click to toggle source
# File lib/flow/cli/yaml_builders/flow_yaml_builder.rb, line 59 def generate_step_dict(name, plugin_config = nil) step_dict = { name: name, plugin: { name: name } } step_dict[:plugin].merge!(plugin_config) if plugin_config step_dict end
generate_steps()
click to toggle source
# File lib/flow/cli/yaml_builders/flow_yaml_builder.rb, line 35 def generate_steps steps = [] generate_normal_steps.each { |step| steps << step } steps << generate_custom_build_step end