akuity / kargo-render

Tool and library for managing rendered, environment-specific branches
Apache License 2.0
46 stars 17 forks source link

how can we cut down on multi-app noise? #37

Closed krancour closed 1 year ago

krancour commented 1 year ago

I don't believe Bookkeeper introduced this problem, but I think the rendered YAML branches pattern can be inherently "noisy," particularly when configuration for multiple applications resides in one common repository.

I want to make some more observations and describe this problem in greater detail before suggesting a solution, but I also didn't want to lose track of this issue.

krancour commented 1 year ago

This might be an issue for k8sta to solve rather than bookkeeper...

More thoughts on this to come...

krancour commented 1 year ago

A lot of the noise results from render requests, which become PRs, for branches that are entirely unaffected by a change in the default branch.

I have something we can try...

For each supported config management tool, we have a default (conventional) notion of which files and directories within the repo are involved in rendering a given target branch, and ever since #31, users can override those defaults. The bottom line is that we always know what files and directories in the main branch affect a given target branch...

Ever since #60 we're also digging through history to find all commit messages on the default branch and incorporate them into commits to the target branch. We can use a similar technique as that to evaluate all affected paths between the previous render and the current render and proceed with rendering only if we detect that directories affecting the target branch have incurred any changes.

This is so critical to dialing back the noise that I am marking this as an OSS-blocker.

krancour commented 1 year ago

This is still an OSS blocker, but I am moving it to the next milestone, which is focused exclusively on addressing OSS blockers. I'm doing this because this issue is no longer relevant to the current milestone, which is about addressing things that are impacting our own satisfaction with Bookkeeper as we dogfood it. This issue is no longer relevant to us.

krancour commented 1 year ago

I'm closing this because our own dogfooding is showing us things aren't very noisy anymore.

We can re-open this if cases where things still get a little noisy become more apparent.