steps - jenkins pipeline tutorial español
DSL de trabajo para crear un trabajo tipo "Pipeline" (4)
En Job DSL, la canalización todavía se llama flujo de trabajo, vea workflowJob .
La próxima versión de Job DSL contendrá algunas mejoras para las tuberías, por ejemplo, JENKINS-32678 .
Instalé el Pipeline Plugin
que antes se llamaba como Workflow Plugin
.
https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+Plugin
Quiero saber cómo puedo usar Job Dsl para crear y configurar un trabajo que es de tipo Pipeline
Si está utilizando un repositorio git, agregue un archivo llamado Jenkinsfile en el directorio raíz de su repositorio. Esto debería contener su trabajo dsl.
Deberías usar pipelineJob
.
Ejemplo:
pipelineJob(''Pipeline'') {
definition {
cps {
sandbox()
script("""
node {
stage(''init'') {
build ''Pipeline-init''
}
stage(''build'') {
build ''Pipeline-build''
}
}
""".stripIndent())
}
}
}
Creo que esta pregunta es preguntar cómo usar el DSL de trabajo para crear un trabajo de interconexión que haga referencia al Jenkinsfile para el proyecto y no combine la creación de trabajos con las definiciones de pasos detalladas que se han proporcionado en las respuestas hasta la fecha. Esto tiene sentido: la creación de trabajos de Jenkins y la configuración de metadatos (descripción, disparadores, etc.) podrían pertenecer a los administradores de Jenkins, pero el equipo de desarrollo debería tener control sobre lo que hace realmente el trabajo.
@meallhour, ¿está debajo de lo que buscas? (funciona como en Job DSL 1.64)
pipelineJob(''DSL_Pipeline'') {
def repo = ''https://github.com/path/to/your/repo.git''
triggers {
scm(''H/5 * * * *'')
}
description("Pipeline for $repo")
definition {
cpsScm {
scm {
git {
remote { url(repo) }
branches(''master'', ''**/feature*'')
scriptPath(''misc/Jenkinsfile.v2'')
extensions { } // required as otherwise it may try to tag the repo, which you may not want
}
// the single line below also works, but it
// only covers the ''master'' branch and may not give you
// enough control.
// git(repo, ''master'', { node -> node / ''extensions'' << '''' } )
}
}
}
}
Ref la Job DSL pipelineJob: https://jenkinsci.github.io/job-dsl-plugin/#path/pipelineJob , y hackearla en http://job-dsl.herokuapp.com/ para ver las configuraciones generadas .