Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Configula

Creates a single configuration by merging settings defined in: 1. in environment variables 2. in toml file

Values provided in environment variables have priority over values from toml configuration file.

By default all environment variables are prefixed with 'PAPERMERGE'. By default __ (two underscores) is used as delimiter in environment variables names. For example, given following toml file:

[main]
    secret_key = 1234

[ocr]
    default_language = 'deu'

corespondent environment variables names are PAPERMERGE__MAIN__SECRET_KEY and PAPERMERGE__OCR__DEFAULT_LANGUAGE - notice two underscores separate section name from prefix and variable name. Environment variable name format is (all in uppercase):

 <prefix><delimiter><section_name><delimiter><variable_name>

Although in toml files you can place variable names outside sections, in Papermerge all variables must be placed in sections.

By default Configula looks up for following toml file:

- /etc/papermerge/papermerge.toml
- /etc/papermerge.toml
- papermerge.toml

If you have custom location (or custom file name), use PAPERMERGE__CONFIG (notice double underscores) environment variable to point to it:

PAPERMERGE__CONFIG=/app/config/pm.toml

Installation

$ poetry add configula

Usage

from configula import Configula

config = Configula()

default_language = config.get('ocr', 'default_language')
secret_key = config.get('main', 'secret_key')

Where papermerge.toml has the following content:

[main]
secret_key = 5432

[ocr]
default_language = 'deu'

Default language can be overwritten by environment variable PAPERMERGE__OCR__DEFAULT_LANGUAGE and secret_key can overwritten by environment variable PAPERMERGE__MAIN__SECRET_KEY

If you want to read variable from a section use configula.get(section, var_name, default_value) method.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

configula-0.5.0b1.tar.gz (8.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

configula-0.5.0b1-py3-none-any.whl (13.3 kB view details)

Uploaded Python 3

File details

Details for the file configula-0.5.0b1.tar.gz.

File metadata

  • Download URL: configula-0.5.0b1.tar.gz
  • Upload date:
  • Size: 8.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.10.4 Linux/5.15.0-39-generic

File hashes

Hashes for configula-0.5.0b1.tar.gz
Algorithm Hash digest
SHA256 4ad78874a986a9a61177fd9b025dfed55a4338ec965e88e943e4d1701af57a80
MD5 47c78639daf6b7535b88b3513ec56485
BLAKE2b-256 9ff770f7bd49623ac93cff6d2957d3ee6236f198a71953e247cd679036501460

See more details on using hashes here.

File details

Details for the file configula-0.5.0b1-py3-none-any.whl.

File metadata

  • Download URL: configula-0.5.0b1-py3-none-any.whl
  • Upload date:
  • Size: 13.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.10.4 Linux/5.15.0-39-generic

File hashes

Hashes for configula-0.5.0b1-py3-none-any.whl
Algorithm Hash digest
SHA256 4ff88ee139cd24088737e3f1889e3f0ebc034547221b319d982813c6a9e5069c
MD5 330b5b1f11d292472a0e8e726e0f43e5
BLAKE2b-256 3adfa05f28598bdf0bc4b4ea263414708e3034685b02beacb7f7da346be78728

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page