vaticle / bazel-distribution

Bazel rules for assembling and deploying software distributions (see @vaticle for usage example)
https://bazel.build
Apache License 2.0
155 stars 53 forks source link

Deployment rules allow possibly invalid invocations #404

Open jamesreprise opened 4 months ago

jamesreprise commented 4 months ago

Problem

We have a pattern of requiring the specification of 'snapshot' and 'release' repositories for deployment rules. This is true for the following.

This is troublesome when we want to have a target using this rule point to another target that is specifically a 'snapshot' or 'release' artefact as we've now introduced the possibility of an invalid invocation; our deployment target can make a 'release' deployment for a 'snapshot' artefact or vice versa.

Suggestion

Instead of requiring the specification of both 'snapshot' and 'release' repositories we could require that just one 'repository' is specified. This allows us to create multiple targets (manually or through macros, list comprehensions) for our desired workflows.