You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
void tryAddKnownHost(String hostUrl){
|
|
|
|
// ssh-keygen -F ${hostUrl} will fail (in bash that means status code != 0) if ${hostUrl} is not yet a known host
|
|
|
|
def statusCode = sh script:"ssh-keygen -F ${hostUrl}", returnStatus:true
|
|
|
|
if(statusCode != 0){
|
|
|
|
sh "mkdir -p ~/.ssh"
|
|
|
|
sh "ssh-keyscan ${hostUrl} >> ~/.ssh/known_hosts"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
pipeline {
|
|
|
|
agent {
|
|
|
|
docker { image 'pegasyseng/pantheon-build:0.0.5-jdk8' }
|
|
|
|
}
|
|
|
|
parameters {
|
|
|
|
string(name: 'TAG_NAME', defaultValue: '', description: '[MANDATORY] Name of the Tag to create the branch from')
|
|
|
|
string(name: 'BRANCH_NAME', defaultValue: '', description: '[MANDATORY] The desired name of the new branch')
|
|
|
|
}
|
|
|
|
stages {
|
|
|
|
stage('Release') {
|
|
|
|
steps {
|
|
|
|
sshagent(
|
|
|
|
credentials: ['pegasys-admin-github-ssh-private-key']
|
|
|
|
) {
|
|
|
|
withEnv([
|
|
|
|
'GIT_COMMITTER_NAME="PegaSys Admin"',
|
|
|
|
'GIT_COMMITTER_EMAIL="pegasys.manager@gmail.com"',
|
|
|
|
'GIT_AUTHOR_NAME="PegaSys Admin"',
|
|
|
|
'GIT_AUTHOR_EMAIL="pegasys.manager@gmail.com"'
|
|
|
|
]) {
|
|
|
|
tryAddKnownHost('github.com')
|
|
|
|
sh "./branch-from-tag.sh ${params.TAG_NAME} ${params.BRANCH_NAME}"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|