-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsetup.sh
executable file
·60 lines (44 loc) · 2.36 KB
/
setup.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#!/bin/bash
usage(){
echo "Usage: $0 ENVIRONMENT"
echo
echo "ENVIRONMENT should be: development|test|production"
}
ENV=$1
if [ -z "$ENV" ]; then
usage
exit
fi
set -x # turns on stacktrace mode which gives useful debug information
echo "READING CONFIGIRATIONS"
USERNAME=`ruby -ryaml -e "puts YAML::load_file('config/database.yml')['${ENV}']['username']"`
PASSWORD=`ruby -ryaml -e "puts YAML::load_file('config/database.yml')['${ENV}']['password']"`
DATABASE=`ruby -ryaml -e "puts YAML::load_file('config/database.yml')['${ENV}']['database']"`
HOST=`ruby -ryaml -e "puts YAML::load_file('config/database.yml')['${ENV}']['host']"`
UNDERSCORE='_'
COUCH_USER=`ruby -ryaml -e "puts YAML::load_file('config/couchdb.yml')['${ENV}']['username']"`
COUCH_PASSWORD=`ruby -ryaml -e "puts YAML::load_file('config/couchdb.yml')['${ENV}']['password']"`
PREFIX=`ruby -ryaml -e "puts YAML::load_file('config/couchdb.yml')['${ENV}']['prefix']"`
SUFFIX=`ruby -ryaml -e "puts YAML::load_file('config/couchdb.yml')['${ENV}']['suffix']"`
COUCH_HOST=`ruby -ryaml -e "puts YAML::load_file('config/couchdb.yml')['${ENV}']['host']"`
COUCH_PROTOCOL=`ruby -ryaml -e "puts YAML::load_file('config/couchdb.yml')['${ENV}']['protocol']"`
COUCH_PORT=`ruby -ryaml -e "puts YAML::load_file('config/couchdb.yml')['${ENV}']['port']"`
echo 'DROPING DATABASES'
bundle exec rake db:drop
curl -X DELETE $COUCH_PROTOCOL://$COUCH_USER:$COUCH_PASSWORD@$COUCH_HOST:$COUCH_PORT/$PREFIX$UNDERSCORE$SUFFIX
curl -X PUT $COUCH_PROTOCOL://$COUCH_USER:$COUCH_PASSWORD@$COUCH_HOST:$COUCH_PORT/$PREFIX$UNDERSCORE$SUFFIX
ESPROTOCOL=`ruby -ryaml -e "puts YAML::load_file('config/elasticsearchsetting.yml')['elasticsearch']['protocol']"`
ESHOST=`ruby -ryaml -e "puts YAML::load_file('config/elasticsearchsetting.yml')['elasticsearch']['host']"`
ESINDEX=`ruby -ryaml -e "puts YAML::load_file('config/elasticsearchsetting.yml')['elasticsearch']['index']"`
ESPORT=`ruby -ryaml -e "puts YAML::load_file('config/elasticsearchsetting.yml')['elasticsearch']['port']"`
ESTYPE=`ruby -ryaml -e "puts YAML::load_file('config/elasticsearchsetting.yml')['elasticsearch']['type']"`
echo 'DELETE elasticsearch index'
curl -XDELETE $ESPROTOCOL://$ESHOST:$ESPORT/$ESINDEX
echo 'SETTING UP NEW DATABASES'
export RAILS_ENV=$ENV
bundle exec rake db:create
bundle exec rake db:schema:load
bundle exec rake db:seed
./build_metadata.sh $ENV
rm public/sites/*.yml
echo "Done"