Class: BigKeeper::PodfileOperator
- Inherits:
-
Object
- Object
- BigKeeper::PodfileOperator
- Defined in:
- lib/big_keeper/util/podfile_operator.rb
Overview
Operator for podfile
Instance Method Summary collapse
- #find_and_lock(podfile, dictionary) ⇒ Object
- #find_and_replace(podfile, module_name, module_type, source) ⇒ Object
- #has(podfile, module_name) ⇒ Object
- #modules_with_type(podfile, modules, type) ⇒ Object
- #podspec_change(podspec_file, version, module_name) ⇒ Object
- #replace_all_module_release(podfile, module_names, version) ⇒ Object
Instance Method Details
#find_and_lock(podfile, dictionary) ⇒ Object
96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 |
# File 'lib/big_keeper/util/podfile_operator.rb', line 96 def find_and_lock(podfile,dictionary) temp_file = Tempfile.new('.Podfile.tmp') begin File.open(podfile, 'r') do |file| file.each_line do |line| pod_model = PodfileDetector.get_pod_model(line) if pod_model != nil && pod_model.name != nil && dictionary[pod_model.name] != nil # p "#{pod_name},#{dictionary[pod_name]}" temp_file.puts generate_pod_config(pod_model.name,dictionary[pod_model.name],pod_model.comment) else temp_file.puts line end end end temp_file.close FileUtils.mv(temp_file.path, podfile) ensure temp_file.close temp_file.unlink end end |
#find_and_replace(podfile, module_name, module_type, source) ⇒ Object
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/big_keeper/util/podfile_operator.rb', line 35 def find_and_replace(podfile, module_name, module_type, source) temp_file = Tempfile.new('.Podfile.tmp') begin File.open(podfile, 'r') do |file| file.each_line do |line| if line.include?module_name temp_file.puts generate_module_config(module_name, module_type, source) else temp_file.puts line end end end temp_file.close FileUtils.mv(temp_file.path, podfile) ensure temp_file.close temp_file.unlink end end |
#has(podfile, module_name) ⇒ Object
9 10 11 12 13 14 15 16 17 18 |
# File 'lib/big_keeper/util/podfile_operator.rb', line 9 def has(podfile, module_name) File.open(podfile, 'r') do |file| file.each_line do |line| if line.include?module_name return true end end end false end |
#modules_with_type(podfile, modules, type) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/big_keeper/util/podfile_operator.rb', line 20 def modules_with_type(podfile, modules, type) matched_modules = [] File.open(podfile, 'r') do |file| file.each_line do |line| modules.each do |module_name| if line =~ /pod\s*'#{module_name}',#{ModuleType.regex(type)}/ matched_modules << module_name break end end end end matched_modules end |
#podspec_change(podspec_file, version, module_name) ⇒ Object
118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 |
# File 'lib/big_keeper/util/podfile_operator.rb', line 118 def podspec_change(podspec_file, version, module_name) temp_file = Tempfile.new(".#{module_name}.podspec") begin File.open(podspec_file, 'r') do |file| file.each_line do |line| if line.include?("s.version") temp_line = line if temp_line.split("=")[0].delete(" ") == "s.version" temp_file.puts "s.version = '#{version}'" else temp_file.puts line end else temp_file.puts line end end end temp_file.close FileUtils.mv(temp_file.path, podspec_file) ensure temp_file.close temp_file.unlink end end |
#replace_all_module_release(podfile, module_names, version) ⇒ Object
87 88 89 90 91 92 93 94 |
# File 'lib/big_keeper/util/podfile_operator.rb', line 87 def replace_all_module_release(podfile, module_names, version) module_names.each do |module_name| PodfileOperator.new.find_and_replace(podfile, module_name, ModuleType::GIT, GitInfo.new(BigkeeperParser.module_git(module_name), GitType::TAG, version)) end end |