DRY repo schema - #1733
Conversation
There was a problem hiding this comment.
Code Review
This pull request refactors the schema definitions in Ramble by consolidating duplicate repository schema definitions into a helper module ramble.schema.repo_schema and dynamically importing submodules in ramble.schema/__init__.py. Feedback is provided regarding the dynamic import in __getattr__, where catching any ModuleNotFoundError can mask internal import errors of submodules. It is recommended to verify that the error name matches the target module before raising an AttributeError.
5ae919f to
52ba843
Compare
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Ramble Performance Test MetricsResults produced with commit: 3847e9f
|
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## develop #1733 +/- ##
===========================================
- Coverage 94.02% 94.02% -0.01%
===========================================
Files 367 369 +2
Lines 36933 36991 +58
===========================================
+ Hits 34728 34782 +54
- Misses 2205 2209 +4 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
225b8bb
into
GoogleCloudPlatform:develop
In a different conversation gemini notes that
ramble.schema.base_utility_repos.propertiesandramble.schema.utility_repos.propertieswere (unintentionally?) missing from the repo import. That sent me down a side quest to see if I could DRY some of the repeated schema/properties codeSome things are repeated in almost every file, such as: