Skip to content
This repository was archived by the owner on Oct 8, 2025. It is now read-only.
This repository was archived by the owner on Oct 8, 2025. It is now read-only.

feat: simplify configuration options by forcing configuration through config w/o fallbacks in code #78

@qdzlug

Description

@qdzlug

Is your feature request related to a problem? Please describe.
Right now, we allow users to specify override values in the configuration for elements such as chart versions, locations, etc. Some of these will be fairly static (chart location / name), and some of them will be more volatile (chart version). This requires that we maintain the correct values in two places - in the configuration template, and inside the pulumi python for each given stack.

Describe the solution you'd like
I think that we need to take a two step approach here:

  1. The configuration file becomes the source of the truth.
  2. Values will be removed from the pulumi python - that is, we should not have a fallback value in the pulumi code because that is another place to maintain it.

This will require that we copy over the core configuration as part of setup; this could also open up a pattern where our scripts copy over the default, prompt the user for data we need from them, and then offer the user the choice to do an edit of the file before applying.

We may want to consider also having any manifests that are pulled into the config - this is more for visibility than anything else.

Describe alternatives you've considered
We've been running with the values specified in two places to date, and it becomes a pain in the ass making sure that we keep the two in sync. This becomes more difficult when we have dependencies outside of a stack (for example, an upgrade to cert-manager can cause all components that depend on cert-manager, such as the otel operator, to be updated as well).

Additional context
Add any other context or screenshots about the feature request here.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions