]> git.openstreetmap.org Git - chef.git/blobdiff - cookbooks/postgresql/templates/default/ohai.rb.erb
Add a load more cookbooks
[chef.git] / cookbooks / postgresql / templates / default / ohai.rb.erb
diff --git a/cookbooks/postgresql/templates/default/ohai.rb.erb b/cookbooks/postgresql/templates/default/ohai.rb.erb
new file mode 100644 (file)
index 0000000..e3eca3a
--- /dev/null
@@ -0,0 +1,17 @@
+provides "postgresql"
+
+postgresql Mash.new
+
+Dir.glob("/etc/postgresql/*/*/postgresql.conf").each do |conf|
+  cluster = conf.sub("/etc/postgresql/", "").sub("/postgresql.conf", "")
+
+  postgresql[:clusters] = Mash.new unless postgresql[:clusters]
+  postgresql[:clusters][cluster] = Mash.new unless postgresql[:clusters][cluster]
+  postgresql[:clusters][cluster][:version] = cluster.split("/").first.to_f
+
+  IO.foreach(conf) do |line|
+    if line =~ /^ *port *= *([0-9]+)\s+/
+      postgresql[:clusters][cluster][:port] = $1
+    end
+  end
+end