Some checks failed
		
		
	
	andreas-personal/AndysAdguardHomeBlocklist/pipeline/head There was a failure building this commit
				
			
		
			
				
	
	
		
			83 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Groovy
		
	
	
	
	
	
			
		
		
	
	
			83 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Groovy
		
	
	
	
	
	
| #!groovy
 | |
| 
 | |
| pipeline {
 | |
|     agent {
 | |
|         label 'linux'
 | |
|     }
 | |
|     triggers {
 | |
|         cron('H 12,0 * * *')
 | |
|     }
 | |
|     stages {
 | |
|         stage('Checkout') {
 | |
|             when {
 | |
|                 beforeAgent true;
 | |
|                 branch 'main'
 | |
|             }
 | |
|             steps {
 | |
|                 sh 'git checkout main'
 | |
|             }
 | |
|         }
 | |
|         stage('Check last Commit') {
 | |
|             when {
 | |
|                 beforeAgent true;
 | |
|                 branch 'main'
 | |
|             }
 | |
|             steps {
 | |
|                 script {
 | |
|                     def causes = currentBuild.getBuildCauses()
 | |
|                     echo "Build causes: ${causes}"
 | |
|                     def causedByScmEvent = causes.any {
 | |
|                         it._class == 'hudson.triggers.SCMTrigger$SCMTriggerCause' ||
 | |
|                         it._class == 'jenkins.branch.BranchEventCause'
 | |
|                     }
 | |
|                     echo "Caused by SCM event: ${causedByScmEvent}"
 | |
|                     if (!causedByScmEvent) {
 | |
|                         echo 'Not triggered by SCM, continuing build'
 | |
|                     } else if (sh(script: 'git log -1 --pretty=format:"%an"', returnStdout: true).trim() == 'Jenkins') {
 | |
|                         currentBuild.result = 'ABORTED'
 | |
|                         error('Last commit was by Jenkins, skipping build')
 | |
|                     } else {
 | |
|                         echo 'Last commit was not by Jenkins, continuing build'
 | |
|                     }
 | |
|                 }
 | |
|             }
 | |
|         }
 | |
|         stage('Compile Adblock List') {
 | |
|             when {
 | |
|                 beforeAgent true;
 | |
|                 branch 'main'
 | |
|             }
 | |
|             steps {
 | |
|                 withGradle {
 | |
|                     sh './gradlew :compileAdblockList'
 | |
|                 }
 | |
|                 sh '''                    
 | |
|                     git add out/andysadguardhomeblocklist.txt
 | |
|                     git commit -m "Update Compiled Adblock List"
 | |
|                 '''
 | |
|             }
 | |
|         }
 | |
|         stage('git push') {
 | |
|             when {
 | |
|                 beforeAgent true;
 | |
|                 branch 'main'
 | |
|             }
 | |
|             steps {
 | |
|                 withCredentials([
 | |
|                     gitUsernamePassword(credentialsId: 'gitea-jenkins-user-token')
 | |
|                 ]) {
 | |
|                     sh '''
 | |
|                         git pull origin main
 | |
|                         git push
 | |
|                     '''
 | |
|                 }
 | |
|             }
 | |
|         }
 | |
|     }
 | |
|     post {
 | |
|         always {
 | |
|             deleteDir()
 | |
|         }
 | |
|     }
 | |
| }
 |