Skip to content

Commit

Permalink
refactor(helm,concourseclient,keel): replace RetrofitError with Spinn…
Browse files Browse the repository at this point in the history
…akerRetrofitErrorHandler for custom error handling in helm,concourseclient,keel
  • Loading branch information
SheetalAtre committed Aug 29, 2023
1 parent bada01e commit 60fb1d8
Show file tree
Hide file tree
Showing 5 changed files with 16 additions and 3 deletions.
4 changes: 3 additions & 1 deletion igor-web/igor-web.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -73,8 +73,10 @@ dependencies {
implementation "io.spinnaker.kork:kork-jedis"
implementation "io.spinnaker.kork:kork-telemetry"
implementation "io.spinnaker.kork:kork-plugins"
implementation "io.spinnaker.kork:kork-retrofit"

implementation "io.github.resilience4j:resilience4j-retry"

implementation "io.github.resilience4j:resilience4j-retry"

implementation "io.projectreactor:reactor-core"
implementation "com.google.code.gson:gson"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
import com.netflix.spinnaker.igor.concourse.client.model.ClusterInfo;
import com.netflix.spinnaker.igor.concourse.client.model.Token;
import com.netflix.spinnaker.kork.retrofit.exceptions.SpinnakerRetrofitErrorHandler;
import com.netflix.spinnaker.retrofit.Slf4jRetrofitLogger;
import com.squareup.okhttp.OkHttpClient;
import com.vdurmont.semver4j.Semver;
Expand Down Expand Up @@ -92,6 +93,7 @@ public ConcourseClient(String host, String user, String password) {
.setEndpoint(host)
.setClient(new OkClient(okHttpClient))
.setConverter(jacksonConverter)
.setErrorHandler(SpinnakerRetrofitErrorHandler.getInstance())
.setRequestInterceptor(
request -> {
request.addHeader("Authorization", "Basic Zmx5OlpteDU=");
Expand All @@ -103,6 +105,7 @@ public ConcourseClient(String host, String user, String password) {
.setClient(new OkClient(okHttpClient))
.setConverter(jacksonConverter)
.setLog(new Slf4jRetrofitLogger(ClusterInfoService.class))
.setErrorHandler(SpinnakerRetrofitErrorHandler.getInstance())
.build()
.create(ClusterInfoService.class);

Expand All @@ -114,6 +117,7 @@ public ConcourseClient(String host, String user, String password) {
this.tokenServiceV1 =
tokenRestBuilder
.setLog(new Slf4jRetrofitLogger(TokenService.class))
.setErrorHandler(SpinnakerRetrofitErrorHandler.getInstance())
.build()
.create(TokenService.class);
this.tokenServiceV2 = null;
Expand All @@ -127,6 +131,7 @@ public ConcourseClient(String host, String user, String password) {
this.tokenServiceV2 =
tokenRestBuilder
.setLog(new Slf4jRetrofitLogger(TokenServiceV2.class))
.setErrorHandler(SpinnakerRetrofitErrorHandler.getInstance())
.build()
.create(TokenServiceV2.class);
this.tokenServiceV3 = null;
Expand All @@ -140,6 +145,7 @@ public ConcourseClient(String host, String user, String password) {
this.tokenServiceV3 =
tokenRestBuilder
.setLog(new Slf4jRetrofitLogger(TokenServiceV3.class))
.setErrorHandler(SpinnakerRetrofitErrorHandler.getInstance())
.build()
.create(TokenServiceV3.class);

Expand Down Expand Up @@ -193,6 +199,7 @@ private <S> S createService(Class<S> serviceClass) {
.setConverter(jacksonConverter)
.setRequestInterceptor(oauthInterceptor)
.setLog(new Slf4jRetrofitLogger(serviceClass))
.setErrorHandler(SpinnakerRetrofitErrorHandler.getInstance())
.build()
.create(serviceClass);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
import com.netflix.spinnaker.igor.IgorConfigurationProperties;
import com.netflix.spinnaker.igor.helm.accounts.HelmAccounts;
import com.netflix.spinnaker.igor.helm.accounts.HelmAccountsService;
import com.netflix.spinnaker.kork.retrofit.exceptions.SpinnakerRetrofitErrorHandler;
import com.netflix.spinnaker.retrofit.Slf4jRetrofitLogger;
import java.io.IOException;
import java.lang.reflect.Type;
Expand Down Expand Up @@ -90,6 +91,7 @@ HelmAccountsService helmAccountsService(
.setConverter(new StringConverter())
.setLogLevel(retrofitLogLevel)
.setLog(new Slf4jRetrofitLogger(HelmAccountsService.class))
.setErrorHandler(SpinnakerRetrofitErrorHandler.getInstance())
.build()
.create(HelmAccountsService.class);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
import com.netflix.spinnaker.config.DefaultServiceEndpoint;
import com.netflix.spinnaker.config.okhttp3.OkHttpClientProvider;
import com.netflix.spinnaker.igor.keel.KeelService;
import com.netflix.spinnaker.kork.retrofit.exceptions.SpinnakerRetrofitErrorHandler;
import com.netflix.spinnaker.retrofit.Slf4jRetrofitLogger;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
Expand Down Expand Up @@ -52,6 +53,7 @@ public KeelService keelService(
new DefaultServiceEndpoint("keel", keelEndpoint.getUrl()))))
.setLogLevel(retrofitLogLevel)
.setLog(new Slf4jRetrofitLogger(KeelService.class))
.setErrorHandler(SpinnakerRetrofitErrorHandler.getInstance())
.build()
.create(KeelService.class);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,14 +19,14 @@
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.dataformat.yaml.YAMLFactory;
import com.netflix.spinnaker.igor.helm.model.HelmIndex;
import com.netflix.spinnaker.kork.retrofit.exceptions.SpinnakerServerException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import retrofit.RetrofitError;

@Slf4j
public class HelmAccounts {
Expand Down Expand Up @@ -62,7 +62,7 @@ public void updateAccounts() {
.filter(it -> it.types.contains("helm/chart"))
.map(it -> new HelmAccount(it.name))
.collect(Collectors.toList());
} catch (RetrofitError e) {
} catch (SpinnakerServerException e) {
log.error("Failed to get list of Helm accounts", e);
}
}
Expand Down

0 comments on commit 60fb1d8

Please sign in to comment.