diff --git a/build.gradle b/build.gradle index ab6588de..e2bee8d3 100644 --- a/build.gradle +++ b/build.gradle @@ -14,10 +14,13 @@ ext.release = hasProperty('release') ? release : 'latest' if ("$environment" == 'stable') { ext.candidatesApi = 'https://api.sdkman.io/2' + ext.brokerApi = 'https://broker.sdkman.io' } else if ("$environment" == 'beta') { ext.candidatesApi = 'https://beta.sdkman.io/2' + ext.brokerApi = 'https://broker.sdkman.io' } else { ext.candidatesApi = 'http://localhost:8080/2' + ext.brokerApi = 'https://localhost:8080' } ext.sdkmanVersion = ext.release == 'latest' ? "latest+${ext.hash}".toString() : ext.release @@ -26,6 +29,7 @@ println("Environment is set to: $environment") println("Short git hash: $hash") println("Release set to: $release") println("Candidates API: $candidatesApi") +println("Broker API: $brokerApi") println("Version: $sdkmanVersion") apply from: 'gradle/archive.gradle' diff --git a/gradle/archive.gradle b/gradle/archive.gradle index 0c5baa0c..54486ab0 100644 --- a/gradle/archive.gradle +++ b/gradle/archive.gradle @@ -10,7 +10,8 @@ task prepareBin(type: Copy) { filter( ReplaceTokens, tokens: [ - SDKMAN_CANDIDATES_API: candidatesApi + SDKMAN_CANDIDATES_API: candidatesApi, + SDKMAN_BROKER_API: brokerApi ] ) } diff --git a/src/main/bash/sdkman-init.sh b/src/main/bash/sdkman-init.sh index 7e8e3434..c850144b 100644 --- a/src/main/bash/sdkman-init.sh +++ b/src/main/bash/sdkman-init.sh @@ -21,6 +21,10 @@ if [ -z "$SDKMAN_CANDIDATES_API" ]; then export SDKMAN_CANDIDATES_API="@SDKMAN_CANDIDATES_API@" fi +if [ -z "$SDKMAN_BROKER_API" ]; then + export SDKMAN_BROKER_API="@SDKMAN_BROKER_API@" +fi + if [ -z "$SDKMAN_DIR" ]; then export SDKMAN_DIR="$HOME/.sdkman" fi diff --git a/src/main/bash/sdkman-install.sh b/src/main/bash/sdkman-install.sh index 8c95fee9..13a0a996 100644 --- a/src/main/bash/sdkman-install.sh +++ b/src/main/bash/sdkman-install.sh @@ -123,7 +123,7 @@ function __sdkman_download() { mkdir -p "${metadata_folder}" local platform_parameter="$SDKMAN_PLATFORM" - local download_url="${SDKMAN_CANDIDATES_API}/broker/download/${candidate}/${version}/${platform_parameter}" + local download_url="${SDKMAN_BROKER_API}/download/${candidate}/${version}/${platform_parameter}" local base_name="${candidate}-${version}" local tmp_headers_file="${SDKMAN_DIR}/tmp/${base_name}.headers.tmp" local headers_file="${metadata_folder}/${base_name}.headers" diff --git a/src/test/groovy/sdkman/env/SdkmanBashEnvBuilder.groovy b/src/test/groovy/sdkman/env/SdkmanBashEnvBuilder.groovy index ab7058ad..a222ff0c 100644 --- a/src/test/groovy/sdkman/env/SdkmanBashEnvBuilder.groovy +++ b/src/test/groovy/sdkman/env/SdkmanBashEnvBuilder.groovy @@ -23,6 +23,7 @@ class SdkmanBashEnvBuilder { private String platform = UnixUtils.inferPlatform() private boolean offlineMode = false private String candidatesApi = "http://localhost:8080/2" + private String brokerApi = "http://localhost:8080/2" private String jdkHome = "/path/to/my/jdk" private String httpProxy private String scriptVersion @@ -82,6 +83,11 @@ class SdkmanBashEnvBuilder { this } + SdkmanBashEnvBuilder withBrokerApi(String service) { + this.brokerApi = service + this + } + SdkmanBashEnvBuilder withJdkHome(String jdkHome) { this.jdkHome = jdkHome this @@ -138,6 +144,7 @@ class SdkmanBashEnvBuilder { SDKMAN_CANDIDATES_DIR: sdkmanCandidatesDir.absolutePath, SDKMAN_OFFLINE_MODE : "$offlineMode", SDKMAN_CANDIDATES_API: candidatesApi, + SDKMAN_BROKER_API : brokerApi, sdkman_debug_mode : Boolean.toString(debugMode), JAVA_HOME : jdkHome ] diff --git a/src/test/groovy/sdkman/steps/initialisation_steps.groovy b/src/test/groovy/sdkman/steps/initialisation_steps.groovy index 342e49ae..268a3e93 100644 --- a/src/test/groovy/sdkman/steps/initialisation_steps.groovy +++ b/src/test/groovy/sdkman/steps/initialisation_steps.groovy @@ -85,6 +85,7 @@ And(~'^an initialised environment$') { -> bash = SdkmanBashEnvBuilder.create(sdkmanBaseDir) .withOfflineMode(offlineMode) .withCandidatesApi(serviceUrlEnv) + .withBrokerApi(serviceUrlEnv) .withJdkHome(javaHome) .withHttpProxy(HTTP_PROXY) .withScriptVersion(sdkmanScriptVersion) @@ -97,6 +98,7 @@ And(~'^an initialised environment without debug prints$') { -> bash = SdkmanBashEnvBuilder.create(sdkmanBaseDir) .withOfflineMode(offlineMode) .withCandidatesApi(serviceUrlEnv) + .withBrokerApi(serviceUrlEnv) .withJdkHome(javaHome) .withHttpProxy(HTTP_PROXY) .withScriptVersion(sdkmanScriptVersion)