jenkins pipline 腳本

def getHost(ip){
   def remote = [:]
    remote.name = 'server-${ip}'
    remote.host = ip
    remote.port = 22
    remote.allowAnyHosts = true
    withCredentials([usernamePassword(credentialsId: '31ed3f9c-3e80-496d-9733-98b78db29128', passwordVariable: 'password', usernameVariable: 'userName')]) {
        remote.user = "${userName}"
        remote.password = "${password}"
    }
    return remote
}

def imageName="10.1.80.126:9001/library/etecsa-server-config-test"
def imageTag="latest"
def prjName="etecsa-server-config-test"
def register="http://10.1.80.126:9001"
pipeline {
    agent any
    
      environment{
        def server = ''
    }   

    
      stages {
              
    stage('init-server'){
            steps {
                script {                 
                   server = getHost("10.1.80.126")                                   
                }
            }
        }
          
        stage('Pre'){
            steps {
              sh label: '', script: """  if [ \$(docker ps -a | grep -i $imageName | wc -l) -eq 1 ]; then 
                         docker stop $prjName
                         docker rm -v -f $prjName
                    fi 
                    if [ \$(docker images | grep -i $imageName | wc -l) -eq 1 ]; then
                         docker rmi -f $imageName
                    fi
                    """
            }
        }
        
        stage('BuildJar') {
         steps {
              echo '拉取代碼'
              checkout([$class: 'SubversionSCM', additionalCredentials: [], excludedCommitMessages: '', excludedRegions: '', excludedRevprop: '', excludedUsers: '', filterChangelog: false, ignoreDirPropChanges: false, includedRegions: '', locations: [[cancelProcessOnExternalsFail: true, credentialsId: '8be443f3-8a57-4ce3-9905-1433c9f1b333', depthOption: 'infinity', ignoreExternalsOption: true, local: '.', remote: 'svn://10.1.80.111/ETECSA-SERVER']], quietOperation: true, workspaceUpdater: [$class: 'UpdateUpdater']])
              withMaven(maven: 'maven', mavenSettingsConfig: '62b4b95d-fe93-45f7-8eea-e551823d1b98') {
                  sh label: '', script: 'mvn clean install -pl ETECSA-SERVER-CONFIG-CENTER -am -amd -Dmaven.test.skip=true'
                }
            }
        }
        
        stage('DockerBuild') {
            steps {
                dir ("ETECSA-SERVER-CONFIG-CENTER/") {
                    script {
                        def image = docker.build("$imageName:$imageTag")
                            docker.withRegistry("$register", 'a2609603-66d9-4cfe-9ddf-e8ace35c1279'){
                            image.push()
                        }  
                    }
                }
            }
        }
        
        stage('Run'){
            steps {
                script {
                  sshCommand remote: server, command: """
                   svn checkout svn://10.1.80.111/ETECSA-SERVER/DOCKER-COMPOSE --username zhanghao --password 123456
                   cd DOCKER-COMPOSE
                   docker-compose up -d $prjName
                """
                }
            }
        }
    }
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末灵寺,一起剝皮案震驚了整個濱河市症革,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌悉患,老刑警劉巖亭螟,帶你破解...
    沈念sama閱讀 207,113評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件挡鞍,死亡現(xiàn)場離奇詭異,居然都是意外死亡预烙,警方通過查閱死者的電腦和手機匕累,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評論 2 381
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來默伍,“玉大人欢嘿,你說我怎么就攤上這事衰琐。” “怎么了炼蹦?”我有些...
    開封第一講書人閱讀 153,340評論 0 344
  • 文/不壞的土叔 我叫張陵羡宙,是天一觀的道長。 經(jīng)常有香客問我掐隐,道長狗热,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,449評論 1 279
  • 正文 為了忘掉前任虑省,我火速辦了婚禮匿刮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘探颈。我一直安慰自己熟丸,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 64,445評論 5 374
  • 文/花漫 我一把揭開白布伪节。 她就那樣靜靜地躺著光羞,像睡著了一般。 火紅的嫁衣襯著肌膚如雪怀大。 梳的紋絲不亂的頭發(fā)上纱兑,一...
    開封第一講書人閱讀 49,166評論 1 284
  • 那天,我揣著相機與錄音化借,去河邊找鬼潜慎。 笑死,一個胖子當(dāng)著我的面吹牛蓖康,可吹牛的內(nèi)容都是我干的勘纯。 我是一名探鬼主播,決...
    沈念sama閱讀 38,442評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼钓瞭,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了淫奔?” 一聲冷哼從身側(cè)響起山涡,我...
    開封第一講書人閱讀 37,105評論 0 261
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎唆迁,沒想到半個月后鸭丛,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,601評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡唐责,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,066評論 2 325
  • 正文 我和宋清朗相戀三年鳞溉,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片鼠哥。...
    茶點故事閱讀 38,161評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡熟菲,死狀恐怖看政,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情抄罕,我是刑警寧澤允蚣,帶...
    沈念sama閱讀 33,792評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站呆贿,受9級特大地震影響嚷兔,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜做入,卻給世界環(huán)境...
    茶點故事閱讀 39,351評論 3 307
  • 文/蒙蒙 一冒晰、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧竟块,春花似錦壶运、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至秫逝,卻和暖如春恕出,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背违帆。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評論 1 261
  • 我被黑心中介騙來泰國打工浙巫, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人刷后。 一個月前我還...
    沈念sama閱讀 45,618評論 2 355
  • 正文 我出身青樓的畴,卻偏偏與公主長得像,于是被迫代替她去往敵國和親尝胆。 傳聞我的和親對象是個殘疾皇子丧裁,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,916評論 2 344