forked from opensearch-project/opensearch-build
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrunIntegTestScript.groovy
40 lines (32 loc) · 1.47 KB
/
runIntegTestScript.groovy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
void call(Map args = [:]) {
lib = library(identifier: 'jenkins@20211123', retriever: legacySCM(scm))
String jobName = args.jobName ?: 'distribution-build-opensearch'
def buildManifest = lib.jenkins.BuildManifest.new(readYaml(file: args.buildManifest))
String buildId = buildManifest.build.id
echo "Build Id: ${buildId}"
String artifactRootUrl = buildManifest.getArtifactRootUrl(jobName, buildId)
echo "Artifact root URL: ${artifactRootUrl}"
String paths = generatePaths(buildManifest, artifactRootUrl)
echo "Paths: ${paths}"
String component = args.componentName
echo "Component: ${component}"
sh([
'./test.sh',
'integ-test',
"${args.testManifest}",
"--component ${component}",
'--test-run-id 1',
"--paths ${paths}",
].join(' '))
}
String generatePaths(buildManifest, artifactRootUrl) {
String name = buildManifest.build.name
String version = buildManifest.build.version
String platform = buildManifest.build.platform
String architecture = buildManifest.build.architecture
String distribution = buildManifest.build.distribution
String latestOpenSearchArtifactRootUrl = "https://ci.opensearch.org/ci/dbc/distribution-build-opensearch/${version}/latest/${platform}/${architecture}/${distribution}"
return name == 'OpenSearch' ?
"opensearch=${artifactRootUrl}" :
"opensearch=${latestOpenSearchArtifactRootUrl} opensearch-dashboards=${artifactRootUrl}"
}