Merge "Add check of metadata structure"
diff --git a/src/com/mirantis/mk/ReleaseWorkflow.groovy b/src/com/mirantis/mk/ReleaseWorkflow.groovy
index da17fb9..8da3c6d 100644
--- a/src/com/mirantis/mk/ReleaseWorkflow.groovy
+++ b/src/com/mirantis/mk/ReleaseWorkflow.groovy
@@ -62,6 +62,10 @@
checkoutReleaseMetadataRepo(params)
docker.image(appDockerImage).inside("--volume ${repoDir}:/workspace") {
+ checkResult = sh(script: "metadata-app --path /workspace/metadata ${opts} validate --structure", returnStatus: true)
+ if (checkResult != 0) {
+ throw new Exception("Invalid metadata structure")
+ }
result = sh(script: "metadata-app --path /workspace/metadata ${opts} get --key ${key}", returnStdout: true).trim()
}
common.infoMsg("""
@@ -161,6 +165,10 @@
}
try {
sh "metadata-app --path /workspace/metadata update --create --key '${keyArr[i]}' ${valueExpression}"
+ checkResult = sh(script: "metadata-app --path /workspace/metadata ${opts} validate --structure", returnStatus: true)
+ if (checkResult != 0) {
+ throw new Exception("Invalid metadata structure")
+ }
} finally {
if (valuesFromFile){
sh "rm ${tmpFile}"