diff options
author | Lin Jen-Shin <godfat@godfat.org> | 2018-05-15 01:49:46 +0800 |
---|---|---|
committer | Lin Jen-Shin <godfat@godfat.org> | 2018-05-16 21:52:08 +0800 |
commit | 0ab6469187285368d9f64f9ec67dbbcfa3e5a901 (patch) | |
tree | cc4a30610d5ade08499667c74c8bcc467db4eb25 /scripts | |
parent | cdcde75bb782951b27ab9db0d54a71db7c94d7cb (diff) | |
download | gitlab-ce-0ab6469187285368d9f64f9ec67dbbcfa3e5a901.tar.gz |
Grant privileges after database is createdce-5980-add-ce-upgrade-ee-test
Never drop the database when granting privileges
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/create_mysql_user.sh | 1 | ||||
-rw-r--r-- | scripts/create_postgres_user.sh | 4 | ||||
-rw-r--r-- | scripts/prepare_build.sh | 12 | ||||
-rw-r--r-- | scripts/utils.sh | 10 |
4 files changed, 13 insertions, 14 deletions
diff --git a/scripts/create_mysql_user.sh b/scripts/create_mysql_user.sh index 286b1325f1d..35f68c581f3 100644 --- a/scripts/create_mysql_user.sh +++ b/scripts/create_mysql_user.sh @@ -1,7 +1,6 @@ #!/bin/bash mysql --user=root --host=mysql <<EOF -CREATE DATABASE IF NOT EXISTS gitlabhq_test DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; CREATE USER IF NOT EXISTS 'gitlab'@'%'; GRANT ALL PRIVILEGES ON gitlabhq_test.* TO 'gitlab'@'%'; FLUSH PRIVILEGES; diff --git a/scripts/create_postgres_user.sh b/scripts/create_postgres_user.sh index 8a744df3226..8a049bcd7fb 100644 --- a/scripts/create_postgres_user.sh +++ b/scripts/create_postgres_user.sh @@ -1,8 +1,6 @@ #!/bin/bash psql -h postgres -U postgres postgres <<EOF -DROP DATABASE IF EXISTS gitlabhq_test; -CREATE DATABASE gitlabhq_test; CREATE USER gitlab; -GRANT ALL PRIVILEGES ON DATABASE gitlabhq_test TO gitlab; +GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO gitlab; EOF diff --git a/scripts/prepare_build.sh b/scripts/prepare_build.sh index 01cb01ed812..d8bcc9f8191 100644 --- a/scripts/prepare_build.sh +++ b/scripts/prepare_build.sh @@ -49,16 +49,8 @@ sed -i 's/localhost/redis/g' config/redis.queues.yml cp config/redis.shared_state.yml.example config/redis.shared_state.yml sed -i 's/localhost/redis/g' config/redis.shared_state.yml -# Some tasks (e.g. db:seed_fu) need to have a properly-configured database -# user but not necessarily a full schema loaded -if [ "$CREATE_DB_USER" != "false" ]; then - if [ "$GITLAB_DATABASE" = 'postgresql' ]; then - . scripts/create_postgres_user.sh - else - . scripts/create_mysql_user.sh - fi -fi - if [ "$SETUP_DB" != "false" ]; then setup_db +elif getent hosts postgres || getent hosts mysql; then + setup_db_user_only fi diff --git a/scripts/utils.sh b/scripts/utils.sh index 08c33f3f67e..2d2ba115563 100644 --- a/scripts/utils.sh +++ b/scripts/utils.sh @@ -13,7 +13,17 @@ retry() { return 1 } +setup_db_user_only() { + if [ "$GITLAB_DATABASE" = "postgresql" ]; then + . scripts/create_postgres_user.sh + else + . scripts/create_mysql_user.sh + fi +} + setup_db() { + setup_db_user_only + bundle exec rake db:drop db:create db:schema:load db:migrate if [ "$GITLAB_DATABASE" = "mysql" ]; then |