port getArtifactChecksum from mk artifactory to mcp
Change-Id: I6620e1b837714cdd866504f14fea69469f177a2c
us: https://mirantis.jira.com/browse/PRODX-486
diff --git a/src/com/mirantis/mcp/MCPArtifactory.groovy b/src/com/mirantis/mcp/MCPArtifactory.groovy
index 34af6d0..6f3780a 100644
--- a/src/com/mirantis/mcp/MCPArtifactory.groovy
+++ b/src/com/mirantis/mcp/MCPArtifactory.groovy
@@ -190,6 +190,31 @@
}
/**
+ * Get checksums of artifact
+ *
+ * @param artifactoryUrl String, an URL ofArtifactory repo
+ * @param repoName Artifact repository name
+ * @param artifactName Artifactory object name
+ * @param checksumType Type of checksum (default md5)
+ */
+
+def getArtifactChecksum(artifactoryUrl, repoName, artifactName, checksumType = 'md5'){
+ def url = "${artifactoryUrl}/api/storage/${repoName}/${artifactName}"
+ withCredentials([
+ [$class : 'UsernamePasswordMultiBinding',
+ credentialsId : 'artifactory',
+ passwordVariable: 'ARTIFACTORY_PASSWORD',
+ usernameVariable: 'ARTIFACTORY_LOGIN']
+ ]) {
+ def result = sh(script: "bash -c \"curl -X GET -u ${ARTIFACTORY_LOGIN}:${ARTIFACTORY_PASSWORD} \'${url}\'\"",
+ returnStdout: true).trim()
+ }
+
+ def properties = new groovy.json.JsonSlurperClassic().parseText(result)
+ return properties['checksums'][checksumType]
+}
+
+/**
* Check if image with tag exist by provided path
* Returns true or false
*