konveyor / tackle-pathfinder

Tackle Pathfinder application
Apache License 2.0
16 stars 23 forks source link

[TACKLE-9] Bulk copy of Application assessments #38

Closed jonathanvila closed 3 years ago

jonathanvila commented 3 years ago

WHAT

Once an application has been assessed , this assessment can also correspond to several applications. image image

WHY

In order to avoid the user to assess a bunch of applications with the same values

HOW

Operation to send a source ApplicationId and a List of ApplicationIds where the assessment has to be copied.

SCOPE

The source application needs to be assessed and not deleted. The target applications need to be not-assessed The response will be a list of : applicationId, assessmentId, status ( Success/Error )

jonathanvila commented 3 years ago

Links to have a better perspective on async apis : https://adidas.gitbook.io/api-guidelines/rest-api-guidelines/execution/batch-operations https://itnext.io/bulk-with-restfull-apis-7c5e6be84ed3 https://www.mscharhag.com/api-design/rest-asynchronous-operations

jonathanvila commented 3 years ago

2 different options to follow : IMG_20210428_102226

jonathanvila commented 3 years ago

Finally Opt-A is chosen: pattern request-reply https://dev.to/ragrag/asynchronous-request-response-pattern-2pbj

This implies the creation of the AssessmentBulkOperation entity that will provide an ID on the response of the first operation, and allows the consumer to check the status of the different processes.