Class: Pindo::Command::Jps::Upload
- Inherits:
-
Pindo::Command::Jps
- Object
- CLAide::Command
- Pindo::Command
- Pindo::Command::Jps
- Pindo::Command::Jps::Upload
- Defined in:
- lib/pindo/command/jps/upload.rb
Constant Summary
Constants inherited from Pindo::Command
DEFAULT_OPTIONS, DEFAULT_ROOT_OPTIONS
Instance Attribute Summary
Attributes inherited from Pindo::Command
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(argv) ⇒ Upload
constructor
A new instance of Upload.
- #run ⇒ Object
- #validate! ⇒ Object
Methods inherited from Pindo::Command
Methods included from Funlog::Mixin
Methods included from Pindoconfig::Mixin
Methods included from Githelper
#add_branch, #add_tag, #add_tag_with_check, #clone_clang_repo, #clone_devclang_repo, #clone_pindo_common_config_repo, #clone_pindo_env_config_repo, #clong_buildconfig_repo, #get_repo_base_name, #getcode_to_dir, #git_addpush_repo, #git_latest_commit_id, #git_root_directory, #is_git_directory?, #local_branch_exists?, #local_tag_exists?, #prepare_gitenv, #process_need_add_files, #remote_branch_exists?, #remote_tag_exists?, #remove_branch, #remove_tag
Methods included from Executable
capture_command, #executable, execute_command, which, which!
Constructor Details
#initialize(argv) ⇒ Upload
Returns a new instance of Upload.
66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 |
# File 'lib/pindo/command/jps/upload.rb', line 66 def initialize(argv) @args_ipa_file = argv.shift_argument @ipa_file = argv.option('ipa') if !@ipa_file.nil? @args_ipa_file = @ipa_file end if @args_ipa_file && !@args_ipa_file.empty? @args_ipa_file = @args_ipa_file.strip.gsub(/\"/, '') end @args_login_flag = argv.flag?('login', false) @args_send_flag = argv.flag?('send', false) @args_resign_flag = argv.flag?('resign', false) @args_proj_name = argv.option('proj') @args_attach_name = argv.option('attach') @args_upload_desc = argv.option('desc') @args_cert_id = argv.option('certid') if @args_upload_desc && !@args_upload_desc.empty? @args_upload_desc = @args_upload_desc.strip.gsub(/\"/, '') end if !@args_cert_id.nil? && !@args_cert_id.empty? @args_resign_flag = true end if @args_resign_flag @args_send_flag = true end super(argv) @additional_args = argv.remainder! end |
Class Method Details
.options ⇒ Object
51 52 53 54 55 56 57 58 59 60 61 62 63 |
# File 'lib/pindo/command/jps/upload.rb', line 51 def self. [ ['--login', '强制再次登录jps网站,用法: pindo jps upload --login'], ['--ipa', '强制指定上传的ipa文件: pindo jps upload --ipa=path/to/demo.ipa'], ['--proj', '指定哪个项目(忽略大小写空格等等字符),用法:pindo jps upload --proj=prancksoundv4'], ['--attach', '指定需要和ipa一起上传的附件: pindo jps upload --attach=path/to/attach.zip'], ['--send', '发送消息到项目群(注意:不带此参数也会发送给自己),用法:pindo jps upload --send'], ['--desc', '指定上传的备注信息: -pindo jps upload -desc="1.upload message"'], ['--resign', '上传到之后是否重签名,用法:pindo jps upload --resign'], ['--certid', '设置重签名的正式id,用法:pindo jps upload --certid=com.test.bundleid'], ].concat(super) end |
Instance Method Details
#run ⇒ Object
110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 |
# File 'lib/pindo/command/jps/upload.rb', line 110 def run current_project_dir = Dir.pwd # 创建任务列表 tasks = make_upload_tasks(current_project_dir) # 执行任务 task_manager = Pindo::TaskSystem::TaskManager.instance task_manager.clear_all tasks.each { |task| task_manager.add_task(task) } task_manager.start # 如果需要重签名,在所有上传任务完成后执行 if @args_resign_flag args = [] if @args_send_flag args << "--send" end if !@args_cert_id.nil? && !@args_cert_id.empty? args << "--certid=#{@args_cert_id}" end if !@args_proj_name.nil? && !@args_proj_name.empty? args << "--proj=#{@args_proj_name}" end Pindo::Command::Jps::Resign::run(args) end end |
#validate! ⇒ Object
105 106 107 108 |
# File 'lib/pindo/command/jps/upload.rb', line 105 def validate! super end |