Configuration ============= **Braumeister** pretty much only uses environment variables for configuration possibilities. You can use the `export` command to set them or even use `.env` file in `src/bmapi` directory. Database -------- We must use a PostgreSQL database to store data for the application. You can specify the connection string using *BRAUMEISTER_DB* .. code-block:: console $ export BRAUMEISTER_DB=postgresql://bm:bm@localhost:5432/bm Events Queue ------------ We use a queue system to be able to process jobs (ie.: Import Recipe, Batch Import, Import Brew Sessions... etc) in the background. Right now we support to Queue Back-end. * PostgreSQL Use the existing database we use for data and store events in a table. * RabbitMQ Need an other docker container to use RabbitMQ as backend. You can specify which queue system to use with the *BRAUMEISTER_QUEUE_TYPE*. Accepted values are `postgresql` or `rabbitmq`. .. code-block:: console $ export BRAUMEISTER_QUEUE_TYPE=postgresql .. code-block:: console $ export BRAUMEISTER_QUEUE_TYPE=rabbitmq RabbitMQ Back-end ----------------- If you use **RabbitMQ** as queue back-end. You must specify *BRAUMEISTER_AMPQ* variable. .. code-block:: console $ export BRAUMEISTER_AMPQ=amqp://bm:bm@localhost:5672/ Environment ----------- Used to know if the application is running in which environment. Possible values: * development * production * desktop-shell .. code-block:: console $ export BRAUMEISTER_ENVIRONMENT=development Source Root ----------- To access some files from project. This is the path of bmapi. .. code-block:: console $ export BRAUMEISTER_SOURCE_ROOT=src/bmapi/ User Email verification --------------------- To enable user verification, you must set 5 environment variables. * BRAUMEISTER_EMAIL_ENABLED: true or false. This enable the feature. * BRAUMEISTER_SMTP_SERVER_ADDR: Smtp Server address. * BRAUMEISTER_SMTP_SERVER_PORT: Smtp Server port. * BRAUMEISTER_SERVER_EMAIL: Email used as sender. Also the username for the smtp server. * BRAUMEISTER_SERVER_EMAIL_PASSWORD: Password for the sender email. Application URI and CORS ------------------------- Addresses to some part of the applications. * BRAUMEISTER_UI_URI: Address to bmui instance. * BRAUMEISTER_API_URI: Address to bmapi flask server. To enable CORS, set this environment variable: .. code-block:: console $ export BRAUMEISTER_CORS_ORIGIN=http://localhost:8080 Image(s) Upload --------------- Path where images are saved need to be defined. .. code-block:: console $ export BRAUMEISTER_IMAGE_UPLOAD_PATH=/bm/images/ File(s) Storage --------------- Path where files are saved need to be defined. .. code-block:: console $ export BRAUMEISTER_FILES_TO_DOWNLOAD_PATH=/bm/files/ Beta Mode --------- When Beta Mode is enabled, a key is needed to create a new account. .. code-block:: console # beta mode on $ export BRAUMEISTER_BETA_MODE=true # beta mode off $ export BRAUMEISTER_BETA_MODE=false Admin Panel --------- When Admin Panel is enabled, your can access the admin panel at http://api_uri/admin/. You can only use admin account to access it. .. code-block:: console # admin panel on $ export BRAUMEISTER_ADMIN_PANEL_ENABLED=true # admin panel off $ export BRAUMEISTER_ADMIN_PANEL_ENABLED=false