Невозможно создать переменную в сценарии оболочки DSL jenkins - PullRequest
0 голосов
/ 22 мая 2018

Я получил ошибку ниже, когда я создаю новую переменную (MY_VARIABLE) в сценарии оболочки jenkins.В сценарии оболочки jenkins dsl я просто хочу создать переменную, назначить некоторое значение по умолчанию и распечатать его.

javaposse.jobdsl.dsl.DslScriptException: (script, line 12) No such property: MY_VARIABLE for class: javaposse.jobdsl.dsl.jobs.FreeStyleJob
at javaposse.jobdsl.dsl.AbstractDslScriptLoader.runScriptEngine(AbstractDslScriptLoader.groovy:112)
at javaposse.jobdsl.dsl.AbstractDslScriptLoader$_runScripts_closure1.doCall(AbstractDslScriptLoader.groovy:59)
at javaposse.jobdsl.dsl.AbstractDslScriptLoader.runScripts(AbstractDslScriptLoader.groovy:46)
at javaposse.jobdsl.dsl.AbstractDslScriptLoader$runScripts$0.callCurrent(Unknown Source)
at javaposse.jobdsl.dsl.AbstractDslScriptLoader.runScript(AbstractDslScriptLoader.groovy:85)
at javaposse.jobdsl.dsl.AbstractDslScriptLoader$runScript.call(Unknown Source)
at com.sheehan.jobdsl.DslScriptExecutor.execute(DslScriptExecutor.groovy:27)
at com.sheehan.jobdsl.ScriptExecutor$execute.call(Unknown Source)

Код Дженкинса

job('ci') {
    description 'Build and test the app.'

    scm {
        github 'sheehan/job-dsl-playground'
    }
    steps {
        gradle 'test'
    }
    shell("""#!/bin/bash 
        MY_VARIABLE=5
        echo $MY_VARIABLE
    """)
    publishers {
        archiveJunit 'build/test-results/**/*.xml'
    }
 }

1 Ответ

0 голосов
/ 22 мая 2018

Попробуйте убежать от символа доллара:

job('ci') {
    description 'Build and test the app.'

    scm {
        github 'sheehan/job-dsl-playground'
    }
    steps {
        gradle 'test'
    }
    shell("""#!/bin/bash 
        MY_VARIABLE=5
        echo \$MY_VARIABLE
    """)
    publishers {
        archiveJunit 'build/test-results/**/*.xml'
    }
 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...