2014-09-19 5 views
2

Кто-нибудь есть пример кода для правильногоРедкий заказ с Jenkins DSL Plugin?

configure { ... } 

блока, необходимого в плагине Дженкинс DSL, чтобы настроить GIT редкую проверку?

Он появляется, как будто секция config.xml выглядит следующим образом:

<extensions> 
    <hudson.plugins.git.extensions.impl.CloneOption> 
    <shallow>false</shallow> 
    <reference>/build/jenkins/codebase.git</reference> 
    </hudson.plugins.git.extensions.impl.CloneOption> 
    <hudson.plugins.git.extensions.impl.SparseCheckoutPaths> 
    <sparseCheckoutPaths> 
     <hudson.plugins.git.extensions.impl.SparseCheckoutPath> 
     <path>BillOfMaterials.yml</path> 
     </hudson.plugins.git.extensions.impl.SparseCheckoutPath> 
     <hudson.plugins.git.extensions.impl.SparseCheckoutPath> 
     <path>jenkins/job/</path> 
     </hudson.plugins.git.extensions.impl.SparseCheckoutPath> 
    </sparseCheckoutPaths> 
    </hudson.plugins.git.extensions.impl.SparseCheckoutPaths> 
</extensions> 
+0

Вы можете иметь лучший успех со страницей Дженкинс Job-DSL группы https://groups.google.com/forum/#!forum/job-dsl-plugin. Это в глобальной конфигурации Jenkins? – KeepCalmAndCarryOn

+0

Спасибо, прошу там тоже ... –

ответ

7
job('job1') { 
    description 'sparse checkout example' 
    scm { 
     git { 
      reference('/build/jenkins/codebase.git') 
      configure { git -> 
       git/'extensions'/'hudson.plugins.git.extensions.impl.SparseCheckoutPaths'/'sparseCheckoutPaths' { 
        ['mypath1', 'mypath2', 'mypath3'].each { mypath -> 
         'hudson.plugins.git.extensions.impl.SparseCheckoutPath' { 
          path("${mypath}") 
         } 
        } 
       } 
      } 
     } 
    } 
} 
+0

У меня, к сожалению, нет хорошего способа проверить это, так как я решил о другой стратегии реализации ... Согласно http://job-dsl.herokuapp.com/ this выглядит правильно. –

+0

Он работает для меня – kodstark

1

Добавление на ответ дается «NBSP» я должен был добавить следующие смелые ключевые слова (заключенный в две звездочки, если жирным шрифтом не видно), чтобы заставить его работать. Надеюсь, это поможет кому-то. :)

configure { git -> 
       git/'extensions'/'hudson.plugins.git.extensions.impl.SparseCheckoutPaths' { 
         **sparseCheckoutPaths {** 
          sparseCheckoutPath.each { checkoutPath -> 
           'hudson.plugins.git.extensions.impl.SparseCheckoutPath' { 
            path("${checkoutPath}") 
           } 
          } 
         **}** 
       } 
      }