Add plugin hook to nfpm backend so plugins can inject nfpm package field values #21822
+328
−14
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
With the nfpm backend, I need to inject some field values, like
version
andversion_release
from an in-repo plugin. In particular, I need to retrieve theversion
from a file in the repo, and theversion_release
needs to be calculated using some API calls to the remote package repository.I could inject
version
using .pants.bootstrap as described here: https://www.pantsbuild.org/blog/2024/04/27/simple-versioning-with-git-tags However, looking up the value forversion_release
requires some of the parametrized values of the package target's fields (likeplatform
,arch
, and a custom field for distribution major version). So, I need a way to dynamically inject some of these metadata values.