Merge "Revert "Change gating-pipeline for check Verify-label.""
diff --git a/cvp-runner.groovy b/cvp-runner.groovy
index b362f01..1b1d5e0 100644
--- a/cvp-runner.groovy
+++ b/cvp-runner.groovy
@@ -49,7 +49,7 @@
def workdir = "${container_workdir}/${test_suite_name}"
def xml_file = "${test_suite_name}_report.xml"
def tests_set = (env.getProperty('tests_set')) ?: ''
- def script = "pytest --junitxml ${container_workdir}/${artifacts_dir}/${xml_file} --tb=short -sv -vv ${tests_set}"
+ def script = "pytest --junitxml ${container_workdir}/${artifacts_dir}/${xml_file} --tb=short -vv ${tests_set}"
sh "mkdir -p ${artifacts_dir}"
diff --git a/cvp-tempest.groovy b/cvp-tempest.groovy
index c6fca0a..e8eb286 100644
--- a/cvp-tempest.groovy
+++ b/cvp-tempest.groovy
@@ -33,9 +33,9 @@
if (extraYamlContext) {
common.mergeEnv(env, extraYamlContext) }
def SALT_MASTER_CREDENTIALS=(env.SALT_MASTER_CREDENTIALS) ?: 'salt'
-def VERBOSE = (env.VERBOSE) ?: true
+def VERBOSE = (env.VERBOSE) ? env.VERBOSE.toBoolean() : true
def DEBUG_MODE = (env.DEBUG_MODE) ?: false
-def STOP_ON_ERROR = (env.STOP_ON_ERROR) ?: false
+def STOP_ON_ERROR = (env.STOP_ON_ERROR) ? env.STOP_ON_ERROR.toBoolean() : false
def GENERATE_CONFIG = (env.GENERATE_CONFIG) ?: true
def remote_artifacts_dir = (env.remote_artifacts_dir) ?: '/root/test/'
def report_prefix = (env.report_prefix) ?: ''
@@ -89,7 +89,7 @@
}
}
stage('Generate config') {
- if ( GENERATE_CONFIG ) {
+ if ( GENERATE_CONFIG.toBoolean() ) {
salt.runSaltProcessStep(saltMaster, SERVICE_NODE, 'file.remove', ["${remote_artifacts_dir}"])
salt.runSaltProcessStep(saltMaster, SERVICE_NODE, 'file.mkdir', ["${remote_artifacts_dir}"])
fullnodename = salt.getMinions(saltMaster, SERVICE_NODE).get(0)
@@ -127,9 +127,9 @@
}
stage('Run Tempest tests') {
- // parameters: master, target, dockerImageLink, name, env_var, entrypoint, tempestConfLocalPath
- validate.runContainer(saltMaster, TARGET_NODE, TEST_IMAGE, 'cvp', [], true,
- '/root/test/tempest_generated.conf')
+ mounts = ['/root/test/tempest_generated.conf': '/etc/tempest/tempest.conf']
+ validate.runContainer(master: saltMaster, target: TARGET_NODE, dockerImageLink: TEST_IMAGE,
+ mounts: mounts)
report_prefix += 'tempest_'
if (env.concurrency) {
args += ' -w ' + env.concurrency
diff --git a/generate-cookiecutter-products.groovy b/generate-cookiecutter-products.groovy
index 54e9853..261193e 100644
--- a/generate-cookiecutter-products.groovy
+++ b/generate-cookiecutter-products.groovy
@@ -15,6 +15,7 @@
git = new com.mirantis.mk.Git()
python = new com.mirantis.mk.Python()
saltModelTesting = new com.mirantis.mk.SaltModelTesting()
+updateSaltFormulasDuringTest = true
slaveNode = env.getProperty('SLAVE_NODE') ?: 'virtual'
gerritCredentials = env.getProperty('CREDENTIALS_ID') ?: 'gerrit'
@@ -22,7 +23,6 @@
distribRevision = 'proposed'
gitGuessedVersion = false
-
def globalVariatorsUpdate() {
def templateContext = readYaml text: env.COOKIECUTTER_TEMPLATE_CONTEXT
def context = templateContext['default_context']
@@ -81,8 +81,11 @@
common.warningMsg('Apply WA for PROD-25732')
context.cookiecutter_template_url = 'ssh://gerrit.mcp.mirantis.com:29418/mk/cookiecutter-templates.git'
}
- common.warningMsg("Fetching:\n" +
- "DISTRIB_REVISION from ${distribRevision}")
+ // check, if we are going to test clear release version, w\o any updates and patches
+ if (!gitGuessedVersion && (distribRevision == context.mcp_version)) {
+ updateSaltFormulasDuringTest = false
+ }
+
common.infoMsg("Using context:\n" + context)
print prettyPrint(toJson(context))
return context
@@ -144,11 +147,15 @@
def secretKeyID = RequesterEmail ?: "salt@${context['cluster_domain']}".toString()
if (!context.get('secrets_encryption_private_key')) {
def batchData = """
+ %echo Generating a basic OpenPGP key for Salt-Master
+ %no-protection
Key-Type: 1
Key-Length: 4096
Expire-Date: 0
Name-Real: ${context['salt_master_hostname']}.${context['cluster_domain']}
Name-Email: ${secretKeyID}
+ %commit
+ %echo done
""".stripIndent()
writeFile file: 'gpg-batch.txt', text: batchData
sh "gpg --gen-key --batch < gpg-batch.txt"
@@ -156,7 +163,7 @@
} else {
writeFile file: 'gpgkey.asc', text: context['secrets_encryption_private_key']
sh "gpg --import gpgkey.asc"
- secretKeyID = sh(returnStdout: true, script: 'gpg --list-secret-keys --with-colons | awk -F: -e "/^sec/{print \\$5; exit}"').trim()
+ secretKeyID = sh(returnStdout: true, script: 'gpg --list-secret-keys --with-colons | grep -E "^sec" | awk -F: \'{print \$5}\'').trim()
}
context['secrets_encryption_key_id'] = secretKeyID
}
@@ -194,7 +201,9 @@
sh("cp -v gpgkey.asc ${testEnv}/salt_master_pillar.asc")
}
def DockerCName = "${env.JOB_NAME.toLowerCase()}_${env.BUILD_TAG.toLowerCase()}"
- common.infoMsg("Attempt to run test against distribRevision: ${distribRevision}")
+ common.warningMsg("Attempt to run test against:\n" +
+ "DISTRIB_REVISION from ${distribRevision}\n" +
+ "updateSaltFormulasDuringTest = ${updateSaltFormulasDuringTest}")
try {
def config = [
'dockerHostname' : "${context['salt_master_hostname']}",
@@ -203,7 +212,8 @@
'distribRevision' : distribRevision,
'dockerContainerName': DockerCName,
'testContext' : 'salt-model-node',
- 'dockerExtraOpts' : ['--memory=3g']
+ 'dockerExtraOpts' : ['--memory=3g'],
+ 'updateSaltFormulas' : updateSaltFormulasDuringTest
]
testResult = saltModelTesting.testNode(config)
common.infoMsg("Test finished: SUCCESS")
diff --git a/upgrade-mcp-release.groovy b/upgrade-mcp-release.groovy
index e389937..d1614eb 100644
--- a/upgrade-mcp-release.groovy
+++ b/upgrade-mcp-release.groovy
@@ -455,6 +455,8 @@
// mine was updated with required data after salt-minion/salt-master restart salt:minion:ca
salt.enforceState(venvPepper, "I@salt:minion:ca", 'salt.minion.ca', true)
salt.enforceState(venvPepper, "I@salt:minion", 'salt.minion.cert', true)
+ // run `salt.minion` to refresh all minion configs (for example _keystone.conf)
+ salt.enforceState([saltId: venvPepper, target: "I@salt:minion ${extra_tgt}", state: ['salt.minion'], read_timeout: 60, retries: 2])
// updating users and keys
salt.enforceState(venvPepper, "I@linux:system", 'linux.system.user', true)
salt.enforceState(venvPepper, "I@linux:system", 'openssh', true)