diff --git a/db/lemur.sql b/db/lemur.sql new file mode 100644 index 00000000..d4971215 --- /dev/null +++ b/db/lemur.sql @@ -0,0 +1 @@ +CREATE EXTENSION pg_trgm; diff --git a/dicos/50_lemur.xml b/dicos/50_lemur.xml index 86b41e61..23495543 100644 --- a/dicos/50_lemur.xml +++ b/dicos/50_lemur.xml @@ -17,11 +17,13 @@ lemur + + diff --git a/gulp/build.js b/gulp/build.js index eed59503..5aca8094 100644 --- a/gulp/build.js +++ b/gulp/build.js @@ -237,7 +237,7 @@ gulp.task('addUrlContextPath',['addUrlContextPath:revreplace'], function(){ .forEach(function(file){ return gulp.src(file) .pipe(gulpif(urlContextPathExists, replace('api/', argv.urlContextPath + '/api/'))) - .pipe(gulpif(urlContextPathExists, replace('angular/', argv.urlContextPath + '/angular/'))) + .pipe(gulpif(urlContextPathExists, replace('/angular/', '/' + argv.urlContextPath + '/angular/'))) .pipe(gulp.dest(function(file){ return file.base; })) @@ -256,10 +256,9 @@ gulp.task('addUrlContextPath:revreplace', ['addUrlContextPath:revision'], functi var manifest = gulp.src("lemur/static/dist/rev-manifest.json"); var urlContextPathExists = argv.urlContextPath ? true : false; return gulp.src( "lemur/static/dist/index.html") - .pipe(gulpif(urlContextPathExists, revReplace({prefix: argv.urlContextPath + '/', manifest: manifest}, revReplace({manifest: manifest})))) .pipe(gulp.dest('lemur/static/dist')); }) gulp.task('build', ['build:ngviews', 'build:inject', 'build:images', 'build:fonts', 'build:html', 'build:extras']); -gulp.task('package', ['addUrlContextPath', 'package:strip']); \ No newline at end of file +gulp.task('package', ['addUrlContextPath', 'package:strip']); diff --git a/lemur.service b/lemur.service new file mode 100644 index 00000000..b5c1dbb3 --- /dev/null +++ b/lemur.service @@ -0,0 +1,12 @@ +[Unit] +Description=Lemur +After=postgresql.service + +[Service] +ExecStart=/usr/bin/lemur start -b 127.0.0.1:8002 -c /etc/lemur/lemur.conf.py +User=lemur +Group=lemur + +[Install] +WantedBy=multi-user.target + diff --git a/posttemplate/00-lemur b/posttemplate/03-lemur similarity index 59% rename from posttemplate/00-lemur rename to posttemplate/03-lemur index cef1ebd5..52418333 100755 --- a/posttemplate/00-lemur +++ b/posttemplate/03-lemur @@ -5,4 +5,13 @@ set -e # install unrelease python modules pip3 install alembic-autogenerate-enums==0.0.2 asyncpool==1.0 certsrv==2.1.1 cryptography==3.1.1 dnspython3==1.15.0 dyn==1.8.1 flask-replicated==1.4 javaobj-py3==0.4.0.1 jsonlines==1.2.0 logmatic-python==0.1.7 marshmallow==2.20.4 pycryptodomex==3.9.7 pyjks==20.0.0 raven[flask]==6.10.0 twofish==0.3.0 +cd /usr/share/lemur/ +systemctl start postgresql.service +lemur --config=/etc/lemur/lemur.conf.py init --password $(CreoleGet lemur_admin_password) +systemctl stop postgresql.service +rm -f *.log + +mkdir -p /var/log/lemur/ +chown lemur: /var/log/lemur/ + exit 0 diff --git a/tmpl/lemur.conf.py b/tmpl/lemur.conf.py index fee1aa5c..740ecc59 100644 --- a/tmpl/lemur.conf.py +++ b/tmpl/lemur.conf.py @@ -44,14 +44,14 @@ METRIC_PROVIDERS = [] # Logging LOG_LEVEL = "DEBUG" -LOG_FILE = "lemur.log" +LOG_FILE = "/var/log/lemur/lemur.log" # Database # modify this if you are not using a local database SQLALCHEMY_DATABASE_PASSWORD = 'replaceme' -SQLALCHEMY_DATABASE_URI = f'postgresql://%%lemur_db_user:{SQLALCHEMY_DATABASE_PASSWORD}@localhost:5432/%%lemur_db_name' +SQLALCHEMY_DATABASE_URI = f'postgresql:///%%lemur_db_name?host=/var/run/postgresql&user=%%lemur_db_user&password={SQLALCHEMY_DATABASE_PASSWORD}' # AWS diff --git a/tmpl/lemur.yml b/tmpl/lemur.yml index fa09b2e3..5c31460a 100644 --- a/tmpl/lemur.yml +++ b/tmpl/lemur.yml @@ -12,5 +12,7 @@ dbport: 5432 dbtype: postgres dbname: %%dbname template: 'template0' +sqlscripts: + - /usr/share/eole/db/lemur/gen/lemur.sql pwd_files: - - {'file': '/etc/lemur/lemur.conf.py', 'pattern': 'SQLALCHEMY_DATABASE_PASSWORD = "'} + - {'file': '/etc/lemur/lemur.conf.py', 'pattern': "SQLALCHEMY_DATABASE_PASSWORD = '"}