-
Notifications
You must be signed in to change notification settings - Fork 20
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
Changes to allow automatic generation of LVM PVs at the AgamaProposal #1392
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
ancorgs
force-pushed
the
less_lvm_helper
branch
11 times, most recently
from
October 3, 2024 13:43
051e566
to
5e14b1c
Compare
This was referenced Oct 3, 2024
ancorgs
force-pushed
the
less_lvm_helper
branch
from
October 8, 2024 11:49
1bc7b80
to
970bebd
Compare
ancorgs
force-pushed
the
less_lvm_helper
branch
from
October 8, 2024 12:27
fc5c41d
to
2aa1c76
Compare
joseivanlopez
approved these changes
Oct 9, 2024
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
✅ Autosubmission job #11251174448 successfully finished |
ancorgs
added a commit
to agama-project/agama
that referenced
this pull request
Oct 9, 2024
#1652 adds support for configuring the automatic generation of LVM physical volumes. Read there the details about how the feature works. This pull request implements a first version of the functionality described there, including a couple of unit tests. Depends on yast/yast-storage-ng#1392
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.
We want to offer new possibilities with the so-called AgamaProposal (that will be used to implement all the features described at this document.
For that we need a more powerful SpaceMaker that can automatically calculate physical volumes for an arbitrary number of LVM volume groups extended over different sets of disks.
This pull request generalizes the existing SpaceMaker to gain that capability and to be less coupled with the traditional YaST GuidedProposal.
Original API
New API.
Does not use LvmHelper or ProposalSettings. Accepts different sets of partitions and/or volume groups. Many arguments can be omitted on the calls. The caller is more explicit about what to do instead of relying on SpaceMaker to take decisions (like which disks to clean) based on the proposal settings.
The behavior is unchanged except one corner case related to how it calculates the space needed to subtract from existing partitions in order to make space. The new behavior looks more correct. Anyways, that corner case should not affect YaST.
Bonus
This also modifies the mentioned calculation of how much a partition must be resized.
The previous algorithm was quite aggressive when LVM is involved. A perfect size would be computationally too expensive to find, but now we do two attempts, one with the original logic and another one with a logic that can still succeed but is less aggressive when there are several spaces in the disk.
Notes
As usual, this is structured in separate logical commits to easy review.