]> git.donarmstrong.com Git - dsa-puppet.git/blobdiff - modules/rabbitmq/lib/puppet/provider/rabbitmq_user/rabbitmqctl.rb
move to puppetlabs rabbitmq module
[dsa-puppet.git] / modules / rabbitmq / lib / puppet / provider / rabbitmq_user / rabbitmqctl.rb
diff --git a/modules/rabbitmq/lib/puppet/provider/rabbitmq_user/rabbitmqctl.rb b/modules/rabbitmq/lib/puppet/provider/rabbitmq_user/rabbitmqctl.rb
deleted file mode 100644 (file)
index fde194c..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-require 'puppet'
-Puppet::Type.type(:rabbitmq_user).provide(:rabbitmqctl) do
-
-  commands :rabbitmqctl => 'rabbitmqctl'
-  defaultfor :feature => :posix
-
-  def self.instances
-    rabbitmqctl('list_users').split(/\n/)[1..-2].collect do |line|
-      if line =~ /^(\S+)(\s+\S+|)$/
-        new(:name => $1)
-      else
-        raise Puppet::Error, "Cannot parse invalid user line: #{line}"
-      end
-    end
-  end
-
-  def create
-    rabbitmqctl('add_user', resource[:name], resource[:password])
-    if resource[:admin] == :true
-      make_user_admin()
-    end
-  end
-
-  def destroy
-    rabbitmqctl('delete_user', resource[:name])
-  end
-
-  def exists?
-    out = rabbitmqctl('list_users').split(/\n/)[1..-2].detect do |line|
-      line.match(/^#{resource[:name]}(\s+\S+|)$/)
-    end
-  end
-
-  # def password
-  # def password=()
-  def admin
-    match = rabbitmqctl('list_users').split(/\n/)[1..-2].collect do |line|
-      line.match(/^#{resource[:name]}\s+\[(administrator)?\]/)
-    end.compact.first
-    if match
-      (:true if match[1].to_s == 'administrator') || :false
-    else
-      raise Puppet::Error, "Could not match line '#{resource[:name]} (true|false)' from list_users (perhaps you are running on an older version of rabbitmq that does not support admin users?)"
-    end
-  end
-
-  def admin=(state)
-    if state == :true
-      make_user_admin()
-    else
-      rabbitmqctl('set_user_tags', resource[:name])
-    end
-  end
-
-  def make_user_admin
-    rabbitmqctl('set_user_tags', resource[:name], 'administrator')
-  end
-
-end