Class: HammerCLIForeman::Parameter::SetCommand

Inherits:
HammerCLI::Apipie::Command
  • Object
show all
Includes:
HammerCLI::Messages
Defined in:
lib/hammer_cli_foreman/parameter.rb

Instance Method Summary collapse

Instance Method Details

#base_action_paramsObject



38
39
40
# File 'lib/hammer_cli_foreman/parameter.rb', line 38

def base_action_params
  {}
end

#create_parameterObject



58
59
60
61
62
63
64
65
66
67
# File 'lib/hammer_cli_foreman/parameter.rb', line 58

def create_parameter
  params = {
    "parameter" => {
      "name" => name,
      "value" => value
    }
  }.merge base_action_params

  resource.create(params)
end

#executeObject



27
28
29
30
31
32
33
34
35
36
# File 'lib/hammer_cli_foreman/parameter.rb', line 27

def execute
  if parameter_exist?
    update_parameter
    output.print_message success_message_for :update if  success_message_for :update
  else
    create_parameter
    output.print_message success_message_for :create if  success_message_for :create
  end
  0
end

#parameter_exist?Boolean

Returns:

  • (Boolean)


42
43
44
45
# File 'lib/hammer_cli_foreman/parameter.rb', line 42

def parameter_exist?
  params = resource.index(base_action_params)[0]
  params.find { |p| p["parameter"]["name"] == name }
end

#update_parameterObject



47
48
49
50
51
52
53
54
55
56
# File 'lib/hammer_cli_foreman/parameter.rb', line 47

def update_parameter
  params = {
    "id" => name,
    "parameter" => {
      "value" => value
    }
  }.merge base_action_params

  resource.update(params)
end