[AzL3Tdnf] Refactoring TDNF Package Manager separating Azure Linux specializations in it's own implementation#331
Conversation
…ecialiazations in it's own implementation
There was a problem hiding this comment.
Pull Request Overview
This PR refactors the TDNF Package Manager implementation by extracting Azure Linux specific functionality into a separate class while keeping the base TDNF functionality abstracted. The goal is to create a cleaner architecture that separates the generic TDNF functionality from Azure Linux specializations.
Key changes:
- Refactors
TdnfPackageManagerto be an abstract base class with common TDNF functionality - Creates new
AzL3TdnfPackageManagerclass containing Azure Linux specific implementations - Updates test class names and structure to match the new architecture
Reviewed Changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
src/core/src/package_managers/TdnfPackageManager.py |
Converted to abstract base class with only common TDNF functionality |
src/core/src/package_managers/AzL3TdnfPackageManager.py |
New concrete implementation with Azure Linux specializations |
src/core/src/bootstrap/ConfigurationFactory.py |
Updated imports to use new AzL3TdnfPackageManager |
src/core/tests/Test_TdnfPackageManager.py |
Renamed to Test_AzL3TdnfPackageManager and removed Azure-specific tests |
src/core/tests/Test_AzL3TdnfPackageManager.py |
New test file for Azure Linux specific functionality |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## master #331 +/- ##
==========================================
- Coverage 93.83% 93.82% -0.02%
==========================================
Files 103 105 +2
Lines 18129 18172 +43
==========================================
+ Hits 17011 17049 +38
- Misses 1118 1123 +5
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
This is a simple renaming of TdnfPackageManager to AzL3PackageManager. Will be followed up by separating generic TdnfPackageManager implementations from Azure Linux 3 specific ones: #331
kjohn-msft
left a comment
There was a problem hiding this comment.
Several comment themes inline.
Haven't repeated the comments in every instance - please use the themes to comb through equivalents.
kjohn-msft
left a comment
There was a problem hiding this comment.
Comments are inline from yesterday. (Not sure why it's asking me to 'add my review' again.)
kjohn-msft
left a comment
There was a problem hiding this comment.
Detailed comment on how to split inline.
Release includes: - [AzL3Tdnf] Refactoring TDNF Package Manager separating Azure Linux specializations in it's own implementation [331](#331) - [AzL3Tdnf] Renaming TdnfPackageManager to AzL3PackageManager [332](#332) - Feature: Azure Linux 3.0: Enhanced Support [318](#318) - Engg. hygiene: Explicit Codecov workflow permissions [327](#327)
Refactoring TDNFPackageManager with Azure Linux specializations added to AzL3TdnfPackageManager.
This is a follow up PR based on the comments in: #318
Tests Results:
2.core.log
2.status.txt
2.core.log
2.status.txt
2.core.log
2.status.txt