Skip to content

Conversation

@nomalord
Copy link
Contributor

Hi,
At my workplace, we use regex matches in tpls to match for values in the root of the values.yaml. I saw the helm-schema doesn't support such a usecase, but since json-schema supports it i decided to implement it myself.

I added a new field to the schema, keyAsPatternProperty that allows matching all keys on the same level to a certain regex pattern (that is provided in the schema)

I struggled a bit in figuring out whether it's better for the field to be boolean (and take the yaml-key as the pattern to match on) or string, but I decided it would probably foot-gun someone to have a mangled key instead of some arbitrary, very unlikely to match key.

Here's and example usage

boolean:

# @schema
# keyAsPatternProperty: true
# @schema
(rabbit|kafka|sqs).*deployment:

string:

# @schema
# keyAsPatternProperty: (rabbit|kafka|sqs).*deployment
# @schema
_:

Thanks in advance 😊

P.S: I see that the README's table changed, but it's only formatting (the only real change is the addition of the keyAsPatternProperty)

@nomalord
Copy link
Contributor Author

I marked this as draft because I didn't add tests yet

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant