Elegant Env Vars for Jenkins Python
In my case, I use Jenkins to drive some Python scripts.
We can set configuration in Jenkins via System Properties, Node Configuration or Build Parameters.
We can get the configurations through environment variables, and also pass stage outputs to other stages via environment variables.
Visualizing and retaining environment variables is crucial, So I want to manage environment variables in an elegant way.
I implemented a class EnvSettings extend from pydantic.BaseSettings to manage environment variables: