-
Notifications
You must be signed in to change notification settings - Fork 59
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
TES Support: Implementing adapter-service for TES #749
Open
SilinPavel
wants to merge
239
commits into
epam:develop
Choose a base branch
from
SilinPavel:tes-dev
base: develop
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
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
EPMCMBIBPC-2758 Done. Empty gradle module created.
…ded WebConfiguration class and simple ResponseEntity<> implementation
…K' response to "/v1/tasks/service-info" endpoint
simple-web-app
…and couple changes in controller
… Configuring swagger paths to controller package and also tasks
f-swagger-impl
…er and also in ComponentScan
…mports. added TES-API interface.
* simple test tasks service implemented. injected to TesAdapterController and also in ComponentScan * implemented task entities with swagger-codegen and task_execution.swagger.json * update entities imports, added @DaTa annotation. Erased equals(), hashCode() and toString(), methods, and also Getters and Setters. Relocated @ApiModelProperty -s to proper places. * updated entities implementation. Removed unused methods. * updated entities implementation. Removed constructors from enum-classes. Added @AllArgsConstructor and @tostring annotations for them.
* created TesTaskService, injected if to TesAdapterController * refactoring TesTaskService(change from class to interface) * add TesTaskImpl
* add MappingJackson2HttpMessageConverter * refactored MappingJackson2HttpMessageConverter * refactored MappingJackson2HttpMessageConverter(ijected ComponentScan) * refactoring TesSwaggerCongig. Delete unnecessary code and two unnecessary import * refactoring CustomConverter * refactoring code into good Code style
…eline into f_submit_get_cancel_taskmethods # Conflicts: # tes-adapter/src/main/java/com/epam/pipeline/tesadapter/TesAdapterApplication.java # tes-adapter/src/main/java/com/epam/pipeline/tesadapter/controller/TesAdapterController.java # tes-adapter/src/main/java/com/epam/pipeline/tesadapter/entity/TesCancelTaskResponse.java # tes-adapter/src/main/java/com/epam/pipeline/tesadapter/entity/TesCreateTaskResponse.java # tes-adapter/src/main/java/com/epam/pipeline/tesadapter/entity/TesExecutor.java # tes-adapter/src/main/java/com/epam/pipeline/tesadapter/entity/TesExecutorLog.java # tes-adapter/src/main/java/com/epam/pipeline/tesadapter/entity/TesFileType.java # tes-adapter/src/main/java/com/epam/pipeline/tesadapter/entity/TesInput.java # tes-adapter/src/main/java/com/epam/pipeline/tesadapter/entity/TesListTasksResponse.java # tes-adapter/src/main/java/com/epam/pipeline/tesadapter/entity/TesOutput.java # tes-adapter/src/main/java/com/epam/pipeline/tesadapter/entity/TesOutputFileLog.java # tes-adapter/src/main/java/com/epam/pipeline/tesadapter/entity/TesResources.java # tes-adapter/src/main/java/com/epam/pipeline/tesadapter/entity/TesServiceInfo.java # tes-adapter/src/main/java/com/epam/pipeline/tesadapter/entity/TesState.java # tes-adapter/src/main/java/com/epam/pipeline/tesadapter/entity/TesTask.java # tes-adapter/src/main/java/com/epam/pipeline/tesadapter/entity/TesTaskLog.java # tes-adapter/src/main/java/com/epam/pipeline/tesadapter/service/TesTaskService.java ------------------ Added stubbed implementations for all three methods submit/get/cancel - TesTask
…ass imports. Changed settings to not use wildcard import.
…uestParam. Add appropriate modifications to the last one.
* add EPMCMBIBPC-2764 Task * add RequestParam into listTesTasks method * add taskView Enum and refactoring TesAdapterControll * refactoring TesAdapterControll
…eline into f_submit_get_cancel_taskmethods # Conflicts: # tes-adapter/src/main/java/com/epam/pipeline/tesadapter/controller/TesAdapterController.java ========= added TaskView enum as a parameter in method getTesTask().
* simple test tasks service implemented. injected to TesAdapterController and also in ComponentScan * implemented task entities with swagger-codegen and task_execution.swagger.json * added stubbed methods submit/cancel/get-task. Reformatting entities imports. added TES-API interface. * update TesAdapterController. changed import wildcard "*" to single-class imports. Changed settings to not use wildcard import. * update TesAdapterController. removed optional value for @PathVariable * update TesAdapterController. changed annotation @PathVariable to @RequestParam. Add appropriate modifications to the last one. * Added TesExceptionHandler. injected Slf4j logger, HttpStatus stubbed as INTERNAL_SERVER_ERROR. * add EPMCMBIBPC-2764 Task (#13) * add EPMCMBIBPC-2764 Task * add RequestParam into listTesTasks method * add taskView Enum and refactoring TesAdapterControll * refactoring TesAdapterControll * PMD & checkstyle fix * Merging with current state of tes-support remote branch. Add needed changes to Controller.
* added new module "tes-adapter" in root directory "cloud-pipeline" * finished sub-task 2759. Added basic Spring Web-Application in tes-adapter module. Create standalone JAR with "OK" response in endpoint "/v1/tasks/service-info" of URL * impl logger to tes-module. Updated build.gradle and added logger-xml config to resources. * removed Logger for saml, via unnecessary reasons. Changed Logger name com.epam.pipeline to com.epam.pipeline.tesadapter * Delete TesAdaptorsController I pushed twice unnecessary file, so I removed it, because we already have proper Controller
* simple test tasks service implemented. injected to TesAdapterController and also in ComponentScan * implemented task entities with swagger-codegen and task_execution.swagger.json * added stubbed methods submit/cancel/get-task. Reformatting entities imports. added TES-API interface. * update TesAdapterController. changed import wildcard "*" to single-class imports. Changed settings to not use wildcard import. * update TesAdapterController. removed optional value for @PathVariable * update TesAdapterController. changed annotation @PathVariable to @RequestParam. Add appropriate modifications to the last one.
implemented CloudPipelineAPIClient
…d modifications to install.sh script
# Conflicts: # settings.gradle
add CP_TES_WHITE_IPV4_CIDR into properties and describes into readme
couple refactoring of swagger-page titles
…toring code. Now code has 1 failed test
…toring code. Fixed TesAdapterControllerTest
…eToken for listTesTask method response
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.
What is TES
Task Execution Specification - https://github.com/ga4gh/task-execution-schemas
The Task Execution Service (TES) API is an effort to define a standardized schema and API for describing batch execution tasks.
A task defines a set of input files, a set of (Docker) containers and commands to run, a set of output files, and some other logging and metadata.
Why do we need it
Cloud Pipeline Platform provides convenient way to run a lot of types of tasks. But to be able easily integrate our CP Platform with a lot of already developed platforms (such as Cromwell) we need to provide common way to interact with CP Platform.
One of existing solutions would be implement TES API.