下面是我的詹金斯文件:




#!groovy


node('EJ2Release') {
    try {
        deleteDir()

        stage('Import') {
            git url: 'https://gitlab.syncfusion.com/essential-studio/ej2-groovy-scripts.git', branch: 'master', credentialsId: env.JENKINS_CREDENTIAL_ID
            shared = load 'src/shared.groovy'
        }

        stage('Checkout') {
            checkout scm
            shared.getProjectDetails()
            shared.gitlabCommitStatus('running')
        }

        if(shared.checkCommitMessage()) {
            stage('Install'){
                shared.install()
            }

            stage('Build') {
                sh 'npm run build'
            }

            stage('Publish') {
                shared.publish()
            }
            if(shared.isProtectedBranch()) {
                stage('SampleBrowser') {
                    shared.triggerSampleBrowserBuild()
                }
            }
        }

        shared.gitlabCommitStatus('success')
        deleteDir()
    }
    catch(Exception e) {
        println(e)
        shared.gitlabCommitStatus('failed')
        deleteDir()
        error('Build Failed')
    }
}






  以下是我的常规脚本-https://github.com/kumaresan-subramani/jenkins-build/blob/master/groovy


我想每2小时触发一次我的Jenkins构建,我尝试了很多选择,但对我来说没有运气。任何人都可以提出任何解决方案。

我已经在jenkins文件中尝试过以下内容:



#!groovy


node('EJ2Release') {
    try {
        deleteDir()
        triggers {
          pollSCM 'H/10 * * * *'
        }
        stage('Import') {
            git url: 'https://gitlab.syncfusion.com/essential-studio/ej2-groovy-scripts.git', branch: 'master', credentialsId: env.JENKINS_CREDENTIAL_ID
            shared = load 'src/shared.groovy'
        }
 ----------------etc----------
}

最佳答案

如果必须从SCM提交任何提交,则pollSCM触发器仅触发您的构建。

如果要在没有提交的情况下每2小时触发一次,则必须使用cron -trigger:

triggers {
    cron('0 */2 * * *')
}

09-04 22:07
查看更多