From b616b391918777f7a460c067eb6b21abc3459e8c Mon Sep 17 00:00:00 2001 From: fatih-gumus Date: Tue, 30 Dec 2025 13:24:22 +0300 Subject: [PATCH 01/11] readme modified --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index a8ee7312..0f6bad46 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ Example Voting App ========= -Getting started +Getting started modified --------------- Download [Docker](https://www.docker.com/products/overview). If you are on Mac or Windows, [Docker Compose](https://docs.docker.com/compose) will be automatically installed. On Linux, make sure you have the latest version of [Compose](https://docs.docker.com/compose/install/). If you're using [Docker for Windows](https://docs.docker.com/docker-for-windows/) on Windows 10 pro or later, you must also [switch to Linux containers](https://docs.docker.com/docker-for-windows/#switch-between-windows-and-linux-containers). From ceaeaf44bb52ca162299731ebc9e0307478a868a Mon Sep 17 00:00:00 2001 From: fatih-gumus Date: Tue, 30 Dec 2025 14:23:43 +0300 Subject: [PATCH 02/11] Jenkinsfile added --- Jenkinsfile | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 Jenkinsfile diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 00000000..67eed2cd --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,26 @@ +pipeline { + agent any + + stages { + stage('one') { + steps { + echo 'step 1' + } + } + stage('two') { + steps { + echo 'step 2' + } + } + stage('three') { + steps { + echo 'step 3' + } + } + } + post { + always{ + echo 'This pipeline is completed.' + } + } +} From 03665d0845147805f4f22795c12b8d68b4b6d5fd Mon Sep 17 00:00:00 2001 From: fatih-gumus Date: Wed, 31 Dec 2025 10:51:27 +0300 Subject: [PATCH 03/11] when conditional added --- Jenkinsfile | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Jenkinsfile b/Jenkinsfile index 67eed2cd..c986de24 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -13,8 +13,13 @@ pipeline { } } stage('three') { + when { + branch 'master' + changeset "**/worker/**" + } steps { echo 'step 3' + sleep(time: 5, unit: 'SECONDS') } } } From f985208992a96d69e206895f5c8055778c4e7b71 Mon Sep 17 00:00:00 2001 From: fatih-gumus Date: Wed, 31 Dec 2025 11:21:11 +0300 Subject: [PATCH 04/11] Jenkinsfile added for worker with build job --- worker/Jenkinsfile | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 worker/Jenkinsfile diff --git a/worker/Jenkinsfile b/worker/Jenkinsfile new file mode 100644 index 00000000..96f71435 --- /dev/null +++ b/worker/Jenkinsfile @@ -0,0 +1,39 @@ +pipeline { + agent any + + tools { + maven 'maven 3.9.8' + } + + stages { + stage('build') { + steps { + echo 'compiling worker app' + dir('worker') { + sh 'mvn compile' + } + } + } + stage('test') { + steps { + echo 'Running Unit Tests on worker app' + // dir('worker') { + // sh 'mvn test' + // } + } + } + stage('package') { + steps { + echo 'Packaging worker app' + // dir('worker') { + // sh 'mvn package' + // } + } + } + } + post { + always{ + echo 'Building multibranch pipeline for worker app is completed.' + } + } +} From 5921e0feb36c236d99940071b09c5dd5d4b812bd Mon Sep 17 00:00:00 2001 From: fatih-gumus Date: Wed, 31 Dec 2025 11:29:47 +0300 Subject: [PATCH 05/11] Jenkinsfile modified for worker with build job --- worker/Jenkinsfile | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/worker/Jenkinsfile b/worker/Jenkinsfile index 96f71435..f4c64a1d 100644 --- a/worker/Jenkinsfile +++ b/worker/Jenkinsfile @@ -17,17 +17,17 @@ pipeline { stage('test') { steps { echo 'Running Unit Tests on worker app' - // dir('worker') { - // sh 'mvn test' - // } + dir('worker') { + sh 'mvn clean test' + } } } stage('package') { steps { echo 'Packaging worker app' - // dir('worker') { - // sh 'mvn package' - // } + dir('worker') { + sh 'mvn clean package' + } } } } From 71c6bf6414b3cfc3def828cfce8625bfad3ed523 Mon Sep 17 00:00:00 2001 From: fatih-gumus Date: Wed, 31 Dec 2025 11:37:24 +0300 Subject: [PATCH 06/11] Jenkinsfile modified --- worker/Jenkinsfile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/worker/Jenkinsfile b/worker/Jenkinsfile index f4c64a1d..81da8824 100644 --- a/worker/Jenkinsfile +++ b/worker/Jenkinsfile @@ -26,13 +26,14 @@ pipeline { steps { echo 'Packaging worker app' dir('worker') { - sh 'mvn clean package' + sh 'mvn clean package -DskipTests' } } } } post { always{ + archiveArtifacts artifacts: '**/target/*.jar', fingerprint: true echo 'Building multibranch pipeline for worker app is completed.' } } From 6ae2a00f2c7a2ed1d43ac344d8382d8d6d2d7df7 Mon Sep 17 00:00:00 2001 From: fatih-gumus Date: Wed, 31 Dec 2025 11:53:40 +0300 Subject: [PATCH 07/11] run package only on master, run stages only when worker dir changes. --- worker/Jenkinsfile | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/worker/Jenkinsfile b/worker/Jenkinsfile index 81da8824..bfaefccb 100644 --- a/worker/Jenkinsfile +++ b/worker/Jenkinsfile @@ -23,17 +23,21 @@ pipeline { } } stage('package') { + when{ + branch 'master' + changeset "**/worker/**" + } steps { echo 'Packaging worker app' dir('worker') { sh 'mvn clean package -DskipTests' + archiveArtifacts artifacts: '**/target/*.jar', fingerprint: true } } } } post { always{ - archiveArtifacts artifacts: '**/target/*.jar', fingerprint: true echo 'Building multibranch pipeline for worker app is completed.' } } From b42295eaddd068285902d6f07329959636e4acde Mon Sep 17 00:00:00 2001 From: fatih-gumus Date: Wed, 31 Dec 2025 11:55:33 +0300 Subject: [PATCH 08/11] run package only on master, run stages only when worker dir changes. --- worker/Jenkinsfile | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/worker/Jenkinsfile b/worker/Jenkinsfile index bfaefccb..8162c0c8 100644 --- a/worker/Jenkinsfile +++ b/worker/Jenkinsfile @@ -7,6 +7,9 @@ pipeline { stages { stage('build') { + when{ + changeset "**/worker/**" + } steps { echo 'compiling worker app' dir('worker') { @@ -15,6 +18,9 @@ pipeline { } } stage('test') { + when{ + changeset "**/worker/**" + } steps { echo 'Running Unit Tests on worker app' dir('worker') { From 4b608efc1f0eaf86bcb0b1364161b8d60170ae40 Mon Sep 17 00:00:00 2001 From: fatih-gumus Date: Wed, 31 Dec 2025 12:22:23 +0300 Subject: [PATCH 09/11] Jenkinsfile added for result app --- result/Jenkinsfile | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 result/Jenkinsfile diff --git a/result/Jenkinsfile b/result/Jenkinsfile new file mode 100644 index 00000000..d3b5e3fa --- /dev/null +++ b/result/Jenkinsfile @@ -0,0 +1,32 @@ +pipeline { + agent any + + tools { + nodejs "NodeJS 22.4.0" + } + stages { + stage("Build") { + when { + changeset "**/result/**" + } + steps { + echo "Compiling result app" + dir("result") { + sh 'npm install' + } + } + } + + stage("Test") { + when { + changeset "**/result/**" + } + steps { + echo "Testing result app" + dir("result") { + sh 'npm install && npm test' + } + } + } + } +} \ No newline at end of file From 28b6f7b0d5f9063c0825e233943ba4509a339e9a Mon Sep 17 00:00:00 2001 From: fatih-gumus Date: Wed, 31 Dec 2025 12:32:18 +0300 Subject: [PATCH 10/11] mock test case 7 added. --- result/test/mock.test.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/result/test/mock.test.js b/result/test/mock.test.js index aac87156..0b639d77 100644 --- a/result/test/mock.test.js +++ b/result/test/mock.test.js @@ -4,7 +4,7 @@ describe('mock test 1', () => { it('unit test 1', () => { expect(true).to.be.true; }); -}); +}); describe('mock test 2', () => { @@ -36,5 +36,10 @@ describe('mock test 6', () => { it('unit test 6', () => { expect(true).to.be.true; }); -}); + + describe('mock test 7', () => { + it('unit test 7', () => { + expect(true).to.be.true; + }); + }); From 6d329f3da1c211efd9900e8f66d38b1896e56932 Mon Sep 17 00:00:00 2001 From: fatih-gumus Date: Wed, 31 Dec 2025 12:34:55 +0300 Subject: [PATCH 11/11] test case modified --- result/test/mock.test.js | 1 + 1 file changed, 1 insertion(+) diff --git a/result/test/mock.test.js b/result/test/mock.test.js index 0b639d77..c33a7c04 100644 --- a/result/test/mock.test.js +++ b/result/test/mock.test.js @@ -43,3 +43,4 @@ describe('mock test 6', () => { }); }); +});