You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

61 lines
1.7 KiB
Groovy

pipeline {
agent {
kubernetes {
yaml """\
apiVersion: v1
kind: Pod
metadata:
name: 'jenkins-slave'
namespace: 'default'
spec:
containers:
- name: dind
image: "swr.eu-de.otc.t-systems.com/base-image/jenkins-dind"
imagePullPolicy: "IfNotPresent"
tty: true
command:
- "cat"
volumeMounts:
- mountPath: "/home/jenkins/agent"
name: "workspace-volume"
readOnly: false
env:
- name: PASS
valueFrom:
secretKeyRef:
name: docker-reg
key: pass
securityContext:
privileged: true
imagePullSecrets:
- name: default-secret
serviceAccountName: "jenkins-admin"
volumes:
- emptyDir:
medium: ""
name: "workspace-volume"
""".stripIndent()
}
}
stages {
stage('Build Docker Image') {
steps {
container('dind') {
script {
def image = "swr.eu-de.otc.t-systems.com/omnia-test/test-build:${env.BUILD_NUMBER}"
echo "FOO is ${env.BUILD_NUMBER}"
sh """
image="swr.eu-de.otc.t-systems.com/omnia-test/test-build:latest"
docker login \$PASS swr.eu-de.otc.t-systems.com
docker build -t ${image} .
docker push ${image}
"""
}
milestone(1)
}
}
}
}
}