in src/main/java/com/epam/aidial/kubernetes/KubernetesClient.java [262:288]
public Mono<Boolean> deleteKnativeService(String namespace, String name, String serviceVersion) {
return handleMissing(Mono.create(sink -> {
ServiceVersion version = ServiceVersion.parse(serviceVersion);
CustomObjectsApi customObjectsApi = new CustomObjectsApi(apiClient);
log.info("Deleting service {}", name);
try {
customObjectsApi.deleteNamespacedCustomObject(version.group(), version.version(), namespace, SERVICES, name)
.propagationPolicy(FOREGROUND_POLICY)
.gracePeriodSeconds(0)
.executeAsync(new NoProgressApiCallback<>() {
@Override
public void onFailure(ApiException e, int i, Map<String, List<String>> map) {
sink.error(e);
}
@Override
public void onSuccess(Object state, int i, Map<String, List<String>> map) {
log.info("Service {} has been deleted", name);
sink.success();
}
});
} catch (ApiException e) {
sink.error(e);
}
}));
}