2016-04-08 10 views
1

İş-dsl-core sürümünü 1.42'den 1.44'e yükseltmeyi planlıyoruz, ancak en son sürümde pullRequest {} kapatma işlemi kullanımdan kaldırıldı ve githubPullRequest ile değiştirildi {} buradaki taşıma belgesinde belirtildiği şekilde kapatma https://github.com/jenkinsci/job-dsl-plugin/wiki/Migration#github-pull-request-builder.job-dsl-core jar sürümü 1.44 olarak güncellendi & githubPullRequest kapatma çalışmıyor

No signature of method: javaposse.jobdsl.dsl.helpers.triggers.TriggerContext.githubpullRequest() is applicable for argument types: (com.xxx.dva.pipeline.generator.utils.JobUtil$_addGithubPullRequestBuilderConfig_closure2_closure22) values: [com.xxx.dva.pipeline.generator.util[email protected]7e3918d6] 
at sun.reflect.GeneratedConstructorAccessor17.newInstance(Unknown Source) 
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 
at java.lang.reflect.Constructor.newInstance(Constructor.java:422) 
at org.codehaus.groovy.reflection.CachedConstructor.invoke(CachedConstructor.java:77) 
at org.codehaus.groovy.runtime.callsite.ConstructorSite$ConstructorSiteNoUnwrapNoCoerce.callConstructor(ConstructorSite.java:102) 
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractCallSite.java:198) 
at javaposse.jobdsl.dsl.AbstractExtensibleContext.methodMissing(AbstractExtensibleContext.groovy:20) 
at sun.reflect.GeneratedMethodAccessor10.invoke(Unknown Source) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
at java.lang.reflect.Method.invoke(Method.java:497) 
at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90) 
at groovy.lang.MetaClassImpl.invokeMissingMethod(MetaClassImpl.java:830) 
at groovy.lang.MetaClassImpl.invokePropertyOrMissing(MetaClassImpl.java:1128) 
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1081) 
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:903) 
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:723) 

kod değişimini: Yukarıdaki öneri ile bizim kodunu güncellemek için çalıştığımda, şu hatayı alıyorum

Sürüm 1,42

job.triggers { 
     pullRequest { 
      admin(JobConstants.GITHUB_PR_ADMIN) 
      orgWhitelist(JobConstants.ORG_WHITE_LIST) 
      cron('* * * * *') 
      permitAll() 
      allowMembersOfWhitelistedOrgsAsAdmin() 
      triggerPhrase(phrase) 
      onlyTriggerPhrase(useTriggerPhrase) 
      extensions { 
       commitStatus { 
        context('Pull Request Pipeline') 
        triggeredStatus('Build Triggered!') 
        startedStatus('Build Started!') 
        completedStatus('SUCCESS', 'Went green! Go ahead and merge ${ghprbSourceBranch} into ${ghprbTargetBranch}.') 
        completedStatus('FAILURE', 'Something went wrong. Click details!') 
        completedStatus('ERROR', 'Something went really wrong. Click details!') 
       } 
      } 
     } 
    } 

Sürüm 1,44

job.triggers { 
     githubPullRequest { 
      admin(JobConstants.GITHUB_PR_ADMIN) 
      orgWhitelist(JobConstants.ORG_WHITE_LIST) 
      cron('* * * * *') 
      permitAll() 
      allowMembersOfWhitelistedOrgsAsAdmin() 
      triggerPhrase(phrase) 
      onlyTriggerPhrase(useTriggerPhrase) 
      extensions { 
       commitStatus { 
        context('Pull Request Pipeline') 
        triggeredStatus('Build Triggered!') 
        startedStatus('Build Started!') 
        completedStatus('SUCCESS', 'Went green! Go ahead and merge ${ghprbSourceBranch} into ${ghprbTargetBranch}.') 
        completedStatus('FAILURE', 'Something went wrong. Click details!') 
        completedStatus('ERROR', 'Something went really wrong. Click details!') 
       } 
      } 
     } 
    } 

Bu sorunu nasıl düzeltebilirim?

cevap

2

GitHub Pull Request Builder eklentisi için yerleşik destek, Job DSL 1.43'te kullanımdan kaldırılmıştır. Yeni sözdizimi, uzantı yoluyla GitHub Pull Request Builder eklentisinin 1.29.7 veya sonraki sürümü tarafından sağlanır. Bu yüzden GitHub Pull Request Builder eklentisini 1.29.7 veya daha yenisine güncellemeniz gerekir.

+0

Bizim jenkins içinde ghprb 1.31.2 kullanılarak ve ben gpprb ithal iş dsl-core.Should aracılığıyla yapılandırmak için çalışıyoruz benim mavenproject & kullan? org.jenkins-ci.plugins ghprb 1.31.3 bu ve hala aynı hatayı çalıştı. Bunu nasıl kodlayabilirim, söyler misin? – Nari

+1

Jenkins'in dışından çalışırken DSL'i bir uzantıdan kullanamazsınız. Umarım bunu gelecekte çözebilirim. Ancak şimdilik, kullanımdan kaldırılma uyarılarını yoksayabilir veya bunun yerine bir [Yapılandır Blok] (https://github.com/jenkinsci/job-dsl-plugin/wiki/The-Configure-Block) kullanabilirsiniz. – daspilker

0

tek yolu manuel konfigürasyon bloğuna geri düşmek etmektir:

job.configure { 
      def trigger = it/triggers 
      trigger << 'org.jenkinsci.plugins.ghprb.GhprbTrigger' { 
       adminlist JobConstants.GITHUB_PR_ADMIN 
       whitelist '' 
       orgslist JobConstants.ORG_WHITE_LIST 
       cron '* * * * *' 
       spec '* * * * *' 
       triggerPhrase phrase 
       onlyTriggerPhrase false 
       useGitHubHooks false 
       permitAll true 
       autoCloseFailedPullRequests false 
       commentFilePath '' 
       allowMembersOfWhitelistedOrgsAsAdmin true 
       extensions { 
        'org.jenkinsci.plugins.ghprb.extensions.status.GhprbSimpleStatus' { 
         commitStatusContext 'Pull Request Pipeline' 
         triggeredStatus 'Build Triggered!' 
         startedStatus 'Build Started!' 
         statusUrl '' 
         completedStatus { 
          'org.jenkinsci.plugins.ghprb.extensions.comments.GhprbBuildResultMessage' { 
           message 'Went green! Go ahead and merge ${ghprbSourceBranch} into ${ghprbTargetBranch}.' 
           result 'SUCCESS' 
          } 
          'org.jenkinsci.plugins.ghprb.extensions.comments.GhprbBuildResultMessage' { 
           message 'Something went wrong. Click details!' 
           result 'FAILURE' 
          } 
          'org.jenkinsci.plugins.ghprb.extensions.comments.GhprbBuildResultMessage' { 
           message 'Something went really wrong. Click details!' 
           result 'ERROR' 
          } 
         } 
        } 
       } 
      } 
     } 
İlgili konular