Class: Shadwire::CLI
- Inherits:
-
Thor
- Object
- Thor
- Shadwire::CLI
- Defined in:
- lib/shadwire/cli.rb
Class Method Summary collapse
Instance Method Summary collapse
- #add(*names) ⇒ Object
- #diff(*names) ⇒ Object
- #info(name) ⇒ Object
- #init ⇒ Object
- #list ⇒ Object
- #remove(*names) ⇒ Object
- #search(query = nil) ⇒ Object
- #status ⇒ Object
- #update(*names) ⇒ Object
- #version ⇒ Object
Class Method Details
.exit_on_failure? ⇒ Boolean
9 |
# File 'lib/shadwire/cli.rb', line 9 def self.exit_on_failure? = true |
Instance Method Details
#add(*names) ⇒ Object
44 45 46 47 48 49 50 51 52 53 |
# File 'lib/shadwire/cli.rb', line 44 def add(*names) run_command do |root, ui| raise Shadwire::Error, "add requires at least one component name" if names.empty? Commands::Add.new( root:, names:, yes: [:yes], overwrite: [:overwrite], no_deps: ![:deps], registry: [:registry], json: [:json], ui: ).call end end |
#diff(*names) ⇒ Object
89 90 91 92 93 94 95 96 |
# File 'lib/shadwire/cli.rb', line 89 def diff(*names) run_command do |root, ui| result = Commands::Diff.new( root:, names:, registry: [:registry], json: [:json], ui: ).call exit 1 if [:exit_code] && result[:drifted] end end |
#info(name) ⇒ Object
78 79 80 81 82 |
# File 'lib/shadwire/cli.rb', line 78 def info(name) run_command do |root, ui| Commands::Info.new(root:, name:, registry: [:registry], json: [:json], ui:).call end end |
#init ⇒ Object
26 27 28 29 30 31 32 33 |
# File 'lib/shadwire/cli.rb', line 26 def init run_command do |root, ui| Commands::Init.new( root:, registry: [:registry], yes: [:yes], force: [:force], json: [:json], ui: ).call end end |
#list ⇒ Object
58 59 60 61 62 |
# File 'lib/shadwire/cli.rb', line 58 def list run_command do |root, ui| Commands::List.new(root:, registry: [:registry], json: [:json], ui:).call end end |
#remove(*names) ⇒ Object
121 122 123 124 125 126 127 128 129 |
# File 'lib/shadwire/cli.rb', line 121 def remove(*names) run_command do |root, ui| raise Shadwire::Error, "remove requires at least one component name" if names.empty? Commands::Remove.new( root:, names:, yes: [:yes], registry: [:registry], json: [:json], ui: ).call end end |
#search(query = nil) ⇒ Object
67 68 69 70 71 72 73 |
# File 'lib/shadwire/cli.rb', line 67 def search(query = nil) run_command do |root, ui| raise Shadwire::Error, "search requires a query" if query.nil? || query.strip.empty? Commands::Search.new(root:, query:, registry: [:registry], json: [:json], ui:).call end end |
#status ⇒ Object
134 135 136 137 138 |
# File 'lib/shadwire/cli.rb', line 134 def status run_command do |root, ui| Commands::Status.new(root:, registry: [:registry], json: [:json], ui:).call end end |