module Crafter
Constants
- ROOT
Attributes
command_line_test_script[R]
icon_versioning_script[R]
Public Instance Methods
add_git_ignore()
click to toggle source
# File lib/crafter.rb, line 47 def add_git_ignore @add_git_ignore = true end
add_platform(platform_hash)
click to toggle source
# File lib/crafter.rb, line 43 def add_platform(platform_hash) @platforms << platform_hash end
configure(&block)
click to toggle source
# File lib/crafter.rb, line 23 def configure(&block) instance_eval &block end
duplicate_configurations(duplication_hash)
click to toggle source
# File lib/crafter.rb, line 51 def duplicate_configurations(duplication_hash) @configuration = duplication_hash end
find_target_configuration(name)
click to toggle source
# File lib/crafter.rb, line 35 def find_target_configuration(name) target = @targets[name] target ||= self.project.select_target_for_name name target_configuration = TargetConfiguration.new(name, target) @targets[name] = target_configuration target_configuration end
process_build_settings()
click to toggle source
# File lib/crafter.rb, line 91 def process_build_settings puts 'set specified values for build settings' self.project.set_build_settings(@build_settings) end
process_configurations()
click to toggle source
# File lib/crafter.rb, line 77 def process_configurations puts 'duplicating configurations' self.project.duplicate_configurations(@configuration) end
process_git()
click to toggle source
# File lib/crafter.rb, line 96 def process_git puts 'preparing git ignore' GitHelper.new.generate_files end
process_optional()
click to toggle source
# File lib/crafter.rb, line 82 def process_optional @targets.each { |_, v| v.process_optional } end
process_options()
click to toggle source
# File lib/crafter.rb, line 86 def process_options puts 'setting up variety of options' self.project.enable_options(@options) end
process_pods()
click to toggle source
# File lib/crafter.rb, line 101 def process_pods puts 'preparing pod file' File.open('Podfile', File::WRONLY|File::CREAT|File::EXCL) do |f| if @language_swift f.puts "use_frameworks!" end @platforms.each do |hash| name = hash[:platform] deployment = hash[:deployment] if deployment f.puts "platform :#{name}, '#{deployment}'" else f.puts "platform #{name}" end end @targets.each { |_, v| v.write_pods(f) } end rescue Exception => e puts "Skipping pod generation - #{e}" end
process_scripts()
click to toggle source
# File lib/crafter.rb, line 126 def process_scripts puts 'adding scripts' @targets.each { |_, v| v.process_scripts(self.project) } end
project()
click to toggle source
# File lib/crafter.rb, line 31 def project @project ||= ProjectHelper.new end
set_build_settings(build_settings, configuration: 'crafter_common')
click to toggle source
# File lib/crafter.rb, line 59 def set_build_settings(build_settings, configuration: 'crafter_common') @build_settings[configuration] = build_settings end
set_language_swift(is_swift)
click to toggle source
# File lib/crafter.rb, line 63 def set_language_swift(is_swift) @language_swift = is_swift end
set_options(options)
click to toggle source
# File lib/crafter.rb, line 55 def set_options(options) @options = options end
setup_project()
click to toggle source
# File lib/crafter.rb, line 67 def setup_project process_optional() process_configurations() if @configuration && !@configuration.empty? process_options() if @options && !@options.empty? process_build_settings() if @build_settings && !@build_settings.empty? process_git() if @add_git_ignore process_pods() process_scripts() end
with(name, &block)
click to toggle source
# File lib/crafter.rb, line 27 def with(name, &block) self.find_target_configuration(name).instance_eval(&block) end