mirror of
https://github.com/Py-KMS-Organization/py-kms.git
synced 2025-05-09 14:21:56 -04:00
Added version metadata into container
This commit is contained in:
parent
d795f5265b
commit
818520730c
4 changed files with 23 additions and 5 deletions
|
@ -1,6 +1,9 @@
|
|||
# Switch to the target image
|
||||
FROM alpine:3.15
|
||||
|
||||
ARG BUILD_COMMIT=unknown
|
||||
ARG BUILD_BRANCH=unknown
|
||||
|
||||
ENV IP ::
|
||||
ENV PORT 1688
|
||||
ENV EPID ""
|
||||
|
@ -35,7 +38,10 @@ RUN apk add --no-cache --update \
|
|||
COPY py-kms /home/py-kms/
|
||||
COPY docker/entrypoint.py /usr/bin/entrypoint.py
|
||||
COPY docker/start.py /usr/bin/start.py
|
||||
|
||||
# Web-interface specifics
|
||||
COPY LICENSE /LICENSE
|
||||
RUN echo "$BUILD_COMMIT" > /VERSION && echo "$BUILD_BRANCH" >> /VERSION
|
||||
|
||||
RUN chmod 755 /usr/bin/entrypoint.py
|
||||
|
||||
|
|
|
@ -60,6 +60,7 @@ def start_kms():
|
|||
pykms_webui_env['PYKMS_SQLITE_DB_PATH'] = db_path
|
||||
pykms_webui_env['PORT'] = '8080'
|
||||
pykms_webui_env['PYKMS_LICENSE_PATH'] = '/LICENSE'
|
||||
pykms_webui_env['PYKMS_VERSION_PATH'] = '/VERSION'
|
||||
pykms_webui_process = subprocess.Popen(['gunicorn', '--log-level', os.environ.get('LOGLEVEL'), 'pykms_WebUI:app'], env=pykms_webui_env)
|
||||
except Exception as e:
|
||||
loggersrv.error("Failed to start webui: %s" % e)
|
||||
|
|
|
@ -3,17 +3,16 @@ from flask import Flask, render_template
|
|||
from pykms_Sql import sql_get_all
|
||||
from pykms_DB2Dict import kmsDB2Dict
|
||||
|
||||
serve_count = 0
|
||||
|
||||
def _random_uuid():
|
||||
return str(uuid.uuid4()).replace('-', '_')
|
||||
|
||||
_serve_count = 0
|
||||
def _increase_serve_count():
|
||||
global serve_count
|
||||
serve_count += 1
|
||||
global _serve_count
|
||||
_serve_count += 1
|
||||
|
||||
def _get_serve_count():
|
||||
return serve_count
|
||||
return _serve_count
|
||||
|
||||
_kms_items = None
|
||||
_kms_items_ignored = None
|
||||
|
@ -48,6 +47,15 @@ app = Flask('pykms_webui')
|
|||
app.jinja_env.globals['start_time'] = datetime.datetime.now()
|
||||
app.jinja_env.globals['get_serve_count'] = _get_serve_count
|
||||
app.jinja_env.globals['random_uuid'] = _random_uuid
|
||||
app.jinja_env.globals['version_info'] = None
|
||||
|
||||
_version_info_path = os.environ.get('PYKMS_VERSION_PATH', '../VERSION')
|
||||
if os.path.exists(_version_info_path):
|
||||
with open(_version_info_path, 'r') as f:
|
||||
app.jinja_env.globals['version_info'] = {
|
||||
'hash': f.readline(),
|
||||
'branch': f.readline()
|
||||
}
|
||||
|
||||
@app.route('/')
|
||||
def root():
|
||||
|
|
|
@ -40,6 +40,9 @@
|
|||
<p>
|
||||
<strong>py-kms</strong> is online since <span class="convert_timestamp">{{ start_time }}</span>.
|
||||
This instance was accessed {{ get_serve_count() }} times. View this softwares license <a href="/license">here</a>.
|
||||
{% if version_info %}
|
||||
<br>This instance is running version "{{ version_info['hash'] }}" from branch "{{ version_info['branch'] }}" of py-kms.
|
||||
{% endif %}
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue