Envers ist ein Befehlszeilen-Tool (CLI), mit dem Umgebungsvariablen für verschiedene Bereitstellungsstadien wie Inszenierung, Entwicklung und Produktion verwaltet und Versionen verwaltet wurden. Es bietet eine sichere und organisierte Möglichkeit, umgebungsspezifische Konfigurationen zu handhaben.
TBD
Im Folgenden finden Sie die ersten Unterbefehle für envers :
envers init : Initialisieren Sie die envers -Umgebung.envers deploy <spec version number> : Bereitstellen einer bestimmten Version in der Spezifikationsdatei.envers draft <spec version number> : Erstellen Sie in der Spezifikationsdatei einen neuen Versionsentwurf. Einige Varianten dieses Befehls:envers draft <spec version number> --from <previous spec version number>envers draft <spec version number> --from-env .envenvers profile-set --profile <profile_name> --spec <version_number> : Neue Inhalte hinzufügen.envers profile load --profile prod --spec <spec version> : Laden Sie ein bestimmtes Umgebungsprofil in Dateien envers init erstellt die Spezifikationsdatei unter .envers/.specs.yaml .
envers deploy erstellt die Datei .envers/.data.lock . Diese Datei wird vom Befehl envers automatisch generiert und verschlüsselt.
Die erste Version von ./.envers/.specs.yaml würde so aussehen:
version : 0.1 # the envers spec version
releases :Wie Sie sehen können, hat es nicht zu viele Informationen. Wenn Sie eine neue Version entwerfen möchten, können Sie den folgenden Befehl ausführen:
$ envers draft 1.0 Nach diesem Befehl sollten die Datei .envers/specs.yaml wie folgt aussehen:
version : 0.1 # the spec version
releases :
# placeholder: the version for the environment variables.
# if the status is draft, feel free to change the version number
1.0 :
# status attribute is handled by command line, don't change it manually
status : draft # options are: draft, cancelled, deployed
# placeholder: update help with the real help text
help :
# placeholder: a list of available profiles (groups) for this version.
# at least one profile is required for the deploying
profiles :
- base
# define the spec for that version, this spec should be used for all
# profiles (groups) inside this version
spec :
# define the env file or any other kind of environment file to be used,
# for now it just has support for .env files
files :
# placeholder: change `.env` to the correct dotenv file relative path
.env :
type : dotenv # default
# `vars` is a dictionary for the environment variables
# this defines the variables and some metadata, but not the real
# value, because it is just the definition of the spec.
vars :
# placeholder: ENV is just a variable name, replace it by your real
# environment variable
ENV :
type : string # options are: string, int, bool, path
default : dev # in the case that the variable is not definedJetzt können Sie Ihre erste Version von Umgebungsvariablen bereitstellen:
$ envers deploy 1.0 Wenn eine Version bereitgestellt wird, werden automatisch alle neuen Spezifikationen in die .envers/data.lock erstellt.
Alle Variablen für die einzelnen Profil- und Spezifikationsversionen werden in .envers/data.lock gespeichert, und diese Datei sollte aus keinem Grund geändert werden.
Schließlich können wir die Umgebungsvariablen für das base erstellen:
$ envers profile set --profile base --spec 1.0 envers werden Sie über den Auftrag des Wertes für jede in der Spezifikation für Version 1.0 definierte Variable fragen.
https://osl-incubator.github.io/envers
BSD-Klausel 3