Add Jenkinsfile for Fetch and Backpack pipeline (#741)
* Add Jenkinsfile for Fetch and Backpack pipelinemaster
parent
185ba8b6da
commit
32542786a8
|
@ -0,0 +1,84 @@
|
||||||
|
podTemplate(label: 'node-0', containers: [
|
||||||
|
containerTemplate(
|
||||||
|
name: 'jnlp',
|
||||||
|
image: 'eggsy84/gcp-jenkins-slave-k8s-seed:latest',
|
||||||
|
ttyEnabled: false,
|
||||||
|
command: '',
|
||||||
|
privileged: true,
|
||||||
|
alwaysPullImage: false,
|
||||||
|
workingDir: '/home/jenkins',
|
||||||
|
args: '${computer.jnlpmac} ${computer.name}'
|
||||||
|
)
|
||||||
|
],
|
||||||
|
volumes: [
|
||||||
|
secretVolume(mountPath: '/opt/config', secretName: 'gcloud-svc-account'),
|
||||||
|
hostPathVolume(mountPath: '/var/run/docker.sock', hostPath: '/var/run/docker.sock'),
|
||||||
|
persistentVolumeClaim(claimName: 'data-claim-compile', mountPath: '/data'),
|
||||||
|
]
|
||||||
|
) {
|
||||||
|
node('node-0') {
|
||||||
|
stage('Compile') {
|
||||||
|
sh 'gcloud auth activate-service-account --key-file=/opt/config/gcloud-svc-account.json'
|
||||||
|
sh 'cd /data && rm -Rf *'
|
||||||
|
sh 'cd /data && git clone https://github.com/googlecartographer/cartographer_ros'
|
||||||
|
sh 'cd /data/cartographer_ros && docker build -f jenkins/Dockerfile.kinetic -t kinetic-jenkins-slave .'
|
||||||
|
}
|
||||||
|
stage('Push') {
|
||||||
|
sh 'docker tag kinetic-jenkins-slave eu.gcr.io/cartographer-141408/kinetic-jenkins-slave'
|
||||||
|
sh 'gcloud docker -- push eu.gcr.io/cartographer-141408/kinetic-jenkins-slave'
|
||||||
|
sh 'cd /data && rm -Rf *'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
podTemplate(label: 'node-1', containers: [
|
||||||
|
containerTemplate(
|
||||||
|
name: 'jnlp',
|
||||||
|
image: 'eu.gcr.io/cartographer-141408/kinetic-jenkins-slave:latest',
|
||||||
|
ttyEnabled: false,
|
||||||
|
command: '',
|
||||||
|
privileged: true,
|
||||||
|
alwaysPullImage: true,
|
||||||
|
workingDir: '/home/jenkins',
|
||||||
|
args: '${computer.jnlpmac} ${computer.name}'
|
||||||
|
)
|
||||||
|
],
|
||||||
|
volumes: [
|
||||||
|
secretVolume(mountPath: '/opt/config', secretName: 'gcloud-svc-account'),
|
||||||
|
hostPathVolume(mountPath: '/var/run/docker.sock', hostPath: '/var/run/docker.sock'),
|
||||||
|
persistentVolumeClaim(claimName: 'data-claim-compile', mountPath: '/data'),
|
||||||
|
]
|
||||||
|
) {
|
||||||
|
node('node-1') {
|
||||||
|
stage('Run Fetch Pipeline') {
|
||||||
|
sh 'gcloud auth activate-service-account --key-file=/opt/config/gcloud-svc-account.json'
|
||||||
|
sh 'GOOGLE_APPLICATION_CREDENTIALS="/opt/config/gcloud-svc-account.json" GOOGLE_CLOUD_DISABLE_GRPC=True python /worker.py --worker_id 0 --num_workers 1 --pipeline_id fetch'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
podTemplate(label: 'node-2', containers: [
|
||||||
|
containerTemplate(
|
||||||
|
name: 'jnlp',
|
||||||
|
image: 'eu.gcr.io/cartographer-141408/kinetic-jenkins-slave:latest',
|
||||||
|
ttyEnabled: false,
|
||||||
|
command: '',
|
||||||
|
privileged: true,
|
||||||
|
alwaysPullImage: true,
|
||||||
|
workingDir: '/home/jenkins',
|
||||||
|
args: '${computer.jnlpmac} ${computer.name}'
|
||||||
|
)
|
||||||
|
],
|
||||||
|
volumes: [
|
||||||
|
secretVolume(mountPath: '/opt/config', secretName: 'gcloud-svc-account'),
|
||||||
|
hostPathVolume(mountPath: '/var/run/docker.sock', hostPath: '/var/run/docker.sock'),
|
||||||
|
persistentVolumeClaim(claimName: 'data-claim-compile', mountPath: '/data'),
|
||||||
|
]
|
||||||
|
) {
|
||||||
|
node('node-2') {
|
||||||
|
stage('Run Backpack Pipeline') {
|
||||||
|
sh 'gcloud auth activate-service-account --key-file=/opt/config/gcloud-svc-account.json'
|
||||||
|
sh 'GOOGLE_APPLICATION_CREDENTIALS="/opt/config/gcloud-svc-account.json" GOOGLE_CLOUD_DISABLE_GRPC=True python /worker.py --worker_id 0 --num_workers 1 --pipeline_id backpack'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue