Compare commits
	
		
			2 Commits
		
	
	
		
			78f2d896b6
			...
			92cd1da6f0
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 92cd1da6f0 | |||
| f8854b4fa6 | 
							
								
								
									
										102
									
								
								Jenkinsfile
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										102
									
								
								Jenkinsfile
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,102 @@ | |||||||
|  | def IMAGE_TAG = "" | ||||||
|  | pipeline { | ||||||
|  |     agent { | ||||||
|  |         kubernetes { | ||||||
|  |             yaml """ | ||||||
|  | apiVersion: v1 | ||||||
|  | kind: Pod | ||||||
|  | metadata: | ||||||
|  |   name: kaniko | ||||||
|  | spec: | ||||||
|  |   containers: | ||||||
|  |   - name: kaniko | ||||||
|  |     image: gcr.io/kaniko-project/executor:debug | ||||||
|  |     imagePullPolicy: Always | ||||||
|  |     command: | ||||||
|  |     - /busybox/cat | ||||||
|  |     tty: true | ||||||
|  |     volumeMounts: | ||||||
|  |       - name: jenkins-docker-cfg | ||||||
|  |         mountPath: /kaniko/.docker | ||||||
|  |   volumes: | ||||||
|  |   - name: jenkins-docker-cfg | ||||||
|  |     projected: | ||||||
|  |       sources: | ||||||
|  |       - secret: | ||||||
|  |           name: docker-credentials | ||||||
|  |           items: | ||||||
|  |             - key: data | ||||||
|  |               path: config.json | ||||||
|  | """ | ||||||
|  |         } | ||||||
|  |     } | ||||||
|  |     environment { | ||||||
|  |         IMAGE_PUSH_DESTINATION="ghcr.io/ruakij/routingtabletowg" | ||||||
|  |     } | ||||||
|  |     stages { | ||||||
|  |         stage("Pre-build") { | ||||||
|  |             steps { | ||||||
|  | 
 | ||||||
|  |                 script{ | ||||||
|  |                     //checkout scm | ||||||
|  |                     checkout([ | ||||||
|  |                         $class: 'GitSCM', | ||||||
|  |                         branches: scm.branches, | ||||||
|  |                         doGenerateSubmoduleConfigurations: scm.doGenerateSubmoduleConfigurations, | ||||||
|  |                         extensions: scm.extensions + [[$class: 'CloneOption', noTags: false, reference: '', shallow: true]], | ||||||
|  |                         submoduleCfg: [], | ||||||
|  |                         userRemoteConfigs: scm.userRemoteConfigs | ||||||
|  |                     ]) | ||||||
|  | 
 | ||||||
|  |                     def version = sh (returnStdout: true, script: "git describe --tags --long --always $GIT_COMMIT").trim() | ||||||
|  |                     def gitCommit = sh (returnStdout: true, script: "git rev-parse --short $GIT_COMMIT").trim() | ||||||
|  |                     echo "Version: $version" | ||||||
|  |                     echo "Git Commit: $gitCommit" | ||||||
|  | 
 | ||||||
|  |                     IMAGE_TAG = "--destination $IMAGE_PUSH_DESTINATION:$gitCommit " | ||||||
|  |                      | ||||||
|  |                     if (GIT_BRANCH == "main") { | ||||||
|  |                         IMAGE_TAG += "--destination $IMAGE_PUSH_DESTINATION:latest " | ||||||
|  | 
 | ||||||
|  |                         if(version != gitCommit){ | ||||||
|  |                             def parts = version.split('.') | ||||||
|  |                             if(parts.size() > 0){ | ||||||
|  |                                 for (int i = 0; i < parts.size(); i++) { | ||||||
|  |                                     def versionTag = parts[0..i].join(".") | ||||||
|  |                                     IMAGE_TAG += "--destination $IMAGE_PUSH_DESTINATION:$versionTag " | ||||||
|  |                                 } | ||||||
|  |                             } | ||||||
|  |                         } | ||||||
|  |                     } else { | ||||||
|  |                         IMAGE_TAG += "--destination $IMAGE_PUSH_DESTINATION:$GIT_BRANCH " | ||||||
|  | 
 | ||||||
|  |                         if(version != gitCommit){ | ||||||
|  |                             def parts = version.split('.') | ||||||
|  |                             if(parts.size() > 0){ | ||||||
|  |                                 for (int i = 0; i < parts.size(); i++) { | ||||||
|  |                                     def versionTag = parts[0..i].join(".") | ||||||
|  |                                     IMAGE_TAG += "--destination $IMAGE_PUSH_DESTINATION:$GIT_BRANCH-$versionTag " | ||||||
|  |                                 } | ||||||
|  |                             } | ||||||
|  |                         } | ||||||
|  |                     } | ||||||
|  |                      | ||||||
|  |                     echo "Image-Tags: $IMAGE_TAG" | ||||||
|  |                 } | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  |          | ||||||
|  |         stage('Build with Kaniko') { | ||||||
|  |             steps { | ||||||
|  |                 container(name: 'kaniko', shell: '/busybox/sh') { | ||||||
|  |                     withEnv(['PATH+EXTRA=/busybox', "IMAGE_TAG=$IMAGE_TAG"]) { | ||||||
|  |                         // Use the image tag variable as part of the image name when you build and push the image with kaniko | ||||||
|  |                         sh '''#!/busybox/sh | ||||||
|  |                             /kaniko/executor --context `pwd` --force $IMAGE_TAG | ||||||
|  |                         ''' | ||||||
|  |                     } | ||||||
|  |                 } | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  |     } | ||||||
|  | } | ||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user