From 1320abb91d0afbe19f9ce9f823f23a28cf7b53e1 Mon Sep 17 00:00:00 2001 From: Gregory Hendrickson Date: Thu, 8 Jun 2023 14:18:12 -0700 Subject: [PATCH] jenks --- Jenkinsfile | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 Jenkinsfile diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 0000000..5e0bc60 --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,36 @@ +node { + def app + + stage('Clone repository') { + /* Let's make sure we have the repository cloned to our workspace */ + + checkout scm + } + + stage('Build image') { + /* This builds the actual image; synonymous to + * docker build on the command line */ + + app = docker.build("aisthanestha/docker-test-image") + } + + stage('Test image') { + /* Ideally, we would run a test framework against our image. + * For this example, we're using a Volkswagen-type approach ;-) */ + + app.inside { + sh 'echo "Tests passed"' + } + } + + stage('Push image') { + /* Finally, we'll push the image with two tags: + * First, the incremental build number from Jenkins + * Second, the 'latest' tag. + * Pushing multiple tags is cheap, as all the layers are reused. */ + docker.withRegistry('https://registry.hub.docker.com', 'docker-hub-credentials') { + app.push("${env.BUILD_NUMBER}") + app.push("latest") + } + } +} \ No newline at end of file