-
-
Notifications
You must be signed in to change notification settings - Fork 867
Description
Feature Request
What challenge are you facing?
As the second level of time-old problem where complex passed constraints cause builds that I kick off to choose correct but not intuitively obvious versions of an asset, I now find that some of my resources end up producing new versions from an early stage in the build which I expect to be passed to the next job but for constraint reasons, older versions are used instead, and I don't realize this for some time.
This becomes a problem for me when I am trying to ship assets to a promoted bucket, for example, but they're getting held up by problems with a sibling asset.
For example, if a build Q requires assets A and B, and versions A1, A2, A3 ... and B1, B2, B3 ... are produced in tandem (never run A1 and B2 together, for example), and I expect/require that version A2 runs through Q but version B2 hasn't passed an earlier stage, my build may be green repeatedly but only ever run with A1 and B1. There is no way for me to realize that A2 is sitting there ready but B2 isn't, until I either look in the bucket and see it's missing, or go to the build page and see that the wrong version is being chosen.
This is correct but opaque behavior. I wish I could know by looking at the pipeline whether the latest version of a given input to a build has been run on that build, or maybe has been run successfully.
A Modest Proposal
There are two ways to solve my problem that are immediately apparent to me. One is to make this situation obvious, for example making a cosmetic change to the wire connecting the resource to a build if the latest version has yet to be used. This is not super invasive but also a relatively bespoke solution.
Alternatively, I could solve this problem with a feature i have long desired but keep discovering problems with design-wise, but would love to see solved: the ability to mark something like version: unique
on a get
in a job configuration, which would mean "never run this build multiple times with the same version of X resource".