-
Notifications
You must be signed in to change notification settings - Fork 23
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Automate ensembler image building with Turing API (#170)
* Fix bug is dockerfile and makefile involving passing of env variables * Remove dockerfile command to install ensembler dependencies in base image * Add new config field to store references to saved pyfunc ensemblers * Add ensembler type and config verification * Add resource request and timeout limits to pyfunc ensembler option * Add template for ensembler image building option * Move getensemblerdirectory method from ensembling_job_service to ensembler_service * Add new configs for pyfunc ensembler service building * Add config field for ensembler service * Add holders in appcontext to carry an ensembler service builder * Make router deploy pyfunc ensembler as if it were a normal ensembler with docker configs * Make deployment controller utilise pyfunc configs to generate docker image and configs * Refactor tests with changes to ensembler config schema * Add tests for imagebuilder for ensembler service * Revert changes to get ensembler directory function * Refactor appcontext test * Create config class for resource request and timeout * Fix migration script for new py_func_ref_config * Fix lint comments * Fix lint import formatting * Rename pyfunc ensembler type and regen openapi * Fix bug in ensembler Dockerfile * Refactor Dockerfile and fix 8083 port for ensembler * Fix port for ensembler in turing api * Fix output message * Update router deployment logs messages * Increase specificity of error log in router deployment * Refactor imagerequest and use a name that reflects each unique ensembler version * Specify pyfunc ensembler images to have name based on their versions * Add additional checks on ensemblers to api handlers * Add mocks to existing tests after refactoring * Add ensembler service configs to turing chart * Add test for requests with ensemblers that cannot be found * Update e2e test data * Revert combination of resource request and timeout into a single object * Regenerate openapi objects * Revert changes to e2e test data * Shift variables to uppercase for consistency * Add ensembler service to example config * Simplify yaml configs with anchors and aliases * Rename py_func_ref_config to pyfunc_config * Rename pyfunc_config to make it consistent with camelcase PyfuncConfig * Refactor naming of pyfunc config in openapi * Clean up openapi specs * Remove redundant schema from openapi spec * Remove redundant check on dockerconfig * Remove unnecessary logical checks for router deployment * Remove modifications left by IDE * Remove go build tags * Remove go build tag from integration_config * Refactor image building step into DeployRouterVersion process * Reformat code after lint tests * Rework image/docker naming convention to include run ids * Remove redundant dockerfile layer * Clean up OpenAPI specs * Add default values to docker_config when using pyfunc ensemblers * Fix broken test
- Loading branch information
1 parent
a3d788d
commit 44d4782
Showing
47 changed files
with
1,441 additions
and
254 deletions.
There are no files selected for viewing
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
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
Oops, something went wrong.