From 93f3ea07cdf2223db806cd50e097da2c41560404 Mon Sep 17 00:00:00 2001 From: Antonio Terceiro Date: Thu, 26 Feb 2015 10:41:02 -0300 Subject: [PATCH] Create gitlab database --- config/roles/database_server.rb | 1 + cookbooks/postgresql/recipes/gitlab.rb | 16 ++++++++++++++++ cookbooks/postgresql/templates/centos/pg_hba.conf.erb | 1 + test/postgresql_test.sh | 4 ++++ 4 files changed, 22 insertions(+), 0 deletions(-) create mode 100644 cookbooks/postgresql/recipes/gitlab.rb diff --git a/config/roles/database_server.rb b/config/roles/database_server.rb index ceb2041..dc2d6fe 100644 --- a/config/roles/database_server.rb +++ b/config/roles/database_server.rb @@ -3,4 +3,5 @@ description 'Database server' run_list *[ 'recipe[postgresql]', 'recipe[postgresql::colab]', + 'recipe[postgresql::gitlab]', ] diff --git a/cookbooks/postgresql/recipes/gitlab.rb b/cookbooks/postgresql/recipes/gitlab.rb new file mode 100644 index 0000000..4eadc2c --- /dev/null +++ b/cookbooks/postgresql/recipes/gitlab.rb @@ -0,0 +1,16 @@ +execute 'createuser:gitlab' do + command 'createuser gitlab' + user 'postgres' + only_if do + `sudo -u postgres -i psql --quiet --tuples-only -c "select count(*) from pg_user where usename = 'gitlab';"`.strip.to_i == 0 + end +end + +execute 'createdb:gitlab' do + command 'createdb --owner=gitlab gitlab' + user 'postgres' + only_if do + `sudo -u postgres -i psql --quiet --tuples-only -c "select count(1) from pg_database where datname = 'gitlab';"`.strip.to_i == 0 + end +end + diff --git a/cookbooks/postgresql/templates/centos/pg_hba.conf.erb b/cookbooks/postgresql/templates/centos/pg_hba.conf.erb index d514183..2b630b3 100644 --- a/cookbooks/postgresql/templates/centos/pg_hba.conf.erb +++ b/cookbooks/postgresql/templates/centos/pg_hba.conf.erb @@ -8,3 +8,4 @@ host all all ::1/128 ident # TYPE DATABASE USER ADDRESS METHOD host colab colab <%= node['peers']['integration'] %>/32 trust +host gitlab gitlab <%= node['peers']['integration'] %>/32 trust diff --git a/test/postgresql_test.sh b/test/postgresql_test.sh index 5be0fd4..a66b860 100644 --- a/test/postgresql_test.sh +++ b/test/postgresql_test.sh @@ -8,5 +8,9 @@ test_colab_database_created() { assertTrue 'colab database created in PostgreSQL' 'run_on database sudo -u postgres -i psql colab < /dev/null' } +test_gitlab_database_created() { + assertTrue 'gitlab database created in PostgreSQL' 'run_on database sudo -u postgres -i psql gitlab < /dev/null' +} + . shunit2 -- libgit2 0.21.2