@Library('shared-lib') _ import tech.avroid.scm.Git properties([ disableConcurrentBuilds(), parameters([ string(name: 'PROJECT_NAME', defaultValue: 'DevOps/jenkins-pipelines'), string(name: 'BRANCH_NAME', defaultValue: 'master') ]), ]) podTemplate(workspaceVolume: hostPathWorkspaceVolume(hostPath: "/data"), yaml: ''' apiVersion: v1 kind: Pod spec: containers: - name: linux image: harbor.avroid.tech/devops/base-build-image:1.0 tty: true resources: limits: cpu: 300m memory: 256Mi requests: cpu: 300m memory: 256Mi imagePullPolicy: Always imagePullSecrets: - name: harbor-registry-secret ''' ) { node(POD_LABEL) { stage('Get repository') { def git = new Git(this, "$env.JENKINS_GIT_CREDENTIALS_SSH") git.clone([urlRepo: "$env.JENKINS_GIT_REPOSITORY_SSH_URL/$params.PROJECT_NAME", branch: "$params.BRANCH_NAME"]) } stage('Run job dsl') { jobDsl( targets: 'jobs-dsl/folders/*.groovy\n' + 'jobs-dsl/jobs/**/*.groovy\n' + 'jobs-dsl/views/**/*.groovy', failOnSeedCollision: true, lookupStrategy: 'JENKINS_ROOT', removedJobAction: 'IGNORE', removedViewAction: 'IGNORE', removedConfigFilesAction: 'IGNORE' ) } } }