Version 3.0.0 - Public and Stable with optional Fidelius
Added
Fidelius mode - Alviss now reads the ALVISS_FIDELIUS_MODE environment
variable to determine one of these Fidelius modes available:
ON_DEMAND (default): Fidelius is only ever loaded (i.e. an import is
attempted) if fidelius expressions (__FID__) are encountered when reading
a config
ENABLED: Alviss tries to import fidelius on startup and raises an
ImportError if it fails
DISABLED: All fidelius expressions (__FID__) are simply ignored and
left unparsed
SUBSTITUTE_ENV: All fidelius expressions (__FID__) are treated as if
they are environment variable expressions (__ENV__)
MOCK: Fidelius will be initialised using its mock implementation,
which uses a singleton in-memory datastore, making this useful for testing
Error reporting on the keys that have Fidelius tags in them in case of a
Fidelius related error (like access problems or if fidelius is not installed)
Fidelius can now grab config values from the config files Alviss is
reading via the __fidelius__ special key (e.g. ALVISS_FIDELIUS_MODE
and any kwargs that AwsParamStoreRepo takes.
Changed
Migrated the project from our internal repos to Github and Pypi
Alviss now ships by default without fidelius
support and runs in ALVISS_FIDELIUS_MODE=ON_DEMAND and this only tries
to import fidelius if a __FID__ expression is encountered
Installing Alviss with built in fidelius support can still be done via
pip install alviss[fidelius] plus all the boto3 stuff and such
Bumped the fidelius version to 1.0.0 so now all the new environment
variables available in that version can be used to configure fidelius in
Alviss, e.g. by setting FIDELIUS_AWS_ENDPOINT_URL to point to a
LocalStack container for testing
and/or development.
Fixed
An issue where the default values of environment variables could not
contain any whitespaces (like a simple space)
Version 3.0.0 - Public and Stable with optional Fidelius
Added
ALVISS_FIDELIUS_MODE
environment variable to determine one of these Fidelius modes available:ON_DEMAND
(default): Fidelius is only ever loaded (i.e. an import is attempted) if fidelius expressions (__FID__
) are encountered when reading a configENABLED
: Alviss tries to import fidelius on startup and raises anImportError
if it failsDISABLED
: All fidelius expressions (__FID__
) are simply ignored and left unparsedSUBSTITUTE_ENV
: All fidelius expressions (__FID__
) are treated as if they are environment variable expressions (__ENV__
)MOCK
: Fidelius will be initialised using its mock implementation, which uses a singleton in-memory datastore, making this useful for testing__fidelius__
special key (e.g.ALVISS_FIDELIUS_MODE
and anykwargs
thatAwsParamStoreRepo
takes.Changed
ALVISS_FIDELIUS_MODE=ON_DEMAND
and this only tries to import fidelius if a__FID__
expression is encounteredpip install alviss[fidelius]
plus all theboto3
stuff and suchfidelius
version to 1.0.0 so now all the new environment variables available in that version can be used to configure fidelius in Alviss, e.g. by settingFIDELIUS_AWS_ENDPOINT_URL
to point to a LocalStack container for testing and/or development.Fixed