Class: AnsibleModule

Inherits:
Object
  • Object
show all
Includes:
ActiveModel::Validations
Defined in:
lib/ansible_module.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.instanceObject



48
49
50
# File 'lib/ansible_module.rb', line 48

def instance
  @instance ||= new(params)
end

.paramsObject



52
53
54
55
56
57
58
59
60
61
62
# File 'lib/ansible_module.rb', line 52

def params
  return @params if @params
  @params = ActiveSupport::HashWithIndifferentAccess.new
  File.open(ARGV[0]) do |fh|
    fh.read.shellsplit.each do |word|
      (key, value) = word.split('=', 2)
      @params[key] = value
    end
  end
  @params
end

Instance Method Details

#mainObject



11
12
13
# File 'lib/ansible_module.rb', line 11

def main
  raise "Not implemented."
end

#runObject



15
16
17
18
19
20
21
22
23
# File 'lib/ansible_module.rb', line 15

def run
  if valid?
    main
  else
    invalid_json
  end
rescue StandardError => e
  fail_json(msg: "Failed: #{e.to_s}")
end