diff options
Diffstat (limited to 'install.sh')
-rwxr-xr-x[-rw-r--r--] | install.sh | 29 |
1 files changed, 25 insertions, 4 deletions
diff --git a/install.sh b/install.sh index 8d62a0b6..232e3902 100644..100755 --- a/install.sh +++ b/install.sh @@ -1,10 +1,7 @@ -#! /usr/bin/env sh +#! /usr/bin/env bash # # This script install all dependencies for pyAggr3g470r. -# psycopg2 is removed from the requirements.txt file since it is only required -# if the user wants to use Postgres. Postgres is generally used on the Heroku -# platform. # sudo apt-get install python libpq-dev python-dev python-pip build-essential git @@ -13,4 +10,28 @@ sudo apt-get install libxml2-dev libxslt1-dev # for lxml sed -i '/psycopg2/d' requirements.txt sudo pip install --upgrade -r requirements.txt +# Initializes the configuration file cp conf/conf.cfg-sample conf/conf.cfg + +# Delete default database configuration +sed -i '/database/d' conf/conf.cfg +sed -i '/uri/d' conf/conf.cfg + +if [ "$1" == postgre ]; then + sudo apt-get install -y postgresql postgresql-server-dev-9.3 postgresql-client + sudo pip install psycopg2 + echo "127.0.0.1:5432:aggregator:pgsqluser:pgsqlpwd" > ~/.pgpass + chmod 700 ~/.pgpass + sudo -u postgres createuser pgsqluser --no-superuser --createdb --no-createrole + createdb aggregator --no-password + echo "ALTER USER pgsqluser WITH ENCRYPTED PASSWORD 'pgsqlpwd';" | sudo -u postgres psql + echo "GRANT ALL PRIVILEGES ON DATABASE aggregator TO pgsqluser;" | sudo -u postgres psql + + # Add configuration lines for PostgreSQL + echo '[database]' >> conf/conf.cfg + echo 'uri = postgres://pgsqluser:pgsqlpwd@127.0.0.1:5432/aggregator' >> conf/conf.cfg +elif [ "$1" == sqlite ]; then + # Add configuration lines for SQLite + echo '[database]' >> conf/conf.cfg + echo 'uri = sqlite+pysqlite:///pyAggr3g470r.db' >> conf/conf.cfg +fi |