Temporary disable Check include order stage
* In current time, those stage require 10+ min.
what is around +50% of whole test execution time
Change-Id: I8e41b7bd975811f8e7f4265ca93351447b528db6
diff --git a/test-cookiecutter-reclass.groovy b/test-cookiecutter-reclass.groovy
index 674d70c..413e72e 100644
--- a/test-cookiecutter-reclass.groovy
+++ b/test-cookiecutter-reclass.groovy
@@ -18,6 +18,7 @@
python = new com.mirantis.mk.Python()
slaveNode = env.SLAVE_NODE ?: 'docker'
+checkIncludeOrder = env.CHECK_INCLUDE_ORDER ?: false
// Global var's
alreadyMerged = false
@@ -449,41 +450,46 @@
currentBuild.description = currentBuild.description ? currentBuild.description + result : result
}
stage('Check include order') {
- def correctIncludeOrder = ["service", "system", "cluster"]
- dir(reclassInfoPatchedPath) {
- def nodeInfoFiles = findFiles(glob: "**/*.reclass.nodeinfo")
- def messages = ["<b>Wrong include ordering found</b><ul>"]
- def stepsForParallel = [:]
- nodeInfoFiles.each { nodeInfo ->
- stepsForParallel.put("Checking ${nodeInfo.path}:", {
- def node = readYaml file: nodeInfo.path
- def classes = node['classes']
- def curClassID = 0
- def prevClassID = 0
- def wrongOrder = false
- for(String className in classes) {
- def currentClass = className.tokenize('.')[0]
- curClassID = correctIncludeOrder.indexOf(currentClass)
- if (currentClass != correctIncludeOrder[prevClassID]) {
- if (prevClassID > curClassID) {
- wrongOrder = true
- common.warningMsg("File ${nodeInfo.path} contains wrong order of classes including: Includes for ${className} should be declared before ${correctIncludeOrder[prevClassID]} includes")
- } else {
- prevClassID = curClassID
+ if (!checkIncludeOrder) {
+ common.infoMsg('Check include order require to much time, and currently disabled!')
+
+ } else {
+ def correctIncludeOrder = ["service", "system", "cluster"]
+ dir(reclassInfoPatchedPath) {
+ def nodeInfoFiles = findFiles(glob: "**/*.reclass.nodeinfo")
+ def messages = ["<b>Wrong include ordering found</b><ul>"]
+ def stepsForParallel = [:]
+ nodeInfoFiles.each { nodeInfo ->
+ stepsForParallel.put("Checking ${nodeInfo.path}:", {
+ def node = readYaml file: nodeInfo.path
+ def classes = node['classes']
+ def curClassID = 0
+ def prevClassID = 0
+ def wrongOrder = false
+ for (String className in classes) {
+ def currentClass = className.tokenize('.')[0]
+ curClassID = correctIncludeOrder.indexOf(currentClass)
+ if (currentClass != correctIncludeOrder[prevClassID]) {
+ if (prevClassID > curClassID) {
+ wrongOrder = true
+ common.warningMsg("File ${nodeInfo.path} contains wrong order of classes including: Includes for ${className} should be declared before ${correctIncludeOrder[prevClassID]} includes")
+ } else {
+ prevClassID = curClassID
+ }
}
}
- }
- if(wrongOrder) {
- messages.add("<li>${nodeInfo.path} contains wrong order of classes including</li>")
- }
- })
+ if (wrongOrder) {
+ messages.add("<li>${nodeInfo.path} contains wrong order of classes including</li>")
+ }
+ })
+ }
+ parallel stepsForParallel
+ def includerOrder = '<b>No wrong include order</b>'
+ if (messages.size() != 1) {
+ includerOrder = messages.join('')
+ }
+ currentBuild.description = currentBuild.description ? currentBuild.description + includerOrder : includerOrder
}
- parallel stepsForParallel
- def includerOrder = '<b>No wrong include order</b>'
- if (messages.size() != 1) {
- includerOrder = messages.join('')
- }
- currentBuild.description = currentBuild.description ? currentBuild.description + includerOrder : includerOrder
}
}
sh(script: 'find . -mindepth 1 -delete > /dev/null || true')