我们想要将Jenkins主目录检入Github,当然忽略了一些文件/文件夹。由于我们希望通过代码定义所有内容,因此我们尝试使用Job DSL&管道DSL(不是在Jenkins GUI中编写管道脚本,而是从工作区文件中读取它 - 见下文)。
我现在的问题是,对于这两种DSL都不是很精通,我不知道如何强制git对远程仓库进行初始克隆(后来推送) 主目录 - 作业目录的父目录。
我试过这个管道:
node('master') {
dir('../..') {
scm {
git {
remote {
github('company/repo', 'https')
credentials('xyz')
}
}
}
}
}
作业本身的定义如下:
pipelineJob('backup') {
definition {
cps {
script(readFileFromWorkspace('pipelines/backup.groovy'))
sandbox(true)
}
}
}
作业失败并显示以下错误消息:
ERROR: ‘checkout scm’ is only available when using “Multibranch Pipeline” or “Pipeline script from SCM”
所以我猜上面使用的'pipelineJob(备份)'不合适。我应该改变这个,以及是否,如何或应该采取另一种方法?
另一个尝试是尝试重写这样的管道:
node {
dir('../..') {
git url: 'https://github.com/company/repo.git'
}
}
但是由于缺少证书而无法正常工作......