编写jenkinsfile

最重要的一步来了!

首先看看jenkinsfile里面的信息

podTemplate(label: 'jnlp-slave', cloud: 'kubernetes', containers: [
    containerTemplate(
        name: 'jnlp',
        image: '192.168.3.27:8888/ops/jenkins-slave4',
        alwaysPullImage: true
    ),
  ],
  volumes: [
    hostPathVolume(mountPath: '/var/run/docker.sock', hostPath: '/var/run/docker.sock'),
    hostPathVolume(mountPath: '/usr/bin/docker', hostPath: '/usr/bin/docker')
  ],
  imagePullSecrets: ['registry-pull-secret']
)
{
  node("jnlp-slave"){
      stage('SVN Checkout'){
        checkout([$class: 'SubversionSCM', additionalCredentials: [], excludedCommitMessages: '', excludedRegions: '', excludedRevprop: '', excludedUsers: '', filterChangelog: false, ignoreDirPropChanges: false, includedRegions: '', locations: [[cancelProcessOnExternalsFail: true, credentialsId: '0ead2dca-f930-453a-b142-389c89801271', depthOption: 'infinity', ignoreExternalsOption: true, local: '.', remote: 'https://192.168.xxx.xxx:8443/svn/xxxxx/trunk/05.Code/devPortal/webapp']], quietOperation: true, workspaceUpdater: [$class: 'UpdateUpdater']])
      }
      stage('Unit Testing'){
          echo "Unit Testing..."
      }
      stage('Maven Build'){
          echo "Maven Build..."
          sh "/usr/local/maven/bin/mvn clean package --settings=/usr/local/maven/conf/settings.xml -Dmaven.test.skip=true"
      }
      stage('Build and Push Image'){
          sh '''
          docker login -u yfzx -p abcdefg123456 192.168.3.27:8888
          docker build -t 192.168.3.27:8888/project/devportal -f deploy/Dockerfile .
          docker push 192.168.3.27:8888/project/devportal
          '''
      }
      stage('Deploy to K8S'){
        sh '''
        kubectl --kubeconfig=/root/.kube/config apply -f deploy/deploy.yaml
        '''
      }
      stage('Testing'){
          echo "Testing..."
      }
  }
}
Copyright © suredandan 2018 all right reserved,powered by GitbookUpdateTime: 2020-04-09 16:42:02

results matching ""

    No results matching ""