Skip to content

Version 3.0.0 - Fidelius Seperation & Tests

Compare
Choose a tag to compare
@CCP-Zeulix CCP-Zeulix released this 30 Apr 09:56
· 7 commits to main since this release

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 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)