Jenkins job-dsl сгенерировал задание без SCM

У меня есть начальная работа по созданию рабочих мест Jenkins, и хотя рабочие места созданы, им не хватает таких вещей, как SCM, ярлыки и оболочки.

Вот простой сценарий, который создается:

job(jobName) {
  label('pdfs')
  description jobDesc
  parameters {
    textParam('PDF_BRANCH', 'release/server_2.11.1', '')
  }
  scm {
    git {
      remote {
        url('https://stash.domain.com/scm/project/repo.git')
        credentials('repo-user-creds')
      }
      branch('*/master')
    }
  }
  triggers {
    scm 'H/5 * * * *'
  }
  steps {
    shell jobScript
  }
  wrappers {
    rbenv('1.9.3-p484') {
      ignoreLocalVersion()
      gems('bundler', 'rake')
    }
  }
}

Но получившееся задание не имеет SCM или ярлыка:  введите здесь описание изображения Кажется, что XML на сервере включает SCM и метку:

<?xml version="1.0" encoding="UTF-8"?><project>
    <actions/>
    <description>Testing pdf creation job against Elemental Server</description>
    <keepDependencies>false</keepDependencies>
    <properties>
        <hudson.model.ParametersDefinitionProperty>
            <parameterDefinitions>
                <hudson.model.TextParameterDefinition>
                    <name>PDF_BRANCH</name>
                    <defaultValue>release/server_2.11.1</defaultValue>
                    <description/>
                </hudson.model.TextParameterDefinition>
            </parameterDefinitions>
        </hudson.model.ParametersDefinitionProperty>
    </properties>
    <canRoam>false</canRoam>
    <disabled>false</disabled>
    <blockBuildWhenDownstreamBuilding>false</blockBuildWhenDownstreamBuilding>
    <blockBuildWhenUpstreamBuilding>false</blockBuildWhenUpstreamBuilding>
    <triggers>
        <hudson.triggers.SCMTrigger>
            <spec>H/5 * * * *</spec>
            <ignorePostCommitHooks>false</ignorePostCommitHooks>
        </hudson.triggers.SCMTrigger>
    </triggers>
    <concurrentBuild>false</concurrentBuild>
    <builders>
        <hudson.tasks.Shell>
            <command>
# REMOVED FOR BREVITY
</command>
        </hudson.tasks.Shell>
    </builders>
    <publishers/>
    <buildWrappers>
        <ruby-proxy-object>
            <ruby-object ruby-class="Jenkins::Tasks::BuildWrapperProxy" pluginid="rbenv">
                <pluginid ruby-class="String" pluginid="rbenv">rbenv</pluginid>
                <object ruby-class="RbenvWrapper" pluginid="rbenv">
                    <version ruby-class="String" pluginid="rbenv">1.9.3-p484</version>
                    <ignore__local__version ruby-class="String" pluginid="rbenv">true</ignore__local__version>
                    <gem__list ruby-class="String" pluginid="rbenv">bundler,rake</gem__list>
                    <rbenv__root ruby-class="String" pluginid="rbenv">$HOME/.rbenv</rbenv__root>
                    <rbenv__repository ruby-class="String" pluginid="rbenv">https://github.com/sstephenson/rbenv.git</rbenv__repository>
                    <rbenv__revision ruby-class="String" pluginid="rbenv">master</rbenv__revision>
                    <ruby__build__repository ruby-class="String" pluginid="rbenv">https://github.com/sstephenson/ruby-build.git</ruby__build__repository>
                    <ruby__build__revision ruby-class="String" pluginid="rbenv">master</ruby__build__revision>
                </object>
            </ruby-object>
        </ruby-proxy-object>
    </buildWrappers>
    <assignedNode>pdfs</assignedNode>
    <scm class="hudson.plugins.git.GitSCM">
        <userRemoteConfigs>
            <hudson.plugins.git.UserRemoteConfig>
                <url>https://stash.domain.com/scm/project/repo.git</url>
                <credentialsId>repo-user-creds</credentialsId>
            </hudson.plugins.git.UserRemoteConfig>
        </userRemoteConfigs>
        <branches>
            <hudson.plugins.git.BranchSpec>
                <name>*/master</name>
            </hudson.plugins.git.BranchSpec>
        </branches>
        <configVersion>2</configVersion>
        <doGenerateSubmoduleConfigurations>false</doGenerateSubmoduleConfigurations>
        <gitTool>Default</gitTool>
    </scm>

Я новичок в Jenkins job-dsl, поэтому я уверен, что мне не хватает чего-то довольно очевидного, но я просто не знаю, что это такое. Любая помощь очень ценится, спасибо!


person Resisty    schedule 11.10.2017    source источник
comment
так у вас установлен плагин git?   -  person KeepCalmAndCarryOn    schedule 12.10.2017
comment
Да, я могу вручную добавить источник SCM, выбрать учетные данные и т. Д., И это сработает.   -  person Resisty    schedule 12.10.2017


Ответы (2)


Найдите ошибки в журналах Jenkins и попробуйте перезапустить Jenkins.

В вики-странице Job DSL есть соответствующая запись в часто задаваемых вопросах: https://github.com/jenkinsci/job-dsl-plugin/wiki/Frequent-Asked-Questions#why-isnt-my-generated-job-like-i-was-expecting-there-was-no-error-when-the-seed-job-ran

person daspilker    schedule 14.10.2017

Попробуйте проверить свой код здесь рабочая площадка DSL

Если все теги работают нормально, возможно, вам придется проверить версию плагина DSL и любые обновления методов DSL.

person Anurag    schedule 15.11.2017