pipelineUtils/vars/addVersionFromNexusRepo.groovy

33 lines
863 B
Groovy

#!/usr/bin/env groovy
import java.net.URLEncoder
Map call(Map config = [:]) {
Map defaults = [
nexusBase: 'https://repo.thejimnicholson.com',
searchAPI: 'service/rest/v1/search',
queryParams: [
'repository': 'tools',
'sort': 'name',
'name': 'test.something'
]
]
Map runConfig = defaults + config
nexusSearch = buildUrlWithQueryParams(runConfig.nexusBase, runConfig.queryParams)
runConfig.nexusQuery = nexusSearch
return runConfig
}
def buildUrlWithQueryParams(baseUrl, queryParams) {
def url = baseUrl
if (!queryParams.empty) {
def queryParamsString = queryParams.collect { key, value ->
"${URLEncoder.encode(key, 'UTF-8')}=${URLEncoder.encode(value, 'UTF-8')}"
}.join('&')
url += '?' + queryParamsString
}
return url
}