Skip to content

Commit

Permalink
fix(web): fix the mismatches in the return types of apis in gate and …
Browse files Browse the repository at this point in the history
…orca for delete, resume, cancel and pause operations of a pipeline.
  • Loading branch information
kirangodishala committed Mar 1, 2025
1 parent a9d3d1b commit 989ce8c
Show file tree
Hide file tree
Showing 6 changed files with 13 additions and 20 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -150,8 +150,8 @@ public Map createAndWaitForCompletion(Map body) {

/** @deprecated This pipeline operation does not belong here. */
@Deprecated
public Map cancelPipeline(final String id, final String reason) {
return Retrofit2SyncCall.execute(
public void cancelPipeline(final String id, final String reason) {
Retrofit2SyncCall.execute(
getOrcaServiceSelector().select().cancelPipeline(id, reason, false, ""));
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -90,23 +90,23 @@ Call<List> searchForPipelineExecutionsByTrigger(

@Headers("Accept: application/json")
@PUT("/pipelines/{id}/cancel")
Call<Map> cancelPipeline(
Call<Void> cancelPipeline(
@Path("id") String id,
@Query("reason") String reason,
@Query("force") boolean force,
@Body String ignored);

@Headers("Accept: application/json")
@PUT("/pipelines/{id}/pause")
Call<Map> pausePipeline(@Path("id") String id, @Body String ignored);
Call<Void> pausePipeline(@Path("id") String id, @Body String ignored);

@Headers("Accept: application/json")
@PUT("/pipelines/{id}/resume")
Call<Map> resumePipeline(@Path("id") String id, @Body String ignored);
Call<Void> resumePipeline(@Path("id") String id, @Body String ignored);

@Headers("Accept: application/json")
@DELETE("/pipelines/{id}")
Call<Map> deletePipeline(@Path("id") String id);
Call<Void> deletePipeline(@Path("id") String id);

@Headers("Accept: application/json")
@PUT("/pipelines/{executionId}/stages/{stageId}/restart")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ class ApplicationController {
@Deprecated
@Operation(summary = "Cancel pipeline")
@RequestMapping(value = "/{application}/pipelines/{id}/cancel", method = RequestMethod.PUT)
Map cancelPipeline(@PathVariable("id") String id,
void cancelPipeline(@PathVariable("id") String id,
@RequestParam(required = false) String reason) {
taskService.cancelPipeline(id, reason)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -275,7 +275,7 @@ class PipelineController {

@Operation(summary = "Delete a pipeline execution")
@DeleteMapping("{id}")
Map deletePipeline(@PathVariable("id") String id) {
void deletePipeline(@PathVariable("id") String id) {
pipelineService.deletePipeline(id);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -170,22 +170,22 @@ class PipelineService {
Retrofit2SyncCall.execute(orcaServiceSelector.select().getPipeline(id))
}

Map cancelPipeline(String id, String reason, boolean force) {
void cancelPipeline(String id, String reason, boolean force) {
setApplicationForExecution(id)
Retrofit2SyncCall.execute(orcaServiceSelector.select().cancelPipeline(id, reason, force, ""))
}

Map pausePipeline(String id) {
void pausePipeline(String id) {
setApplicationForExecution(id)
Retrofit2SyncCall.execute(orcaServiceSelector.select().pausePipeline(id, ""))
}

Map resumePipeline(String id) {
void resumePipeline(String id) {
setApplicationForExecution(id)
Retrofit2SyncCall.execute(orcaServiceSelector.select().resumePipeline(id, ""))
}

Map deletePipeline(String id) {
void deletePipeline(String id) {
setApplicationForExecution(id)
Retrofit2SyncCall.execute(orcaServiceSelector.select().deletePipeline(id))
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -126,19 +126,12 @@ void invokeDeletePipelineExecution() throws Exception {
WireMock.delete(urlEqualTo("/pipelines/" + PIPELINE_EXECUTION_ID))
.willReturn(aResponse().withStatus(200)));

// TODO: Fix the response type of gate's delete pipeline execution endpoint
// which is supposed to be void instead of Map as Orca doesn't return anything.
webAppMockMvc
.perform(
delete("/pipelines/" + PIPELINE_EXECUTION_ID)
.header(REQUEST_ID.getHeader(), SUBMITTED_REQUEST_ID))
.andDo(print())
.andExpect(status().is5xxServerError())
.andExpect(
status()
.reason(
"Failed to process response body: No content to map due to end-of-input\n"
+ " at [Source: (okhttp3.ResponseBody$BomAwareReader); line: 1, column: 0]"))
.andExpect(status().is2xxSuccessful())
.andExpect(header().string(REQUEST_ID.getHeader(), SUBMITTED_REQUEST_ID));
}
}

0 comments on commit 989ce8c

Please sign in to comment.