Class: Pindo::Command::Ios::Podupdate

Inherits:
Pindo::Command::Ios show all
Defined in:
lib/pindo/command/ios/podupdate.rb

Constant Summary

Constants inherited from Pindo::Command

DEFAULT_OPTIONS, DEFAULT_ROOT_OPTIONS

Instance Attribute Summary

Attributes inherited from Pindo::Command

#args_help_flag

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Pindo::Command

command_name, #initialize_options, run, use_cache?

Methods included from Funlog::Mixin

#pindo_log_instance

Methods included from Pindoconfig::Mixin

#pindo_single_config

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, popen3, reader, which, which!

Constructor Details

#initialize(argv) ⇒ Podupdate

Returns a new instance of Podupdate.



42
43
44
45
46
47
48
# File 'lib/pindo/command/ios/podupdate.rb', line 42

def initialize(argv)
    @args_install_flag = argv.flag?('install', false)
    @project_dir = argv.option('p')

    @additional_args = argv.remainder!
    super(argv)
end

Class Method Details

.optionsObject



35
36
37
38
39
40
# File 'lib/pindo/command/ios/podupdate.rb', line 35

def self.options
    [
        ['--install', '更新完lib之后执行pod install, pindo ios podupdate --install'],
        ['--p', '指定需要lint的pod库所在目录, 例如 --p=~/Users/xxx/MyPod'],
    ].concat(super)
end

Instance Method Details

#runObject



55
56
57
58
59
60
61
# File 'lib/pindo/command/ios/podupdate.rb', line 55

def run
    # 使用 CocoaPodsHelper 执行更新操作
    Pindo::CocoaPodsHelper.update_pod_repo(
        install: @args_install_flag,
        project_dir: @project_dir
    )
end

#validate!Object



50
51
52
53
# File 'lib/pindo/command/ios/podupdate.rb', line 50

def validate!
    super
    @project_dir=Dir.pwd if @project_dir.nil? || @project_dir.empty?
end