Skip to content

Docker enhancements and bug fixes

Closes #33 (closed)

  • Rewrite docker-compose.yml and .env so that it uses modern features like YAML pointers to reduce duplication, and is easy to configure
  • Add CLI commands to Hot Potato for initialising database and adding users. The Docker Compose images no longer automatically do database initialisation, so the command flask database create or flask database create-dev needs to be run before interacting with Hot Potato
  • Added/changed scripts to pipenv for interacting with a Hot Potato development environment, which can be invoked with pipenv run cli {arg...}:
    • flask - calls Flask in the Docker Compose environment (creates a temporary container to run the command in)
    • black - code styling using black
    • flake8 - code linting using flake8, renamed from lint
    • isort - dependency ordering using isort
    • unit-test - unit testing in the Docker Compose environment, renamed from test
    • robot-test - robot testing in the Docker Compose environment
  • Fix the Dramatiq worker initialisation to, upon failure, keep retrying starting until the message queue is available
  • Add a HiPE parameter for RabbitMQ, useful for production instances
  • Rework the initialisation code so that Hot Potato properly logs to a file, and that the logs are included in GitLab CI artifacts
  • Rework notification sending code so that it reports errors a lot better (especially when in debug/testing mode)
  • Fix various bugs around sending notifications
Edited by Callum Dickinson

Merge request reports