-
Notifications
You must be signed in to change notification settings - Fork 180
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update experimental pkg_rpm rule to use new mapping/grouping providers #303
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
nacl
pushed a commit
to nacl/rules_pkg
that referenced
this pull request
Feb 25, 2021
This change provides a number of unit tests for the pkg_filegroup-using `pkg_rpm` rule, meant to ensure that packages are formed as expected and conflict detection is properly implemented. The main differences between these and the tests in experimental/tests are: - Analysis tests for conflict detection - Fixed bugs WRT contents detection - Path changes This is likely not the final destination for these test cases, and they be combined with the rules implementation, depending on the size of the diff. See bazelbuild#303 for more details.
nacl
changed the title
Provide "official" pkg_filegroup-using RPM rule
Update experimental pkg_rpm rule to use new mapping/groupingg providers
Mar 2, 2021
nacl
changed the title
Update experimental pkg_rpm rule to use new mapping/groupingg providers
Update experimental pkg_rpm rule to use new mapping/grouping providers
Mar 2, 2021
The latest force-push to a91572b is ready for review. |
4 tasks
aiuto
approved these changes
Mar 3, 2021
I meant this one. It seemed self contained in trying update the experimental parts. |
This change replaces the experimental `pkg_rpm` rule in `pkg/experimental/rpm.bzl` rule with one that is aware of the grouping rule structure. - Usage of new providers and different paths everywhere - Restructuring of how the `%files` metadata is built out. It was restructured for clarity, and now makes use of the new `rpm_filetag` mapping attribute instead of `section`, which was since removed. - Inputs to `pkg_rpm` are now specified with the `srcs` attribute instead of `data`, to be consistent between runtime requirements and compile-time sources. - Conflicting content error detection and emission is now streamlined. - Test coverage has improved, including new analysis tests for conflict detection, and bugs in the RPM python tests. The old `pkg_filegroup` code in this same directory will be removed in a separate change
Latest force push syncs this PR with main. Will be merging shortly. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
This change replaces the experimental
pkg_rpm
rule inpkg/experimental/rpm.bzl
rule with one that is aware of the grouping rule structure. This will soon become the
primary
pkg_rpm
rule made available to users.Changes made to the experimental/ tree include:
Usage of new providers and different paths everywhere
Restructuring of how the
%files
metadata is built out. It was restructuredfor clarity, and now makes use of the new
rpm_filetag
mapping attributeinstead of
section
, which was since removed.Inputs to
pkg_rpm
are now specified with thesrcs
attribute instead ofdata
, to be consistent between runtime requirements and compile-time sources.Conflicting content error detection and emission is now streamlined.
Test coverage has improved, including new analysis tests for conflict
detection, and bugs in the RPM python tests.
The old
pkg_filegroup
code in this same directory will be removed in aseparate change.
This particular implementation of
pkg_rpm
has some known defects and missing features. These are tracked in #300, and will be fixed opportunistically.