class Tuya::SpecRepo
Public Class Methods
push(version, is_commit_all, podspec, verbose)
click to toggle source
# File lib/tycli/spec_repo.rb, line 3 def self.push(version, is_commit_all, podspec, verbose) require 'tycli/repo/spec' require 'tycli/git' require 'colored' if is_commit_all Tuya::TuyaGit.commit_all('feat: update all by tuya-cli repo push') end podspecs = Tuya::PodSpec.update(podspec, version) podspecs.each do |podspec_file| Tuya::TuyaGit.commit_file(podspec_file, "feat: update version #{version} by tuya-cli repo push") end require 'tycli/executable' puts "\nPush podspec(git)...".yellow git_push_commands = [ %W(push) ] Tuya::EXE.multi_exe('git', git_push_commands, true) puts "\nAdd tag: #{version}...".yellow git_tag_commands = [ %W(tag -a #{version} -m 'add\ tag:\ #{version}\ by\ tuya-cli\ repo\ push') ] Tuya::EXE.multi_exe('git', git_tag_commands, true) puts "\nPush tag: #{version}...".yellow git_tag_push_commands = [ %W(push origin --tags) ] Tuya::EXE.multi_exe('git', git_tag_push_commands, true) require 'tycli/system' system = Tuya::System.instance group = system.group podspecs.each do |podspec_file| puts "\nPushing #{podspec_file}...".yellow pod_push = "pod repo push #{group.spec} #{podspec_file} --sources='#{group.url},https://github.com/CocoaPods/Specs.git,https://github.com/TuyaInc/TYPublicSpecs.git' --use-libraries --allow-warnings" if verbose pod_push = "#{pod_push} --verbose" end pod_push_result = `#{pod_push}` push_result = Tuya::PodSpec.local_pod_version_exist(version, group.spec, File.basename(FileUtils.pwd)) if verbose if pod_push_result.length > 10000 require 'tycli/util/file_util' log_name = "repo_push_result_#{podspec_file}_#{version}.log" if push_result log_name = "success_#{log_name}" puts "\nThe detail log is :#{log_name}\n".yellow else log_name = "error_#{log_name}" puts "\nThe detail error log is :#{log_name}\n".red end TYUtil::TYFile.new_file("log", log_name, pod_push_result) else puts "The detail log is:\n".red puts pod_push_result.magenta end end if push_result puts "Push #{podspec_file} Successful\n".green else suggest_log(podspec_file, pod_push_result) end end end
suggest_log(podspec_file, content)
click to toggle source
# File lib/tycli/spec_repo.rb, line 90 def self.suggest_log(podspec_file, content) puts "\nPush #{podspec_file} Failed you can use 'tuya repo push --verbose for more information' ".red require 'tycli/util/puts_util' TYUtil::TYPuts.filter(content, TYUtil::TYPuts::ERROR_KEYS) end