9 Commits

Author SHA1 Message Date
aronwk-aaron
a7a68d2fe1 fix nav highlight and tooltip rendering 2023-06-15 23:02:47 -05:00
aronwk-aaron
b17928b050 fix fk stuff being outside of the main migration check 2023-03-04 00:09:35 -06:00
aronwk-aaron
ee65f67fe3 actually fix mail port 2023-02-14 16:13:27 -06:00
aronwk-aaron
5d1b79334a force mail_port to be int
resolves #62
2023-02-14 13:39:44 -06:00
aronwk-aaron
e726f59114 log mount 2023-01-05 15:21:11 -06:00
aronwk-aaron
8826a34ebc fix docker command more 2023-01-05 15:13:43 -06:00
aronwk-aaron
a3d492df91 ro is readonly not r 2023-01-05 15:12:46 -06:00
aronwk-aaron
4a58e963a5 revery wsgi file for now, need to replace gunicorn
for a cross-platform solution
2023-01-02 13:46:44 -06:00
aronwk-aaron
8012780eba limit scope, update container in readme 2022-12-31 19:39:37 -06:00
6 changed files with 26 additions and 20 deletions

View File

@@ -3,7 +3,7 @@ name: ci
on:
push:
branches:
- "**"
- "main"
tags:
- "v*.*.*"
pull_request:

View File

@@ -83,11 +83,12 @@ docker run -d \
-e APP_SECRET_KEY='<secret_key>' \
-e APP_DATABASE_URI='mysql+pymysql://<username>:<password>@<host>:<port>/<database>' \
# you can include other optional Environment Variables from below like this
-e REQUIRE_PLAY_KEY=True
-p 8000:8000/tcp
-v /path/to/unpacked/client:/app/luclient:r \
-e REQUIRE_PLAY_KEY=True \
-p 8000:8000/tcp \
-v /path/to/logs:/logs:rw /
-v /path/to/unpacked/client:/app/luclient:ro \
-v /path/to/cachedir:/app/cache:rw \
aronwk/nexus-dashboard:latest
ghcr.io/darkflameuniverse/nexusdashboard:latest
```
* `/app/luclient` must be mapped to the location of an unpacked client

View File

@@ -251,9 +251,11 @@ def register_settings(app):
'MAIL_SERVER',
app.config['MAIL_SERVER']
)
app.config['MAIL_PORT'] = os.getenv(
'MAIL_USE_SSL',
app.config['MAIL_PORT'] = int(
os.getenv(
'MAIL_PORT',
app.config['MAIL_PORT']
)
)
app.config['MAIL_USE_SSL'] = os.getenv(
'MAIL_USE_SSL',

View File

@@ -84,6 +84,17 @@
<script type="text/javascript" src="{{ url_for('static', filename='bootstrap-4.2.1/js/bootstrap.bundle.min.js') }}"></script>
<script type="text/javascript" src="{{ url_for('static', filename='datatables/datatables.min.js') }}"></script>
<script type="sytylesheet" src="{{ url_for('static', filename='datatables/datatables.min.css') }}"></script>
<script>
// set the active nav-link item
$(function () {
let target_nav = '#{{request.endpoint}}'.replace('\.', '-');
$(target_nav).addClass('active');
});
// make tooltips with data work
$(function () {
$('[data-toggle="tooltip"]').tooltip()
})
</script>
{% endblock %}
</body>

View File

@@ -77,11 +77,11 @@ def upgrade():
sa.Column('created_at', mysql.TIMESTAMP(), server_default=sa.text('now()'), nullable=False),
sa.Column('play_key_id', mysql.INTEGER(), nullable=True),
sa.Column('mute_expire', mysql.BIGINT(unsigned=True), server_default='0', nullable=False),
sa.ForeignKeyConstraint(['play_key_id'], ['play_keys.id'], ondelete='CASCADE'),
sa.PrimaryKeyConstraint('id'),
sa.UniqueConstraint('name')
)
op.create_foreign_key(None, 'accounts', 'play_keys', ['play_key_id'], ['id'], ondelete='CASCADE')
op.add_column('accounts', sa.Column('active', sa.BOOLEAN(), server_default='1', nullable=False))
op.add_column('accounts', sa.Column('email_confirmed_at', sa.DateTime(), nullable=True))
op.add_column('accounts', sa.Column('email', sa.Unicode(length=255), server_default='', nullable=True))

16
wsgi.py
View File

@@ -1,23 +1,19 @@
from sys import platform
from app import create_app
app = create_app()
@app.shell_context_processor
def make_shell_context():
"""Extend the Flask shell context."""
return {'app': app}
running_directly = __name__ == "wsgi" or __name__ == "__main__"
running_under_gunicorn = not running_directly and 'gunicorn' in __name__ and 'linux' in platform
# Configure development running
if running_directly:
if __name__ == '__main__':
with app.app_context():
app.run(host='0.0.0.0')
# Configure production running
if running_under_gunicorn:
else:
import logging
from logging.handlers import RotatingFileHandler
gunicorn_logger = logging.getLogger('gunicorn.error')
@@ -27,7 +23,3 @@ if running_under_gunicorn:
file_handler.setFormatter(formatter)
app.logger.addHandler(file_handler)
app.logger.setLevel(gunicorn_logger.level)
# Error out if nothing has been setup
if not running_directly and not running_under_gunicorn:
raise RuntimeError('Unsupported WSGI server')