Class: Puppetfactory::Plugins::ConsoleUser
- Inherits:
-
Puppetfactory::Plugins
- Object
- Puppetfactory::Plugins
- Puppetfactory::Plugins::ConsoleUser
- Defined in:
- lib/puppetfactory/plugins/console_user.rb
Instance Attribute Summary
Attributes inherited from Puppetfactory::Plugins
Instance Method Summary collapse
- #create(username, password) ⇒ Object
- #delete(username) ⇒ Object
-
#initialize(options) ⇒ ConsoleUser
constructor
A new instance of ConsoleUser.
- #userinfo(username, extended = false) ⇒ Object
Constructor Details
#initialize(options) ⇒ ConsoleUser
Returns a new instance of ConsoleUser.
6 7 8 9 10 11 12 13 14 15 16 17 |
# File 'lib/puppetfactory/plugins/console_user.rb', line 6 def initialize() super() @puppet = [:puppet] @suffix = [:usersuffix] auth_info = [:auth_info] || {} @ca_certificate_path = auth_info[:ca_certificate_path] || "#{[:confdir]}/ssl/ca/ca_crt.pem", @certificate_path = auth_info[:certificate_path] || "#{[:confdir]}/ssl/certs/#{[:master]}.pem", @private_key_path = auth_info[:private_key_path] || "#{[:confdir]}/ssl/private_keys/#{[:master]}.pem" @classifier_url = [:classifier] || "http://#{[:master]}:4433/classifier-api" end |
Instance Method Details
#create(username, password) ⇒ Object
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/puppetfactory/plugins/console_user.rb', line 19 def create(username, password) output, status = Open3.capture2e(@puppet, 'resource', 'rbac_user', username, 'ensure=present', "display_name=#{username}", 'roles=Operators', "email=#{username}@#{@suffix}", "password=#{password}") unless status.success? $logger.error "Could not create PE Console user #{username}: #{output}" return false end $logger.info "Console user #{username} created successfully" true end |
#delete(username) ⇒ Object
36 37 38 39 40 41 42 43 44 45 |
# File 'lib/puppetfactory/plugins/console_user.rb', line 36 def delete(username) output, status = Open3.capture2e(@puppet, 'resource', 'rbac_user', username, 'ensure=absent') unless status.success? $logger.warn "Could not remove PE Console user #{username}: #{output}" return false end $logger.info "Console user #{username} removed successfully" true end |
#userinfo(username, extended = false) ⇒ Object
47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
# File 'lib/puppetfactory/plugins/console_user.rb', line 47 def userinfo(username, extended = false) return unless extended output, status = Open3.capture2e(@puppet, 'resource', 'rbac_user', username) unless status.success? $logger.error "Could not query Puppet user #{username}: #{output}" return false end { :username => username, :console_user => output =~ /present/, } end |