Go to file
2022-01-26 19:09:02 -06:00
app Fix ldd loader imports 2022-01-26 19:09:02 -06:00
migrations Fix reports 2022-01-16 20:24:47 -06:00
.dockerignore Move Code into repo 2022-01-16 12:22:00 -06:00
.editorconfig Move Code into repo 2022-01-16 12:22:00 -06:00
.gitattributes for vendored code to not be applicable to linguist 2022-01-17 22:45:42 -06:00
.gitignore Move Code into repo 2022-01-16 12:22:00 -06:00
characterxml->json.example.json Move Code into repo 2022-01-16 12:22:00 -06:00
Dockerfile Move Code into repo 2022-01-16 12:22:00 -06:00
entrypoint.sh Move Code into repo 2022-01-16 12:22:00 -06:00
Jenkinsfile with quotes? 2022-01-18 23:28:28 -06:00
LICENSE Initial commit 2022-01-16 19:03:11 +01:00
README.md update Readme about analytics 2022-01-17 22:30:39 -06:00
requirements.txt Move Code into repo 2022-01-16 12:22:00 -06:00
wsgi.py Move Code into repo 2022-01-16 12:22:00 -06:00

Nexus Dashboard

This is a WIP: For Advanced Users

Sublime's custom image

Features

  • Analytics
    • Provide reporting to Developers to help better solve issues
    • Disabled by default. Set ALLOW_ANALYTICS to true to enable

Deployment

Docker


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:rw \
   -v /path/to/cachedir:/app/cache:rw \ # optional for persistent cache for conversions
   aronwk/nexus-dashboard:latest

  • /app/luclient must be mapped to the location of an unpacked client
    • you only need res/ and locale/ from the client, but dropping the whole cleint in there won't hurt
  • Use fdb_to_sqlite.py in lcdr's utilities on res/cdclient.fdb in the unpacked client to convert the client database to cdclient.sqlite
    • Put teh resulting cdclient.sqlite in the res folder: res/cdclient.sqlite
  • unzip res/brickdb.zip in-place
    • Docker will do this for you
    • you should have new folders and files in the following places:
      • res/Assemblies/../.. with a bunch of sub folders
      • res/Primitives/../.. with a bunch of sub folders
      • res/info.xml
      • res/Materials.xml

Environmental Variables

  • Required:
    • APP_SECRET_KEY (Must be provided)
    • APP_DATABASE_URI (Must be provided)
  • Optional
    • USER_ENABLE_REGISTER (Default: True)
    • USER_ENABLE_EMAIL (Default: True, Needs Mail to be configured)
    • USER_ENABLE_CONFIRM_EMAIL (Default: True)
    • USER_ENABLE_INVITE_USER (Default: False)
    • USER_REQUIRE_INVITATION (Default: False)
    • ALLOW_ANALYTICS (Default: False)
    • REQUIRE_PLAY_KEY (Default: True)
    • MAIL_SERVER (Default: smtp.gmail.com)
    • MAIL_PORT (Default: 587)
    • MAIL_USE_SSL (Default: False)
    • MAIL_USE_TLS (Default: True)
    • MAIL_USERNAME (Default: None)
    • MAIL_PASSWORD (Default: None)
    • USER_EMAIL_SENDER_NAME (Default: None)
    • USER_EMAIL_SENDER_EMAIL (Default: None)

Manual

Don't, use Docker /s

TODO: Make manual deployment easier to configure

Development

Please use Editor Config

  • flask run to run local dev server