Merge branch 'feature/stats' of https://github.com/monarc-project/MonarcAppFO into feature/stats
* 'feature/stats' of https://github.com/monarc-project/MonarcAppFO: updated name of the command to create new local client create the first admin client chg: updated default configuration for stats service with systemd deployment. Ignore cache result file from phpunit.pull/316/head
commit
10b8a0df05
|
@ -5,6 +5,7 @@ nbproject
|
||||||
.idea
|
.idea
|
||||||
.project
|
.project
|
||||||
.settings
|
.settings
|
||||||
|
*.cache
|
||||||
migrations
|
migrations
|
||||||
!tests/migrations
|
!tests/migrations
|
||||||
*.sublime-*
|
*.sublime-*
|
||||||
|
|
|
@ -5,11 +5,11 @@ GREEN='\033[0;32m'
|
||||||
NC='\033[0m' # No Color
|
NC='\033[0m' # No Color
|
||||||
|
|
||||||
PATH_TO_MONARC='/home/vagrant/monarc'
|
PATH_TO_MONARC='/home/vagrant/monarc'
|
||||||
PATH_TO_STATS_SERVICE='/home/vagrant/stats-service'
|
|
||||||
|
|
||||||
APPENV='local'
|
APPENV='local'
|
||||||
ENVIRONMENT='development'
|
ENVIRONMENT='development'
|
||||||
|
|
||||||
|
# MariaDB database
|
||||||
DBHOST='localhost'
|
DBHOST='localhost'
|
||||||
DBNAME_COMMON='monarc_common'
|
DBNAME_COMMON='monarc_common'
|
||||||
DBNAME_CLI='monarc_cli'
|
DBNAME_CLI='monarc_cli'
|
||||||
|
@ -17,8 +17,8 @@ DBUSER_ADMIN='root'
|
||||||
DBPASSWORD_ADMIN="root"
|
DBPASSWORD_ADMIN="root"
|
||||||
DBUSER_MONARC='sqlmonarcuser'
|
DBUSER_MONARC='sqlmonarcuser'
|
||||||
DBPASSWORD_MONARC="sqlmonarcuser"
|
DBPASSWORD_MONARC="sqlmonarcuser"
|
||||||
DBNAME_STATS='statsservice'
|
|
||||||
|
|
||||||
|
# PHP configuration
|
||||||
upload_max_filesize=200M
|
upload_max_filesize=200M
|
||||||
post_max_size=50M
|
post_max_size=50M
|
||||||
max_execution_time=100
|
max_execution_time=100
|
||||||
|
@ -33,8 +33,15 @@ PHP_INI=/etc/php/7.2/apache2/php.ini
|
||||||
XDEBUG_CFG=/etc/php/7.2/apache2/conf.d/20-xdebug.ini
|
XDEBUG_CFG=/etc/php/7.2/apache2/conf.d/20-xdebug.ini
|
||||||
MARIA_DB_CFG=/etc/mysql/mariadb.conf.d/50-server.cnf
|
MARIA_DB_CFG=/etc/mysql/mariadb.conf.d/50-server.cnf
|
||||||
|
|
||||||
|
# Stats service
|
||||||
|
STATS_PATH='/home/vagrant/stats-service'
|
||||||
STATS_HOST='0.0.0.0'
|
STATS_HOST='0.0.0.0'
|
||||||
STATS_PORT='5005'
|
STATS_PORT='5005'
|
||||||
|
STATS_DB_NAME='statsservice'
|
||||||
|
STATS_DB_USER='sqlmonarcuser'
|
||||||
|
STATS_DB_PASSWORD="sqlmonarcuser"
|
||||||
|
STATS_SECRET_KEY="$(openssl rand -hex 32)"
|
||||||
|
|
||||||
|
|
||||||
export DEBIAN_FRONTEND=noninteractive
|
export DEBIAN_FRONTEND=noninteractive
|
||||||
export LANGUAGE=en_US.UTF-8
|
export LANGUAGE=en_US.UTF-8
|
||||||
|
@ -297,8 +304,8 @@ echo -e "\n--- Installing the stats service… ---\n"
|
||||||
sudo apt-get -y install postgresql python3-pip python3-venv
|
sudo apt-get -y install postgresql python3-pip python3-venv
|
||||||
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 10
|
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 10
|
||||||
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 20
|
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 20
|
||||||
sudo -u postgres psql -c "CREATE USER $DBUSER_MONARC WITH PASSWORD '$DBPASSWORD_MONARC';"
|
sudo -u postgres psql -c "CREATE USER $STATS_DB_USER WITH PASSWORD '$STATS_DB_PASSWORD';"
|
||||||
sudo -u postgres psql -c "ALTER USER $DBUSER_MONARC WITH SUPERUSER;"
|
sudo -u postgres psql -c "ALTER USER $STATS_DB_USER WITH SUPERUSER;"
|
||||||
|
|
||||||
cd ~
|
cd ~
|
||||||
curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python
|
curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python
|
||||||
|
@ -308,11 +315,11 @@ echo 'export STATS_CONFIG=production.py' >> ~/.bashrc
|
||||||
source ~/.bashrc
|
source ~/.bashrc
|
||||||
source $HOME/.poetry/env
|
source $HOME/.poetry/env
|
||||||
|
|
||||||
git clone https://github.com/monarc-project/stats-service $PATH_TO_STATS_SERVICE
|
git clone https://github.com/monarc-project/stats-service $STATS_PATH
|
||||||
cd $PATH_TO_STATS_SERVICE
|
cd $STATS_PATH
|
||||||
poetry install --no-dev
|
poetry install --no-dev
|
||||||
|
|
||||||
bash -c "cat << EOF > $PATH_TO_STATS_SERVICE/instance/production.py
|
bash -c "cat << EOF > $STATS_PATH/instance/production.py
|
||||||
HOST = '$STATS_HOST'
|
HOST = '$STATS_HOST'
|
||||||
PORT = $STATS_PORT
|
PORT = $STATS_PORT
|
||||||
DEBUG = False
|
DEBUG = False
|
||||||
|
@ -325,17 +332,19 @@ ADMIN_URL = 'https://www.cases.lu'
|
||||||
REMOTE_STATS_SERVER = 'https://dashboard.monarc.lu'
|
REMOTE_STATS_SERVER = 'https://dashboard.monarc.lu'
|
||||||
|
|
||||||
DB_CONFIG_DICT = {
|
DB_CONFIG_DICT = {
|
||||||
'user': '$DBUSER_MONARC',
|
'user': '$STATS_DB_USER',
|
||||||
'password': '$DBPASSWORD_MONARC',
|
'password': '$STATS_DB_PASSWORD',
|
||||||
'host': 'localhost',
|
'host': 'localhost',
|
||||||
'port': 5432,
|
'port': 5432,
|
||||||
}
|
}
|
||||||
DATABASE_NAME = '$DBNAME_STATS'
|
DATABASE_NAME = '$STATS_DB_NAME'
|
||||||
SQLALCHEMY_DATABASE_URI = 'postgres://{user}:{password}@{host}:{port}/{name}'.format(
|
SQLALCHEMY_DATABASE_URI = 'postgres://{user}:{password}@{host}:{port}/{name}'.format(
|
||||||
name=DATABASE_NAME, **DB_CONFIG_DICT
|
name=DATABASE_NAME, **DB_CONFIG_DICT
|
||||||
)
|
)
|
||||||
SQLALCHEMY_TRACK_MODIFICATIONS = False
|
SQLALCHEMY_TRACK_MODIFICATIONS = False
|
||||||
|
|
||||||
|
SECRET_KEY = '$STATS_SECRET_KEY'
|
||||||
|
|
||||||
MOSP_URL = 'https://objects.monarc.lu'
|
MOSP_URL = 'https://objects.monarc.lu'
|
||||||
EOF"
|
EOF"
|
||||||
|
|
||||||
|
@ -344,11 +353,12 @@ export STATS_CONFIG=production.py
|
||||||
|
|
||||||
FLASK_APP=runserver.py poetry run flask db_create
|
FLASK_APP=runserver.py poetry run flask db_create
|
||||||
FLASK_APP=runserver.py poetry run flask db_init
|
FLASK_APP=runserver.py poetry run flask db_init
|
||||||
|
FLASK_APP=runserver.py poetry run flask client_create --name ADMIN --role admin
|
||||||
|
|
||||||
|
|
||||||
sudo bash -c "cat << EOF > /etc/systemd/system/statsservice.service
|
sudo bash -c "cat << EOF > /etc/systemd/system/statsservice.service
|
||||||
[Unit]
|
[Unit]
|
||||||
Description=Stats
|
Description=MONARC Stats service
|
||||||
After=network.target
|
After=network.target
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
|
@ -360,7 +370,7 @@ Environment=FLASK_ENV=production
|
||||||
Environment=STATS_CONFIG=production.py
|
Environment=STATS_CONFIG=production.py
|
||||||
Environment=FLASK_RUN_HOST=$STATS_HOST
|
Environment=FLASK_RUN_HOST=$STATS_HOST
|
||||||
Environment=FLASK_RUN_PORT=$STATS_PORT
|
Environment=FLASK_RUN_PORT=$STATS_PORT
|
||||||
WorkingDirectory=$PATH_TO_STATS_SERVICE
|
WorkingDirectory=$STATS_PATH
|
||||||
ExecStart=/home/vagrant/.poetry/bin/poetry run flask run
|
ExecStart=/home/vagrant/.poetry/bin/poetry run flask run
|
||||||
Restart=always
|
Restart=always
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue