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

Provide Mechanism to Conditionally Install Sub-Components #105

Open
srueg opened this issue May 27, 2020 · 0 comments
Open

Provide Mechanism to Conditionally Install Sub-Components #105

srueg opened this issue May 27, 2020 · 0 comments
Labels
help wanted Extra attention is needed RFC Request for Comments

Comments

@srueg
Copy link
Contributor

srueg commented May 27, 2020

If a components has many sub-components, a way to install them only if the main-component is installed should be available.

Example:
The crossplane component consists of the main crossplane component and the crossplane-aws and crossplane-cloudscale sub-components. If I include the crossplane-cloudscale component in the cloudsclae cloud provider class, I only want it installed if the crossplane main-component is also installed.

Currently we handle this with an if-statement in the main.jsonnet and app.jsonnet files:

if std.member(inv.classes, 'components.crossplane') then {
  '00_stack': cloudscale_stack,
  '10_provider': cloudscale_provider,
  '20_s3_instance_classes': s3.instance_classes,
} else {}

Maybe there's a better way to model these component dependencies and automatically resolve which ones to (not) install.

@srueg srueg added help wanted Extra attention is needed RFC Request for Comments labels Jul 2, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed RFC Request for Comments
Projects
None yet
Development

No branches or pull requests

1 participant