-
Notifications
You must be signed in to change notification settings - Fork 159
Implement base structure for repository file artifacts #4018
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
Conversation
f59fc33
to
fd29930
Compare
2fa47a5
to
9c7d609
Compare
9c7d609
to
a06d713
Compare
@vaibhavdaren would it make sense to rebase this PR on top of the koji/brew one? #4011 That one seems to be adding the basic structure, and koji/brew "artifacts", I would expect the repository file to build upon that, adding new artifact type, sharing the directories with koji/brew providers, and so on. |
a1d5fb3
to
c2f378d
Compare
c2f378d
to
6a8facb
Compare
I have rebased on top of his branch. Changed functions to match signatures. Let me review the orginal CR and put my thoughts on that as well. |
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.
I think for this PR the focus should be more on the design of the prepare plugin, namely:
- Creating the
PrepareRepoData
andPrepareRepo
skeleton, you can reference the prepare install plugin
tmt/tmt/steps/prepare/install.py
Lines 742 to 743 in 1d83cca
@container class PrepareInstallData(tmt.steps.prepare.PrepareStepData):
tmt/tmt/steps/prepare/install.py
Lines 799 to 800 in 1d83cca
@tmt.steps.provides_method('install') class PrepareInstall(tmt.steps.prepare.PreparePlugin[PrepareInstallData]):
(Naming of course flexible) - Hook into the providers to download the artifacts and do the actual repo creation
- Misc adjustments like hooking into the schema and other stuff that would pop up
You could also focus this PR on the second point if you think the scope could be too big
tmt/steps/prepare/brand_new_allmighty_install/providers/__init__.py
Outdated
Show resolved
Hide resolved
FYI - there are still ongoing structural changes to the abstract class implementation :) |
dc2cc84
to
6b79896
Compare
9e6407a
to
279647f
Compare
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.
Looks like a good kick-off, thanks! I would just place the repository enablement implementation under a new method which would be used across all providers.
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.
Thanks! Sounds good enough as the first version, let's start from here.
/packit retest-failed |
This file provides classes for handling repository file artifacts in the tmt framework. It includes the `RepositoryFileInfo` class, which encapsulates metadata about a repository file. Fix #3995
**Note**: This separate PR enables a focused "work-shopping" session on the class structure. Isolating this major change from the much larger PR (#4018) provides clarity for discussion and refinement. This separation is a temporary measure, as the code will ultimately be a single commit within the main PR. * [x] Change the base structure skeleton
Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
2734c62
to
0cedcf4
Compare
The two failures are irrelevant, merging. |
In this Pull request, I have added support for the Repository-File artifact type for the Almighty Install Plugin.
The classes add support for the file type.
For the next PR: #3995 (comment)