PostgreSQL 9.5 beta1 インストール

itame でインストールしてみた。
一応変数を外部に押し出してみたけど、どうだろう。汎用性はなさそうだな。

my_postgresql.rb

# PostgreSQL Install
ver = node[:postgresql][:ver]
short_ver = node[:postgresql][:short_ver]

package node[:postgresql][:pgdg] do
  not_if "rpm -q #{File.basename(node[:postgresql][:pgdg], ".rpm")}"
end

package "postgresql#{short_ver}"
package "postgresql#{short_ver}-server"
package "postgresql#{short_ver}-contrib"
package "postgresql#{short_ver}-devel"
package "postgresql#{short_ver}-libs"

execute "initdb" do
  command "PGSETUP_INITDB_OPTIONS='--no-locale' /usr/pgsql-#{ver}/bin/postgresql#{short_ver}-setup initdb"
  not_if "test -e /var/lib/pgsql/#{ver}/data/postgresql.conf"
end

service "postgresql-#{ver}" do
  action :start
end

# Firewall
execute "firewall port open" do
  command "firewall-cmd --add-port=5432/tcp --zone=public --permanent"
  not_if "grep -c 5432 /etc/firewalld/zones/public.xml"
end

service "firewalld" do
  action :restart
end

node.yaml

# postgresql
postgresql:
  pgdg: http://yum.postgresql.org/9.5/redhat/rhel-7-x86_64/pgdg-centos95-9.5-2.noarch.rpm
  ver: 9.5
  short_ver: 95

実行

itamae ssh --host localhost -p 2222 -u vagrant ./my_postgresql.rb -y node.yml