diff --git a/client-truststore.jks b/client-truststore.jks index f2e5e42..4f109d7 100644 Binary files a/client-truststore.jks and b/client-truststore.jks differ diff --git a/src/main/java/cz/trask/migration/AbstractProcess.java b/src/main/java/cz/trask/migration/AbstractProcess.java index 6719d38..464c4bb 100644 --- a/src/main/java/cz/trask/migration/AbstractProcess.java +++ b/src/main/java/cz/trask/migration/AbstractProcess.java @@ -9,6 +9,8 @@ import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; +import java.net.InetSocketAddress; +import java.net.Proxy; import java.net.URL; import java.net.URLEncoder; import java.security.KeyStore; @@ -71,6 +73,8 @@ public abstract class AbstractProcess { public static ObjectMapper mapper; public static ObjectMapper mapperYaml; + + public static Proxy proxy; public final RegistryClient client; @@ -89,6 +93,9 @@ public abstract class AbstractProcess { config = ConfigManager.getInstance().getConfig(); setTrustStoreCredentials(); + + if (config.getProxy() != null && config.getProxy().getHost() != null && !config.getProxy().getHost().isEmpty()) + proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress(config.getProxy().getHost(), config.getProxy().getPort())); javax.net.ssl.HttpsURLConnection.setDefaultHostnameVerifier(new javax.net.ssl.HostnameVerifier() { public boolean verify(String hostname, javax.net.ssl.SSLSession sslSession) { @@ -338,7 +345,7 @@ public abstract class AbstractProcess { URL url = new URL(urlStr); - HttpsURLConnection con = (HttpsURLConnection) url.openConnection(); + HttpsURLConnection con = (HttpsURLConnection) url.openConnection(proxy); con.setRequestMethod("POST"); con.setDoInput(true); con.setDoOutput(true); @@ -450,7 +457,7 @@ public abstract class AbstractProcess { URL url = new URL(urlStr); - HttpsURLConnection con = (HttpsURLConnection) url.openConnection(); + HttpsURLConnection con = (HttpsURLConnection) url.openConnection(proxy); con.setUseCaches(false); con.setDoOutput(true); configureHttpsConnection(con); diff --git a/src/main/java/cz/trask/migration/model/ApplicationConfig.java b/src/main/java/cz/trask/migration/model/ApplicationConfig.java index 7ca8a6f..3449623 100644 --- a/src/main/java/cz/trask/migration/model/ApplicationConfig.java +++ b/src/main/java/cz/trask/migration/model/ApplicationConfig.java @@ -21,6 +21,8 @@ public class ApplicationConfig { private int maxThreads; @JsonProperty("store_migrated_artifacts") private boolean storeMigratedArtifacts = false; + @JsonProperty("proxy") + private Proxy proxy; @Data public static class TrustStore { @@ -66,4 +68,16 @@ public class ApplicationConfig { private String wso2ApisDir; } + + @Data + public static class Proxy { + @JsonProperty("host") + private String host; + @JsonProperty("port") + private int port; + @JsonProperty("username") + private String username; + @JsonProperty("password") + private String password; + } } \ No newline at end of file diff --git a/src/main/resources/apicurio-migrator.yaml b/src/main/resources/apicurio-migrator.yaml index ef66525..0983aec 100644 --- a/src/main/resources/apicurio-migrator.yaml +++ b/src/main/resources/apicurio-migrator.yaml @@ -1,3 +1,7 @@ +proxy: + host: proxy.jtfg.com + port: 3128 + source: registration_api_url: https://developerstest.jtfg.com/client-registration/v0.17/register publisher_api_url: https://developerstest.jtfg.com/api/am/publisher @@ -8,12 +12,12 @@ source: wso2_apis_dir: apis target: - registration_api_url: https://localhost:9443/client-registration/v0.17/register - publisher_api_url: https://localhost:9443/api/am/publisher/v4/apis/import - admin_api_url: https://localhost:9443/api/am/admin/v4 - devportal_api_url: https://localhost:9443/api/am/devportal - publisher_token_url: https://localhost:9443/oauth2/token - wso2_user: YWRtaW46YWRtaW4= + registration_api_url: https://wso2apiportal-int.apps.oshift-int.jtfg.com/client-registration/v0.17/register + publisher_api_url: https://wso2apiportal-int.apps.oshift-int.jtfg.com/api/am/publisher/v4/apis/import + admin_api_url: https://wso2apiportal-int.apps.oshift-int.jtfg.com/api/am/admin/v4 + devportal_api_url: https://wso2apiportal-int.apps.oshift-int.jtfg.com/api/am/devportal + publisher_token_url: https://wso2apiportal-int.apps.oshift-int.jtfg.com/oauth2/token + wso2_user: YWRtaW46Tiw5YzEpeFh0NTNr truststore: path: client-truststore.jks