Version 3.0.0 - Fidelius Seperation & Tests
Version 3.0.0 - Fidelius Separation & Tests
Note: This is the first Github release and it was accidentally left in "draft", thus it's incorrectly ordered, shoved in between 3.2.0 and 3.2.1.
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 configENABLED
: Alviss tries to import fidelius on startup and raises an
ImportError
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
- 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 anykwargs
thatAwsParamStoreRepo
takes.
Changed
- Migrated the project from our internal repos to Github and Pypi
- Alviss now ships by default without fidelius
support and runs inALVISS_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 theboto3
stuff and such
- Installing Alviss with built in fidelius support can still be done via
- 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 settingFIDELIUS_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)