In the case of runners on cluster engines, the responsibility of storing and propagating artifacts can be left up to the runner. In order for the runner to make artifacts available to the ArtifactRetrievalService, abstractions are necessary to provide these artifacts to the retrieval service.
Imported from Jira BEAM-4095. Original Jira may contain additional context.
Reported by: axelmagn.