Refactor Gateway - #338
Open
scanon wants to merge 90 commits into
Open
Refactor Gateway#338scanon wants to merge 90 commits into
scanon wants to merge 90 commits into
Conversation
These converts all of the test to use pytest. It also addresses some warnings.
Convert from nose to pytest
Convert from SANIC to FastAPI
This does a bit of cleanup and improvemnents * Added models to api * Convert to f strings in api.py * Added custome exception
- Switched to using a config class instead of a dict. Much cleaner but this touched almost every file. - Lots of flake8 fixes - Switched a large chunk of old strings to f-strings.
This removes support for remote clusters (e.g. ssh/scp)
Finished remove and converting strings to f-strings
This replaces the dictionary based session with a class. It also switches to using pymunge versus calling out. Todo is to remove some of the unneeded code.
This cleans up a lot of dead code or unused features. It also replaces some dictionary based arguments with explicity arguments. - Remove cacert option - Have DockerV2 class taken specific arguments instead of a dict. - Refactor auth to use pymunge and remove the Auth class - Remove call to id -G and use python libraries instead - Remove munge module - Remove tarfilemp (no longer used) - Lots of cleanup in tests
This refactors the worker thread class and image request class. Now there is one general submit function in the worker thread class. The ImageRequest class has been replaced with a set of AsyncRequests classes for each operation. This makes the code a bit cleaner and the inputs for each async tasks are more clearly defined.
This drops some deprecated functions for code hygiene.
This adds additional tests to api.py and minor changes to api.py
This adds default to config.py for the Platform and Locations classes. This makes the documentation a little better.
This removes old code that allowed the imagemgr to be run as a command. This is deprecated.
This does some cleanup to the converter module and cleans up and adds test for it.
This changes the transfer module to use built-in python functions instead of ls/cp/etc. It removes the various utilities used for those and cleans up the tests.
Adds more test Removes dead code
This moves all of the fake/mock commands into a fakebin directory so the test directory is a little less cluttered. It also removes some old mock scripts.
This removes references to remote type since it isn't used any longer.
Adds pymunge to requirements.txt Converts string to binary for munge decode
This adds a ttl cache to the lookup call. This required some changes to the variable structure.
This is mostly flake8 fixes but has a few test fixes as well.
This adds typing to all of the methods in imagemgr.
These converts all of the test to use pytest. It also addresses some warnings.
Convert from nose to pytest
This file contains hidden or 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
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 is a massive PR to refactor the image gateway and bring it up to something more modern.
A summary of what has changed.