master
 1execute "apt-get update -y"
 2execute "apt-get upgrade -y"
 3
 4package [
 5  'curl',
 6  'git-core',
 7  'libsqlite3-dev',
 8  'mongodb',
 9  'sqlite3',
10]
11
12bash "install postgres" do
13  user "root"
14  not_if { ::File.exist?("/etc/apt/sources.list.d/pgdg.list") }
15  code <<-SCRIPT
16    echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list
17    wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc \
18      | apt-key add -
19    apt-get update -y
20    apt-get install -y postgresql-9.4 libpq-dev \
21      postgresql-contrib-9.4 postgresql-client-common
22  SCRIPT
23end
24
25sql = "SELECT 1 FROM pg_roles WHERE rolname='vagrant'"
26create_user = "createuser -s -e -w vagrant"
27execute "psql postgres -tAc \"#{sql}\" | grep -q 1 || #{create_user}" do
28  user "postgres"
29end
30
31sql = "SELECT 1 FROM pg_roles WHERE rolname='vagrant'"
32execute "createdb" do
33  user "vagrant"
34  not_if { "psql postgres -tAc \"#{sql}\" | grep -q 1" }
35end
36
37service "postgresql" do
38  action [:enable, :start]
39end