Browse Source

add jenkins file

Benjamin Kornblum 8 months ago
parent
commit
885f09a603
1 changed files with 36 additions and 0 deletions
  1. 36 0
      Jenkinsfile

+ 36 - 0
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("strapi:latest")
+        
+    }
+
+    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://container.kornblum.dev', 'container-kornblum-dev') {
+                app.push("${env.BUILD_NUMBER}")
+                app.push("latest")
+            }
+    }
+}