diff --git a/Jenkinsfile b/Jenkinsfile index fb1bfe9c3440be02f67bead9c608ef5009ef41ae..b1e36c11f3c68d4edba158266129421efb207e44 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,5 +1,34 @@ pipeline { - agent any + agent{ + kubernetes { + //cloud 'kubernetes' + defaultContainer 'kaniko' + yaml ''' + kind: Pod + spec: + containers: + - name: kaniko + image: gcr.io/kaniko-project/executor:v1.6.0-debug + imagePullPolicy: Always + command: + - sleep + args: + - 99d + volumeMounts: + - name: jenkins-docker-cfg + mountPath: /kaniko/.docker + volumes: + - name: jenkins-docker-cfg + projected: + sources: + - secret: + name: regcred + items: + - key: .dockerconfigjson + path: config.json +''' + } + } tools{ maven 'maven' } @@ -38,55 +67,53 @@ pipeline { } } } - stage("Pulbish to Nexus"){ + // stage("Pulbish to Nexus"){ + // steps{ + // script{ + // pom = readMavenPom file: "pom.xml"; + // filesByGlob = findFiles(glob: "target/*.${pom.packaging}"); + // echo "${filesByGlob[0].name} ${filesByGlob[0].path} ${filesByGlob[0].directory} ${filesByGlob[0].length} ${filesByGlob[0].lastModified}" + // artifactPath = filesByGlob[0].path; + // artifactExists = fileExists artifactPath; + // if(artifactExists) { + // echo "*** File: ${artifactPath}, group: ${pom.groupId}, packaging: ${pom.packaging}, version ${pom.version}"; + // nexusArtifactUploader( + // nexusVersion: NEXUS_VERSION, + // protocol: NEXUS_PROTOCOL, + // nexusUrl: NEXUS_URL, + // groupId: pom.groupId, + // version: pom.version, + // repository: NEXUS_REPOSITORY, + // credentialsId: NEXUS_CREDENTIAL_ID, + // artifacts: [ + // [artifactId: pom.artifactId, + // classifier: '', + // file: artifactPath, + // type: pom.packaging], + // [artifactId: pom.artifactId, + // classifier: '', + // file: "pom.xml", + // type: "pom"] + // ] + // ); + // } else { + // error "*** File: ${artifactPath}, could not be found"; + // } + // } + // } + // } + stage("Publish Docker Image to Nexus"){ steps{ - script{ - pom = readMavenPom file: "pom.xml"; - filesByGlob = findFiles(glob: "target/*.${pom.packaging}"); - echo "${filesByGlob[0].name} ${filesByGlob[0].path} ${filesByGlob[0].directory} ${filesByGlob[0].length} ${filesByGlob[0].lastModified}" - artifactPath = filesByGlob[0].path; - artifactExists = fileExists artifactPath; - if(artifactExists) { - echo "*** File: ${artifactPath}, group: ${pom.groupId}, packaging: ${pom.packaging}, version ${pom.version}"; - nexusArtifactUploader( - nexusVersion: NEXUS_VERSION, - protocol: NEXUS_PROTOCOL, - nexusUrl: NEXUS_URL, - groupId: pom.groupId, - version: pom.version, - repository: NEXUS_REPOSITORY, - credentialsId: NEXUS_CREDENTIAL_ID, - artifacts: [ - [artifactId: pom.artifactId, - classifier: '', - file: artifactPath, - type: pom.packaging], - [artifactId: pom.artifactId, - classifier: '', - file: "pom.xml", - type: "pom"] - ] - ); - } else { - error "*** File: ${artifactPath}, could not be found"; - } + container(name: 'kaniko', shell: '/busybox/sh'){ + sh "pwd" + sh "ls" + sh '''#!/busybox/sh + /kaniko/executor -f `pwd`/Dockerfile `pwd` --insecure --skip-tls-verify --cache=true --destination=10.20.3.15:8081/jenkins-docker/hello-world:latest' + ''' } } } - stage('Build App and Make Image') { - steps { - echo 'Building App, Making Image and Pushing Image' - container(name: 'kaniko', shell: '/busybox/sh') { - dir("inventory-backend"){ - sh "pwd" - sh "ls" - sh '''#!/busybox/sh - /kaniko/executor -f `pwd`/Dockerfile -c `pwd` --cache=true --destination=nexus.mynisum.com:2376/ascend-kafka/ascend2-inventory-backend:latest - ''' - } - } - } - } + } }