Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature proposal: Allow configuration from config file instead of CRD's #266

Open
grzesuav opened this issue May 25, 2021 · 3 comments
Open
Assignees
Labels
enhancement New feature or request

Comments

@grzesuav
Copy link
Contributor

grzesuav commented May 25, 2021

Proposal

Currently metacontroller is configured by recognizing CR's of type Composite/DecoratorController. This is about adding alternative way to provide config file, which content will be equivalent to those CR's, meaning it can be statically configured.

What will change

There will be:

  • additional flag to point to config file
  • config file describing metacontroller desired behavior

which will cause that:

  • metacontroller will use the file as it would be CRD
  • (probably) metacontoller will stop dynamically searching for additional configuration in cluster (but it depends on implementation and what will be easiet way to implement this)

Challenges

  • provide some automatic way to read config file, probably yaml list and creation of objects in metacontroller to make this as smooth as possible for metacontroller to handle
  • how it will impact auto-discovery, considering controller runtime

Options

@grzesuav grzesuav changed the title Feature proposal: Allow configuration from config file instead from CRD's Feature proposal: Allow configuration from config file instead of CRD's May 25, 2021
@grzesuav grzesuav added the enhancement New feature or request label May 25, 2021
@AmitKumarDas
Copy link
Contributor

similar work has been done https://github.com/AmitKumarDas/metac/tree/master/config
All the references to above config should help to understand the challenges, usefulness, etc.

@adrianmace
Copy link

Based on the 12factor principles I'd recommend these configs be available as environment variables instead of / in addition to the file.

e.g.: COMPOSITE_CONTROLLERS=my-parent,my-child-1,my-child-2.

@grzesuav
Copy link
Contributor Author

grzesuav commented Aug 6, 2022

Based on the 12factor principles I'd recommend these configs be available as environment variables instead of / in addition to the file.

e.g.: COMPOSITE_CONTROLLERS=my-parent,my-child-1,my-child-2.

hmm I need to think if exposing complex config via env var is viable option

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: 🆕 Todo
Development

No branches or pull requests

3 participants