Module: Patcmd::CLI::Helpers::TaskHelper
- Included in:
- BaseCommand
- Defined in:
- lib/patcmd/cli/helpers/task_helper.rb
Defined Under Namespace
Classes: ValidationError
Instance Method Summary collapse
Instance Method Details
#display_task(task) ⇒ Object
29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/patcmd/cli/helpers/task_helper.rb', line 29 def display_task(task) puts "Category: #{task["category"]}" puts " Name: #{task["name"]}" puts " Action: #{task["action"]}" puts " Description: #{task["description"]}" puts " Path: #{task["path"]}" puts " Command: #{task["command"]}" puts " Args: #{task["args"].join(" ")}" if task["args"].any? if task["environments"].any? envs = task["environments"].map { |k, v| "#{k}=#{v}" }.join(", ") puts " Environments: #{envs}" end puts "-" * 40 end |
#validate_task(task) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/patcmd/cli/helpers/task_helper.rb', line 9 def validate_task(task) required_fields = ["name", "description", "category", "path", "action", "command"] missing_fields = required_fields.select { |field| task[field].nil? || task[field].strip.empty? } unless missing_fields.empty? raise ValidationError, "Missing required fields: #{missing_fields.join(", ")}" exit(1) end unless task["args"].is_a?(Array) rails(ValidationError, "The 'args' field must be an array.") exit(1) end unless task["environments"].is_a?(Hash) rails(ValidationError, "The 'environments' field must be a hash.") exit(1) end end |