From 6fbecd78a47c3097728cfac42b947a5330398375 Mon Sep 17 00:00:00 2001 From: Adam Townsend Date: Tue, 17 Oct 2023 10:39:17 -0700 Subject: [PATCH 01/20] clean out unnecessary files a little easier --- Jenkinsfile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index b0b00d5..58d32b4 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -45,14 +45,15 @@ pipeline { reportTitles: 'Cucumber Results, RSpec Results, Test Coverage']) } } - stage('Build deliverable') { + stage('Build production deliverable') { steps { catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') { sh ''' #!/usr/local/bin/bash CUR_DIR=$(pwd) mkdir -p /tmp/url-shortener cp -R * /tmp/url-shortener - rm -rf /tmp/url-shortener/features /tmp/url-shortener/spec /tmp/url-shortener/coverage /tmp/url-shortener/db/*.db .git* + cd /tmp/url-shortener + rm -rf features spec coverage db/*.db .git* Jenkinsfile *.html cd /tmp tar -czvf url-shortener.tgz url-shortener/ mv url-shortener.tgz $CUR_DIR From 621a777a462f3d603a338fe73b97a32494e1b728 Mon Sep 17 00:00:00 2001 From: Adam Townsend Date: Tue, 17 Oct 2023 17:05:15 -0700 Subject: [PATCH 02/20] update env vars + removed the app session secret. it's used where it is set + added zip file to make it easier to name the zip and reuse the name --- Jenkinsfile | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 58d32b4..c9a0270 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -2,16 +2,13 @@ pipeline { agent any environment { - APP_SESSION_SECRET = '' DB_NAME = 'url_shortener.db' + ZIP_FILE = '' } stages { stage('Init') { steps { sh 'rbenv local 3.2.2' - script { - env.APP_SESSION_SECRET = sh(script: 'ruby secret.rb', returnStdout: true) - } sh 'echo "ENV[\\\"APP_SESSION_SECRET\\\"] ||= $(ruby secret.rb)" > .env.rb' sh 'echo "ENV[\\\"DB_NAME\\\"] ||= \\\"${DB_NAME}\\\"" >> .env.rb' sh 'cat .env.rb' @@ -47,6 +44,9 @@ pipeline { } stage('Build production deliverable') { steps { + script { + env.ZIP_FILE="url-shortener_$(date "+%Y-%m-%d_%H-%M-%S").tgz" + } catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') { sh ''' #!/usr/local/bin/bash CUR_DIR=$(pwd) @@ -55,17 +55,17 @@ pipeline { cd /tmp/url-shortener rm -rf features spec coverage db/*.db .git* Jenkinsfile *.html cd /tmp - tar -czvf url-shortener.tgz url-shortener/ - mv url-shortener.tgz $CUR_DIR + tar -czvf $ZIP_FILE url-shortener/ + mv /tmp/$ZIP_FILE $CUR_DIR/ ''' } - archiveArtifacts artifacts: 'url-shortener.tgz' + archiveArtifacts artifacts: '*.tgz' } } stage('Clean up deliverable') { steps { sh 'rm -rf /tmp/url-shortener' - sh 'rm -rf url-shortener.tgz' + sh 'rm -rf $ZIP_FILE' } } } From 01d9f9a21c461c2e135b1a5163c73cd10a299c9a Mon Sep 17 00:00:00 2001 From: Adam Townsend Date: Tue, 17 Oct 2023 17:12:16 -0700 Subject: [PATCH 03/20] another shot at setting the zip file name --- Jenkinsfile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index c9a0270..d463c80 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -45,7 +45,8 @@ pipeline { stage('Build production deliverable') { steps { script { - env.ZIP_FILE="url-shortener_$(date "+%Y-%m-%d_%H-%M-%S").tgz" + ZIP_DATE=$(date "+%Y-%m-%d_%H-%M-%S") + env.ZIP_FILE="url-shortener_$ZIP_DATE" } catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') { sh ''' #!/usr/local/bin/bash From a0a9e84b9112928f49291eca008e17a226fb6d06 Mon Sep 17 00:00:00 2001 From: Adam Townsend Date: Tue, 17 Oct 2023 17:14:33 -0700 Subject: [PATCH 04/20] another try --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index d463c80..d56c308 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -45,7 +45,7 @@ pipeline { stage('Build production deliverable') { steps { script { - ZIP_DATE=$(date "+%Y-%m-%d_%H-%M-%S") + ZIP_DATE=$(date '+%Y-%m-%d_%H-%M-%S') env.ZIP_FILE="url-shortener_$ZIP_DATE" } catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') { From 36285b060bba4fb60f0730e9e6dc638cfcb4a714 Mon Sep 17 00:00:00 2001 From: Adam Townsend Date: Tue, 17 Oct 2023 17:19:31 -0700 Subject: [PATCH 05/20] better try to set the environment --- Jenkinsfile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index d56c308..e7c711e 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -45,8 +45,7 @@ pipeline { stage('Build production deliverable') { steps { script { - ZIP_DATE=$(date '+%Y-%m-%d_%H-%M-%S') - env.ZIP_FILE="url-shortener_$ZIP_DATE" + env.ZIP_FILE=sh(script: 'echo "url-shortener_$(date "+%Y-%m-%d_%H-%M-%S").tgz', returnStdout: true) } catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') { sh ''' #!/usr/local/bin/bash From a69b3e4226cddccaee5e204778547838574755f0 Mon Sep 17 00:00:00 2001 From: Adam Townsend Date: Tue, 17 Oct 2023 17:22:00 -0700 Subject: [PATCH 06/20] missed quote --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index e7c711e..7a47a73 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -45,7 +45,7 @@ pipeline { stage('Build production deliverable') { steps { script { - env.ZIP_FILE=sh(script: 'echo "url-shortener_$(date "+%Y-%m-%d_%H-%M-%S").tgz', returnStdout: true) + env.ZIP_FILE=sh(script: 'echo "url-shortener_$(date "+%Y-%m-%d_%H-%M-%S").tgz"', returnStdout: true) } catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') { sh ''' #!/usr/local/bin/bash From e2c3cb7035c357ee321cc38794405554b5bfd7db Mon Sep 17 00:00:00 2001 From: Adam Townsend Date: Tue, 17 Oct 2023 17:25:02 -0700 Subject: [PATCH 07/20] access the ZIP_FILE variable properly? --- Jenkinsfile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 7a47a73..b22f0f7 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -55,17 +55,17 @@ pipeline { cd /tmp/url-shortener rm -rf features spec coverage db/*.db .git* Jenkinsfile *.html cd /tmp - tar -czvf $ZIP_FILE url-shortener/ - mv /tmp/$ZIP_FILE $CUR_DIR/ + tar -czvf ${ZIP_FILE} url-shortener/ + mv /tmp/${ZIP_FILE} $CUR_DIR/ ''' } - archiveArtifacts artifacts: '*.tgz' + archiveArtifacts artifacts: '${ZIP_FILE}.tgz' } } stage('Clean up deliverable') { steps { sh 'rm -rf /tmp/url-shortener' - sh 'rm -rf $ZIP_FILE' + sh 'rm -rf ${ZIP_FILE}' } } } From 35d196bdc2f65842106af0852e058e429d5c8993 Mon Sep 17 00:00:00 2001 From: Adam Townsend Date: Tue, 17 Oct 2023 17:28:41 -0700 Subject: [PATCH 08/20] another shot accessing the new env var --- Jenkinsfile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index b22f0f7..db46f20 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -55,17 +55,17 @@ pipeline { cd /tmp/url-shortener rm -rf features spec coverage db/*.db .git* Jenkinsfile *.html cd /tmp - tar -czvf ${ZIP_FILE} url-shortener/ - mv /tmp/${ZIP_FILE} $CUR_DIR/ + tar -czvf ${env.ZIP_FILE} url-shortener/ + mv /tmp/${env.ZIP_FILE} $CUR_DIR/ ''' } - archiveArtifacts artifacts: '${ZIP_FILE}.tgz' + archiveArtifacts artifacts: '${env.ZIP_FILE}.tgz' } } stage('Clean up deliverable') { steps { sh 'rm -rf /tmp/url-shortener' - sh 'rm -rf ${ZIP_FILE}' + sh 'rm -rf ${env.ZIP_FILE}' } } } From 8691d19e8d6ec499898dd43bd0b28cbe5b99a10b Mon Sep 17 00:00:00 2001 From: Adam Townsend Date: Tue, 17 Oct 2023 17:32:50 -0700 Subject: [PATCH 09/20] dump the zip file, let's see how it's working? --- Jenkinsfile | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Jenkinsfile b/Jenkinsfile index db46f20..ac8664c 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -49,6 +49,9 @@ pipeline { } catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') { sh ''' #!/usr/local/bin/bash + echo $ZIP_FILE + echo ${ZIP_FILE} + echo ${env.ZIP_FILE} CUR_DIR=$(pwd) mkdir -p /tmp/url-shortener cp -R * /tmp/url-shortener From 8a0fef63b2721fb3b39815f431de02adb2e2eaff Mon Sep 17 00:00:00 2001 From: Adam Townsend Date: Tue, 17 Oct 2023 17:35:37 -0700 Subject: [PATCH 10/20] another try --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index ac8664c..e292910 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -45,7 +45,7 @@ pipeline { stage('Build production deliverable') { steps { script { - env.ZIP_FILE=sh(script: 'echo "url-shortener_$(date "+%Y-%m-%d_%H-%M-%S").tgz"', returnStdout: true) + env.ZIP_FILE=sh(script: 'ZIP_FILE="url-shortener_$(date "+%Y-%m-%d_%H-%M-%S").tgz"', returnStdout: true) } catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') { sh ''' #!/usr/local/bin/bash From 340614dadca5ac64c1fedcb74d246980e18b0a68 Mon Sep 17 00:00:00 2001 From: Adam Townsend Date: Tue, 17 Oct 2023 17:37:35 -0700 Subject: [PATCH 11/20] echo outside catch error --- Jenkinsfile | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index e292910..ddf99ad 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -47,11 +47,13 @@ pipeline { script { env.ZIP_FILE=sh(script: 'ZIP_FILE="url-shortener_$(date "+%Y-%m-%d_%H-%M-%S").tgz"', returnStdout: true) } + + sh 'echo $ZIP_FILE' + sh 'echo ${ZIP_FILE}' + sh 'echo ${env.ZIP_FILE}' + catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') { sh ''' #!/usr/local/bin/bash - echo $ZIP_FILE - echo ${ZIP_FILE} - echo ${env.ZIP_FILE} CUR_DIR=$(pwd) mkdir -p /tmp/url-shortener cp -R * /tmp/url-shortener From 4587c35806ffd95a496b371f2add1393e487f0c2 Mon Sep 17 00:00:00 2001 From: Adam Townsend Date: Tue, 17 Oct 2023 17:40:23 -0700 Subject: [PATCH 12/20] just set it in the script --- Jenkinsfile | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index ddf99ad..9b9cf4e 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -45,15 +45,12 @@ pipeline { stage('Build production deliverable') { steps { script { - env.ZIP_FILE=sh(script: 'ZIP_FILE="url-shortener_$(date "+%Y-%m-%d_%H-%M-%S").tgz"', returnStdout: true) + env.ZIP_FILE=sh(script: 'echo "url-shortener_$(date "+%Y-%m-%d_%H-%M-%S").tgz"', returnStdout: true) } - - sh 'echo $ZIP_FILE' - sh 'echo ${ZIP_FILE}' - sh 'echo ${env.ZIP_FILE}' - catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') { sh ''' #!/usr/local/bin/bash + EXPORT ZIP_FILE="url-shortener_$(date "+%Y-%m-%d_%H-%M-%S").tgz" + echo $ZIP_FILE CUR_DIR=$(pwd) mkdir -p /tmp/url-shortener cp -R * /tmp/url-shortener From 15d9ade2cf3430b82d078927220ae46e882ccb2d Mon Sep 17 00:00:00 2001 From: Adam Townsend Date: Tue, 17 Oct 2023 17:42:17 -0700 Subject: [PATCH 13/20] remove EXPORT --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index 9b9cf4e..f67cae6 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -49,7 +49,7 @@ pipeline { } catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') { sh ''' #!/usr/local/bin/bash - EXPORT ZIP_FILE="url-shortener_$(date "+%Y-%m-%d_%H-%M-%S").tgz" + ZIP_FILE="url-shortener_$(date "+%Y-%m-%d_%H-%M-%S").tgz" echo $ZIP_FILE CUR_DIR=$(pwd) mkdir -p /tmp/url-shortener From f32d153b69c6594e7d864124c5baccb4105f1754 Mon Sep 17 00:00:00 2001 From: Adam Townsend Date: Tue, 17 Oct 2023 17:46:24 -0700 Subject: [PATCH 14/20] simplified things? --- Jenkinsfile | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index f67cae6..188ede2 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -3,7 +3,6 @@ pipeline { environment { DB_NAME = 'url_shortener.db' - ZIP_FILE = '' } stages { stage('Init') { @@ -44,9 +43,6 @@ pipeline { } stage('Build production deliverable') { steps { - script { - env.ZIP_FILE=sh(script: 'echo "url-shortener_$(date "+%Y-%m-%d_%H-%M-%S").tgz"', returnStdout: true) - } catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') { sh ''' #!/usr/local/bin/bash ZIP_FILE="url-shortener_$(date "+%Y-%m-%d_%H-%M-%S").tgz" @@ -57,17 +53,17 @@ pipeline { cd /tmp/url-shortener rm -rf features spec coverage db/*.db .git* Jenkinsfile *.html cd /tmp - tar -czvf ${env.ZIP_FILE} url-shortener/ - mv /tmp/${env.ZIP_FILE} $CUR_DIR/ + tar -czvf $ZIP_FILE url-shortener/ + mv /tmp/$ZIP_FILE $CUR_DIR/ ''' } - archiveArtifacts artifacts: '${env.ZIP_FILE}.tgz' + archiveArtifacts artifacts: '*.tgz' } } stage('Clean up deliverable') { steps { sh 'rm -rf /tmp/url-shortener' - sh 'rm -rf ${env.ZIP_FILE}' + sh 'rm -rf *.tgz' } } } From f31b6da49cf70c7a01fc6cc0184ec206204325d1 Mon Sep 17 00:00:00 2001 From: Adam Townsend Date: Tue, 17 Oct 2023 17:58:40 -0700 Subject: [PATCH 15/20] include the .env file and remove the scret.rb file --- Jenkinsfile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index 188ede2..fba205d 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -50,8 +50,9 @@ pipeline { CUR_DIR=$(pwd) mkdir -p /tmp/url-shortener cp -R * /tmp/url-shortener + cp .env /tmp/-url-shortener/ cd /tmp/url-shortener - rm -rf features spec coverage db/*.db .git* Jenkinsfile *.html + rm -rf features spec coverage db/*.db .git* Jenkinsfile *.html secret.rb cd /tmp tar -czvf $ZIP_FILE url-shortener/ mv /tmp/$ZIP_FILE $CUR_DIR/ From 1f2e3d41ddbac1d6e07fa961f166c7046c57964c Mon Sep 17 00:00:00 2001 From: Adam Townsend Date: Tue, 17 Oct 2023 18:00:46 -0700 Subject: [PATCH 16/20] syntax error extra - in there --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index fba205d..48a54c0 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -50,7 +50,7 @@ pipeline { CUR_DIR=$(pwd) mkdir -p /tmp/url-shortener cp -R * /tmp/url-shortener - cp .env /tmp/-url-shortener/ + cp .env /tmp/url-shortener/ cd /tmp/url-shortener rm -rf features spec coverage db/*.db .git* Jenkinsfile *.html secret.rb cd /tmp From bf922017213ea4825aefbd927f339ae83698064b Mon Sep 17 00:00:00 2001 From: Adam Townsend Date: Tue, 17 Oct 2023 18:02:40 -0700 Subject: [PATCH 17/20] removed some unnecessary lines, and check what's in the current directory --- Jenkinsfile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 48a54c0..345ca90 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -10,7 +10,6 @@ pipeline { sh 'rbenv local 3.2.2' sh 'echo "ENV[\\\"APP_SESSION_SECRET\\\"] ||= $(ruby secret.rb)" > .env.rb' sh 'echo "ENV[\\\"DB_NAME\\\"] ||= \\\"${DB_NAME}\\\"" >> .env.rb' - sh 'cat .env.rb' } } stage('Build dependencies') { @@ -46,10 +45,10 @@ pipeline { catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') { sh ''' #!/usr/local/bin/bash ZIP_FILE="url-shortener_$(date "+%Y-%m-%d_%H-%M-%S").tgz" - echo $ZIP_FILE CUR_DIR=$(pwd) mkdir -p /tmp/url-shortener cp -R * /tmp/url-shortener + ls -lah cp .env /tmp/url-shortener/ cd /tmp/url-shortener rm -rf features spec coverage db/*.db .git* Jenkinsfile *.html secret.rb From ae00ac867248618435cd8929ba3a558fb9d30cfd Mon Sep 17 00:00:00 2001 From: Adam Townsend Date: Tue, 17 Oct 2023 18:04:29 -0700 Subject: [PATCH 18/20] forgot the .rb --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index 345ca90..f9b8a3e 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -49,7 +49,7 @@ pipeline { mkdir -p /tmp/url-shortener cp -R * /tmp/url-shortener ls -lah - cp .env /tmp/url-shortener/ + cp .env.rb /tmp/url-shortener/ cd /tmp/url-shortener rm -rf features spec coverage db/*.db .git* Jenkinsfile *.html secret.rb cd /tmp From e8b12c307a0a359313ebf331d14e461195125d03 Mon Sep 17 00:00:00 2001 From: Adam Townsend Date: Tue, 17 Oct 2023 18:06:36 -0700 Subject: [PATCH 19/20] include ruby version --- Jenkinsfile | 1 + 1 file changed, 1 insertion(+) diff --git a/Jenkinsfile b/Jenkinsfile index f9b8a3e..76f077c 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -50,6 +50,7 @@ pipeline { cp -R * /tmp/url-shortener ls -lah cp .env.rb /tmp/url-shortener/ + cp .ruby-version /tmp/url-shortener/ cd /tmp/url-shortener rm -rf features spec coverage db/*.db .git* Jenkinsfile *.html secret.rb cd /tmp From 9812a92d59f0f9ebaf7e1068be115ac84d5c7c63 Mon Sep 17 00:00:00 2001 From: Adam Townsend Date: Tue, 17 Oct 2023 18:09:17 -0700 Subject: [PATCH 20/20] remove ls --- Jenkinsfile | 1 - 1 file changed, 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index 76f077c..0a449f6 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -48,7 +48,6 @@ pipeline { CUR_DIR=$(pwd) mkdir -p /tmp/url-shortener cp -R * /tmp/url-shortener - ls -lah cp .env.rb /tmp/url-shortener/ cp .ruby-version /tmp/url-shortener/ cd /tmp/url-shortener