Skip to content

Implement support for Commodore component dependencies (SDD #0034) - #1418

Draft
simu wants to merge 18 commits into
masterfrom
feat/component-dependencies
Draft

Implement support for Commodore component dependencies (SDD #0034)#1418
simu wants to merge 18 commits into
masterfrom
feat/component-dependencies

Conversation

@simu

@simu simu commented Aug 18, 2026

Copy link
Copy Markdown
Member

SDD PR: projectsyn/documentation#189

TODO

  • PR body description
  • Cleanup commits
  • Verify that we don't have any special component tests that fail under the new component compile implementation
  • Bounded recursion for dependency fetching in component compile?
  • Ensure that argocd dependency isn't injected for component-argocd (check by URL?)
  • Check for dependency loops when collecting dependencies for catalog
  • Expose recursion depth via command line argument for component compile
  • Add tests with mocked components that cover various explicit dependency scenarios

Checklist

  • Keep pull requests small so they can be easily reviewed.
  • Update the documentation.
  • Update tests.
  • Categorize the PR by setting a good title and adding one of the labels:
    bug, enhancement, documentation, change, breaking, dependency, internal
    as they show up in the changelog
  • Link this PR to related issues.

@simu simu added the enhancement New feature or request label Aug 18, 2026
@simu
simu force-pushed the feat/component-dependencies branch 4 times, most recently from 3be1267 to 8254de4 Compare August 18, 2026 13:58
@simu simu mentioned this pull request Aug 19, 2026
5 tasks
@simu
simu force-pushed the feat/component-dependencies branch 16 times, most recently from 2f1943a to f2114d2 Compare August 24, 2026 08:50
simu added 10 commits August 24, 2026 11:10
This is necessary now that we use the real `argocd.libsonnet` in
`component compile` to ensure that `make golden-diff` doesn't fail on
freshly templated components.

We also introduce a command line flag `--update-golden-tests` for
`component new` and `component update`. This flag is true by default,
but we disable it in most component template unit/integration tests
since we generally don't care about accuracy of the golden test outputs
in these tests. However, for specific test cases (such as the one
checking that a freshly templated component has no golden diff), we
enable the flag.
TODO: good test cases for recursive discovery (e.g. component minversion
changes after first iteration).
Some of these cases were previously covered by `component compile`
tests.

Note that we don't try to test the case where the `jb` binary is missing
since we can't easily do that without breaking the global test
environment.
@simu
simu force-pushed the feat/component-dependencies branch from f2114d2 to a0b719e Compare August 24, 2026 09:10
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

None yet

Development

Successfully merging this pull request may close these issues.

1 participant