Add option to add metadata into permifrost.yml
Describe the feature
Currently, if I add anything into my permifrost.yml
which Permifrost does not expect, it throws an error.
I'd like an option to add stuff which is not relevant to Permifrost, but to other processes which use the permifrost.yml
.
For example, I may have a process which reads the permifrost.yml
to list all users. It creates users which do not yet exist. I want to add a default_role
when creating the user. I want to specify the default_role
within the permifrost.yml
. Something like this would work:
# ...
users:
- my_user:
can_login: yes
default_role: my_user_role # option 1 - just add whatever wherever
meta:
default_role: my_user_role # option 2 - have a specific `meta` dictionary which contains all non-permifrost specifications
member_of:
- loader
# ...
I would probably prefer option 2 to keep the otherwise useful behavior of failing runs if the permifrost.yml
is misspecified, e.g. due to typos.
Describe alternatives you've considered
I'm using hard-coded defaults in my processes, currently.
I've also considered using other tools alltogether (particularly SnowDDL
and Terraform
), but they fail my requirements for other reasons.
Who will this benefit?
Anyone who wants to use Permifrost and build on top of its functionalities to custom-tailor a solution for their own needs.
Are you interested in contributing this feature?
Not sure where to start. If you could give me a hint, would be interested in giving it a shot.