akuity / kargo

Application lifecycle orchestration
https://kargo.akuity.io/
Apache License 2.0
1.67k stars 141 forks source link

Improve experience of working with freight containing many artifacts #2756

Open Brightside56 opened 2 weeks ago

Brightside56 commented 2 weeks ago

Checklist

Proposed Feature

Improve dev. experience of working with pipelines where freight may contain many artifacts (5+)

Motivation

Some of applications I have - are legacy services, distributed monoliths, containing large number of different applications, but those applications have a common SDLC and in terms of promotion they're single unit of work, as @krancour says. They need to be promoted across different stages of pipeline at same time therefore they cannot be simply disassembled into separate pipelines or warehouses at the moment

Suggested Implementation

krancour commented 2 weeks ago

This is an interesting idea. Need a small bit of clarification. You mentioned "auto-discovery" not working well for this scenario. Did you mean to say you just don't want Freight minted automatically by the Warehouse? Discovery still has to happen for Freight assembly. It's how the artifacts to choose from are found.

Brightside56 commented 2 weeks ago

Did you mean to say you just don't want Freight minted automatically by the Warehouse?

This. Auto-discovery is working, but it may be not desired in cases warehouse produces insane number/all possible combinations of freights and those freights will bloat freight timeline

The only possibility I see to normally work with such freights (containing 5-7-10 artifacts) is to rely on existing freight (currently deployed on some stage) as a source of truth with manual freight production

krancour commented 2 weeks ago

Yes... I could see how that would be useful. When I sell things on eBay, I actually look first for someone else selling the same thing and click "I have one of these to sell." It clones their listing and I modify accordingly. It's much faster/easier than starting from scratch. You basically want the equivalent of that. 👍