我正在编写一个Java程序,它要求其(技术)用户编写它用作输入的脚本;它将这些脚本解释为一系列操作并执行它们。我目前正在寻找实现脚本/配置语言的最干净的方法。我最初想沿着XML路线前进,但所需输入的性质实际上是一个需要执行的过程性的、线性的动作流:
function move(Block b, Position p) {
// user-defined algorithm for moving block "b" to position "p"
}
Block a = getBlockA();
Position p = getPositionP();
我想在DSL文件中加载一个groovy文件。如果我处理DSL文件,我收到以下错误消息:
Processing DSL script folderA/job.dsl
ERROR: (job.dsl, line 2) No signature of method: job.load() is applicable for argument types: (org.codehaus.groovy.runtime.GStringImpl) values: [./build.groovy ]
Possible solutions: find(), job(java.lang.String), find(
我希望使用groovy创建一个新的dsl,但我找不到让groovy读取DSL的最佳方法。我希望用户能够创建dsl并实际运行dsl,而不必与应用程序代码对话。
game.groovy (作为数字用户线):
import com.foo.groovygame.Game
go north 10
search
find ana
turn right
我希望用户能够说:
groovy game.groovy
它将运行游戏。我意识到我可以这样做:
groovy Game game.groovy
但我更希望能够直接运行dsl。
我注意到作者在上使用了
Ronald.init(this)
我可以这样做,并让
当我在jenkins脚本中创建一个新变量(MY_VARIABLE)时,出现了以下错误。在脚本中,我只想创建一个变量并赋值一些默认值并打印出来。
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.g
我正在尝试将一个referencedParameter (“产品”)发送到一个Groovy脚本(services.groovy),这个脚本由用activeChoiceReactiveParam包装的命令readFileFromWorkspace触发。
预期结果:获取包含文件内容的下拉列表。
实际结果:处理DSL脚本时作业失败
ERROR: (services.groovy, line 5) No such property: product for class: dsl.jobs.argocd.services
我试图将产品引用参数定义为一个环境变量(并在services.groovy脚本中更
我正在尝试将Job动态加载到Jenkins中,有一个包含Job名称和GHE URL的文件: GHE文件urls: options A
https://github.com/I/A/build.groovy
options B
https://github.com/I/B/build.groovy
options C
https://github.com/I/C/build.groovy 使用下面的bash脚本,我可以创建一个新的Repo (A,B,C)目录,并在管道scm中使用GHE URL,我如何在groovy dsl中实现这一点: while read -r line; do
我偶然发现jenkins job在git repo上创建新的版本标签时触发jenkins,但是想知道groovy job DSL脚本的等价物是什么。 https://mohamicorp.atlassian.net/wiki/spaces/DOC/pages/136740885/Triggering+Jenkins+Based+on+New+Tags ? 这里还链接到相同的问题,但没有groovy作业DSL脚本版本jenkins trigger build if new tag is released 如何知道如何基于jenkins作业设置编写groovy作业DSL脚本?当涉及到将j
当我试着跑
分级“任务”
我得到以下错误消息:
(我显然错过了一些jenkins插件)
* What went wrong:
Error resolving plugin [id: 'com.terrafolio.jenkins', version: '1.3.2'].
> Could not resolve all dependencies for configuration 'detachedConfiguration1'.
> Could not find org.jenkins-ci.plugins:job-dsl
我只使用程序方式(没有用户界面)来配置jenkins。
我有一个停靠映像,在这里我安装了插件(与作业-dsl:最新):
FROM jenkins/jenkins:lts
USER root
ARG DOCKER_GROUP_ID
RUN groupadd -g $DOCKER_GROUP_ID docker
RUN usermod -a -G docker jenkins
USER jenkins
COPY templates/plugins/plugins.txt /usr/share/jenkins/plugins.txt
RUN /usr/local/bin/install-plug