Merge "Add executeMachineSshCommand function"
diff --git a/.gitignore b/.gitignore
index f8b92c3..d075acf 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,5 @@
+.idea
.gradle
build
+gradlew*
+gradle/
diff --git a/src/com/mirantis/mk/Galera.groovy b/src/com/mirantis/mk/Galera.groovy
index e5ffe12..3b6f626 100644
--- a/src/com/mirantis/mk/Galera.groovy
+++ b/src/com/mirantis/mk/Galera.groovy
@@ -378,8 +378,8 @@
if (restoreDb) {
def timestamp = common.getDatetime()
- salt.cmdRun(env, lastNodeTarget, "mkdir -p /root/mysql")
- def bakDir = salt.getReturnValues(salt.cmdRun(env, lastNodeTarget, "mktemp -d --suffix='_${timestamp}' /root/mysql/mysql.bak.XXXXXX", false))
+ def bakDir = "/root/mysql/mysql.bak.${timestamp}".toString()
+ salt.cmdRun(env, lastNodeTarget, "mkdir -p ${bakDir}")
salt.cmdRun(env, lastNodeTarget, "mv /var/lib/mysql/* ${bakDir} || echo 'Nothing to backup from directory /var/lib/mysql/'")
}
if (total) {
diff --git a/src/com/mirantis/mk/Gerrit.groovy b/src/com/mirantis/mk/Gerrit.groovy
index 954600b..85b0411 100644
--- a/src/com/mirantis/mk/Gerrit.groovy
+++ b/src/com/mirantis/mk/Gerrit.groovy
@@ -370,6 +370,7 @@
*/
def postGerritReview(credentialsId, virtualEnv, repoDir, gitName, gitEmail, gitRemote, gitTopic, gitBranch) {
def python = new com.mirantis.mk.Python()
+ def common = new com.mirantis.mk.Common()
def cmdText = """
GIT_COMMITTER_NAME=${gitName} \
GIT_COMMITTER_EMAIL=${gitEmail} \
@@ -379,7 +380,8 @@
"""
sshagent([credentialsId]) {
dir(repoDir) {
- python.runVirtualenvCommand(virtualEnv, cmdText)
+ res = python.runVirtualenvCommand(virtualEnv, cmdText)
+ common.infoMsg(res)
}
}
}
diff --git a/src/com/mirantis/mk/Helm.groovy b/src/com/mirantis/mk/Helm.groovy
index 72d95cb..61ff48a 100644
--- a/src/com/mirantis/mk/Helm.groovy
+++ b/src/com/mirantis/mk/Helm.groovy
@@ -64,10 +64,14 @@
def generateChartVersionFromGit(repoDir, devVersion = true, increment = false, defaultVersion = '0.1.0', tagSuffix = 'mcp') {
def common = new com.mirantis.mk.Common()
def git = new com.mirantis.mk.Git()
- String initialVersion = "${defaultVersion}-${tagSuffix}"
+ String initialVersion = "${defaultVersion}"
String countRange
String versionData
- String tagPattern = "[0-9]*-${tagSuffix}"
+ String tagPattern = "[0-9]*"
+ if (tagSuffix) {
+ tagPattern = "${tagPattern}-${tagSuffix}"
+ initialVersion = "${initialVersion}-${tagSuffix}"
+ }
dir(repoDir){
Map cmd = common.shCmdStatus("git describe --tags --first-parent --abbrev=0 --match ${tagPattern}")
String lastTag = cmd['stdout'].trim()
@@ -86,26 +90,29 @@
}
List versionParts = versionData.tokenize('-')
- if (versionParts.size() == 2 && common.isSemVer(versionData) && versionParts[1] == tagSuffix){
- String commitsSinceTag = sh(script: "git rev-list --count ${countRange}", returnStdout: true).trim()
- String commitSha = sh(script: 'git rev-parse --short=7 HEAD', returnStdout: true).trim()
-
- if (commitsSinceTag == '0'){
- return versionData
- }
-
- if (devVersion){
- versionParts.add(commitSha)
- } else {
- versionParts.add(commitsSinceTag)
- }
- // Patch version will be incremented e.g. 0.1.0 -> 0.1.1
- if (increment) {
- versionParts[0] = git.incrementVersion(versionParts[0])
- }
- return versionParts.join('-')
+ if (!common.isSemVer(versionData)){
+ error "Version ${versionData} is not in semver2 format"
}
- error "Version ${versionData} doesn't contain required suffix ${tagSuffix} or not in semver2 format"
+ if (tagSuffix && versionParts.size() == 2 && versionParts[1] != tagSuffix){
+ error "Tag suffix ${tagSuffix} was specified but not found in ${versionData}"
+ }
+ String commitsSinceTag = sh(script: "git rev-list --count ${countRange}", returnStdout: true).trim()
+ String commitSha = sh(script: 'git rev-parse --short=7 HEAD', returnStdout: true).trim()
+
+ if (commitsSinceTag == '0'){
+ return versionData
+ }
+
+ if (devVersion){
+ versionParts.add(commitSha)
+ } else {
+ versionParts.add(commitsSinceTag)
+ }
+ // Patch version will be incremented e.g. 0.1.0 -> 0.1.1
+ if (increment) {
+ versionParts[0] = git.incrementVersion(versionParts[0])
+ }
+ return versionParts.join('-')
}
}