Class: Pod::Command
- Inherits:
-
CLAide::Command
- Object
- CLAide::Command
- Pod::Command
- Includes:
- Options, Pod::Config::Mixin
- Defined in:
- lib/cocoapods/command.rb,
lib/cocoapods/command/env.rb,
lib/cocoapods/command/ipc.rb,
lib/cocoapods/command/lib.rb,
lib/cocoapods/command/init.rb,
lib/cocoapods/command/list.rb,
lib/cocoapods/command/repo.rb,
lib/cocoapods/command/spec.rb,
lib/cocoapods/command/cache.rb,
lib/cocoapods/command/setup.rb,
lib/cocoapods/command/update.rb,
lib/cocoapods/command/install.rb,
lib/cocoapods/command/ipc/list.rb,
lib/cocoapods/command/ipc/repl.rb,
lib/cocoapods/command/ipc/spec.rb,
lib/cocoapods/command/lib/lint.rb,
lib/cocoapods/command/outdated.rb,
lib/cocoapods/command/repo/add.rb,
lib/cocoapods/command/spec/cat.rb,
lib/cocoapods/command/repo/lint.rb,
lib/cocoapods/command/repo/list.rb,
lib/cocoapods/command/repo/push.rb,
lib/cocoapods/command/spec/edit.rb,
lib/cocoapods/command/spec/lint.rb,
lib/cocoapods/command/cache/list.rb,
lib/cocoapods/command/lib/create.rb,
lib/cocoapods/command/spec/which.rb,
lib/cocoapods/command/cache/clean.rb,
lib/cocoapods/command/ipc/podfile.rb,
lib/cocoapods/command/repo/remove.rb,
lib/cocoapods/command/repo/update.rb,
lib/cocoapods/command/spec/create.rb,
lib/cocoapods/command/repo/add_cdn.rb,
lib/cocoapods/command/ipc/podfile_json.rb,
lib/cocoapods/command/options/repo_update.rb,
lib/cocoapods/command/ipc/update_search_index.rb,
lib/cocoapods/command/options/project_directory.rb
Direct Known Subclasses
Cache, Env, IPC, Init, Install, Lib, List, Outdated, Repo, Setup, Spec, Update
Defined Under Namespace
Modules: Options Classes: Cache, Env, IPC, Init, Install, Lib, List, Outdated, Repo, Setup, Spec, Update
Class Method Summary collapse
-
.ensure_not_root_or_allowed!(argv, uid = Process.uid, is_windows = Gem.win_platform?) ⇒ void
Ensure root user.
- .options ⇒ Object
- .report_error(exception) ⇒ Object
- .run(argv) ⇒ Object
Instance Method Summary collapse
-
#ensure_master_spec_repo_exists! ⇒ void
Ensure that the master spec repo exists.
-
#initialize(argv) ⇒ Command
constructor
A new instance of Command.
Methods included from Pod::Config::Mixin
Constructor Details
#initialize(argv) ⇒ Command
If a command is run inside another one some settings which where true might return false.
We should probably not even load colored unless needed.
Move silent flag to CLAide.
It is important that the commands don’t override the default settings if their flag is missing (i.e. their value is nil)
Returns a new instance of Command.
85 86 87 88 89 90 91 92 93 94 |
# File 'lib/cocoapods/command.rb', line 85 def initialize(argv) super config.silent = argv.flag?('silent', config.silent) config.allow_root = argv.flag?('allow-root', config.allow_root) config.verbose = self.verbose? unless verbose.nil? unless self.ansi_output? Colored2.disable! String.send(:define_method, :colorize) { |string, _| string } end end |
Class Method Details
.ensure_not_root_or_allowed!(argv, uid = Process.uid, is_windows = Gem.win_platform?) ⇒ void
This method returns an undefined value.
Ensure root user
100 101 102 103 |
# File 'lib/cocoapods/command.rb', line 100 def self.ensure_not_root_or_allowed!(argv, uid = Process.uid, is_windows = Gem.win_platform?) root_allowed = argv.include?('--allow-root') || !ENV['COCOAPODS_ALLOW_ROOT'].nil? help! 'You cannot run CocoaPods as root.' unless root_allowed || uid != 0 || is_windows end |
.options ⇒ Object
40 41 42 43 44 45 |
# File 'lib/cocoapods/command.rb', line 40 def self. [ ['--allow-root', 'Allows CocoaPods to run as root'], ['--silent', 'Show nothing'], ].concat(super) end |
.report_error(exception) ⇒ Object
57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
# File 'lib/cocoapods/command.rb', line 57 def self.report_error(exception) case exception when Interrupt puts '[!] Cancelled'.red Config.instance.verbose? ? raise : exit(1) when SystemExit raise else if ENV['COCOA_PODS_ENV'] != 'development' puts UI::ErrorReport.report(exception) UI::ErrorReport.search_for_exceptions(exception) exit 1 else raise exception end end end |
.run(argv) ⇒ Object
47 48 49 50 51 52 53 54 55 |
# File 'lib/cocoapods/command.rb', line 47 def self.run(argv) ensure_not_root_or_allowed! argv verify_minimum_git_version! verify_xcode_license_approved! super(argv) ensure UI.print_warnings end |
Instance Method Details
#ensure_master_spec_repo_exists! ⇒ void
This method returns an undefined value.
Ensure that the master spec repo exists
109 110 111 112 113 |
# File 'lib/cocoapods/command.rb', line 109 def ensure_master_spec_repo_exists! unless config.sources_manager.master_repo_functional? Setup.new(CLAide::ARGV.new([])).run end end |