Reproduction Steps:
- Created Triggered Pipeline AutoClean job
- Add Trigger to Perforce server
- Submit a file to trigger path.
- Job runs.
- Allow it to run to completion.
- Submit a file to trigger path.
- Jobs runs.
- Press X on job before it gets to the sync stage. Result of job will be ABORTED.
- Submit a file to trigger path.
- Job DOES NOT run.
Check Perforce P4 Trigger Log. It shows
Last Perforce Change P4: Polling on: master with:jenkins-master-00405042-TriggeredBuildFailsAfterAbort-0 No previous build found... P4: Polling: No changes in previous build. P4: Polling error; no previous change. P4: No changes
Job will not run again until a manual build is performed.
Example Jenkinsfile (in editor is OK):
pipeline { agent { label 'docker-slave' } stages { stage("Get Sources") { steps { script { p4sync charset: 'none', credential: 'JenkinsMaster', populate: autoClean(delete: true, modtime: true, parallel: [enable: false, minbytes: '1024', minfiles: '1', threads: '4'], pin: '', quiet: false, replace: true, tidy: false), source: depotSource('''//depot/test/...''') } } } stage("Invoke Builds") { steps { println "Build code here." } } } }
Have attached the 'build.xml' of the aborted build and console log. Build.xml is missing TagAction.
Additionally:
If I manually strip TagAction from a build.xml then reboot the Jenkins machine all future polling is also broken. However so far I cannot abort a polled job at the correct time to cause the build.xml to be missing TagAction.