From 60e2921f848f50362e3245d8cffb0e0ff085c55d Mon Sep 17 00:00:00 2001 From: N Date: Sun, 25 Sep 2016 21:32:32 -0700 Subject: [PATCH 01/13] chore(LICENSE): add file to match package.json's MIT --- LICENSE | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 LICENSE diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..bd4e312 --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2016 Nick Oliver + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. From 90fedeef8db67da0bcc4c9b73f11890c815c4475 Mon Sep 17 00:00:00 2001 From: Nick Oliver Date: Sun, 13 Aug 2017 12:51:14 -0700 Subject: [PATCH 02/13] Create Jenkinsfile --- Jenkinsfile | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 Jenkinsfile diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 0000000..3800752 --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,16 @@ +pipeline { + stages { + stage('checkout') { + checkout scm + } + + stage('install') { + sh 'npm version' + sh 'npm install' + } + + stage('test') { + sh 'npm test' + } + } +} From f2cb7e26774b2f8158e98d63d74338dfc43d6ed3 Mon Sep 17 00:00:00 2001 From: Nick Oliver Date: Sun, 13 Aug 2017 12:53:15 -0700 Subject: [PATCH 03/13] test(Jenkinsfile): uneeded scm checkout --- Jenkinsfile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 3800752..df841a3 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,8 +1,8 @@ pipeline { stages { - stage('checkout') { - checkout scm - } + // stage('checkout') { + // checkout scm + // } stage('install') { sh 'npm version' From 712bbce584facfe4c9b055160e16a26ecb57832e Mon Sep 17 00:00:00 2001 From: Nick Oliver Date: Sun, 13 Aug 2017 12:55:25 -0700 Subject: [PATCH 04/13] test(Jenkinsfile): missing steps blocks "Starting with version 0.5, steps in a stage must be in a steps block." --- Jenkinsfile | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index df841a3..3fb1d21 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -5,12 +5,16 @@ pipeline { // } stage('install') { - sh 'npm version' - sh 'npm install' + steps { + sh 'npm version' + sh 'npm install' + } } stage('test') { - sh 'npm test' + steps { + sh 'npm test' + } } } } From 6ad85fa5bd1b1d0cd08a0796a4fdc431e3fbc64d Mon Sep 17 00:00:00 2001 From: Nick Oliver Date: Sun, 13 Aug 2017 12:56:59 -0700 Subject: [PATCH 05/13] test(Jenkinsfile): missing agen Missing required section "agent" --- Jenkinsfile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Jenkinsfile b/Jenkinsfile index 3fb1d21..97378d5 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,4 +1,6 @@ pipeline { + agent any + stages { // stage('checkout') { // checkout scm From dfdc2002050b1bfc1f458a05410de7ca7be38d35 Mon Sep 17 00:00:00 2001 From: Nick Oliver Date: Sun, 13 Aug 2017 14:47:14 -0700 Subject: [PATCH 06/13] test(Jenkinsfile): run builds in docker containers https://wiki.jenkins.io/display/JENKINS/Docker+Pipeline+Plugin https://jenkins.io/blog/2016/08/08/docker-pipeline-environments/ --- Jenkinsfile | 30 ++++++++++++++++++------------ 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 97378d5..1cd4d4e 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -2,20 +2,26 @@ pipeline { agent any stages { - // stage('checkout') { - // checkout scm - // } - stage('install') { + stage('checkout') { steps { - sh 'npm version' - sh 'npm install' - } - } - - stage('test') { - steps { - sh 'npm test' + checkout scm + docker.image('node:argon').inside { + + stage('install') { + steps { + sh 'npm version' + sh 'npm install' + } + } + + stage('test') { + steps { + sh 'npm test' + } + } + + } } } } From ba52eebdaa45e1f002551e2a91f85e577078ca03 Mon Sep 17 00:00:00 2001 From: Nick Oliver Date: Sun, 13 Aug 2017 14:54:57 -0700 Subject: [PATCH 07/13] test(Jenkinsfile): scm already checked out WorkflowScript: 9: Expected a symbol @ line 9, column 9. docker.image('node:argon').inside { --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index 1cd4d4e..b80236e 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -5,7 +5,7 @@ pipeline { stage('checkout') { steps { - checkout scm + //checkout scm docker.image('node:argon').inside { stage('install') { From b04165173a5088e71d2bdcfb07c36aa06701d01a Mon Sep 17 00:00:00 2001 From: Nick Oliver Date: Sun, 13 Aug 2017 15:12:57 -0700 Subject: [PATCH 08/13] test(Jenkinsfile): resolves symbol error --- Jenkinsfile | 36 ++++++++++++++---------------------- 1 file changed, 14 insertions(+), 22 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index b80236e..5a73ed5 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,28 +1,20 @@ -pipeline { - agent any - - stages { - - stage('checkout') { + +stage('checkout') { + //checkout scm + docker.image('node:argon').inside { + + stage('install') { steps { - //checkout scm - docker.image('node:argon').inside { - - stage('install') { - steps { - sh 'npm version' - sh 'npm install' - } - } + sh 'npm version' + sh 'npm install' + } + } - stage('test') { - steps { - sh 'npm test' - } - } - - } + stage('test') { + steps { + sh 'npm test' } } + } } From d29a61b88fd87321db6c77cff1b69bfcae01c4c0 Mon Sep 17 00:00:00 2001 From: Nick Oliver Date: Sun, 13 Aug 2017 16:00:15 -0700 Subject: [PATCH 09/13] test(Jenkinsfile): remove undefined steps --- Jenkinsfile | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 5a73ed5..b801d8f 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,19 +1,15 @@ stage('checkout') { - //checkout scm + // checkout scm docker.image('node:argon').inside { stage('install') { - steps { - sh 'npm version' - sh 'npm install' - } + sh 'npm version' + sh 'npm install' } stage('test') { - steps { - sh 'npm test' - } + sh 'npm test' } } From 6a9be128cf14d537174fbfa56913d7e29ff82667 Mon Sep 17 00:00:00 2001 From: Nick Oliver Date: Sun, 13 Aug 2017 16:01:44 -0700 Subject: [PATCH 10/13] test(Jenkinsfile): git checkout I guess it's not explicit --- Jenkinsfile | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index b801d8f..6cdc143 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,16 +1,16 @@ +docker.image('node:argon').inside { -stage('checkout') { - // checkout scm - docker.image('node:argon').inside { - - stage('install') { - sh 'npm version' - sh 'npm install' - } + stage('checkout') { + checkout scm + } - stage('test') { - sh 'npm test' - } + stage('install') { + sh 'npm version' + sh 'npm install' + } + stage('test') { + sh 'npm test' } + } From a5ffe4f3c548efaf819c9e02eb14414bd3e68f4f Mon Sep 17 00:00:00 2001 From: Nick Oliver Date: Sun, 13 Aug 2017 16:09:43 -0700 Subject: [PATCH 11/13] test(Jenkinsfile): argon & boron, git config --- Jenkinsfile | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 6cdc143..4bd75f9 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,8 +1,12 @@ -docker.image('node:argon').inside { - +def ourBuild { stage('checkout') { checkout scm } + + stage('prepare') { + sh 'git config --global user.name githook-scripts_user' + sh 'git config --global user.email "githook-scripts_email@example.tld"' + } stage('install') { sh 'npm version' @@ -12,5 +16,12 @@ docker.image('node:argon').inside { stage('test') { sh 'npm test' } +} + +docker.image('node:argon').inside { + ourBuild() +} +docker.image('node:boron').inside { + ourBuild() } From 1d154abdc2893556ea773e34913eaee6198bb60b Mon Sep 17 00:00:00 2001 From: Nick Oliver Date: Sun, 13 Aug 2017 16:10:35 -0700 Subject: [PATCH 12/13] test(Jenkinsfile): closure assignment syntax --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index 4bd75f9..65800ec 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,4 +1,4 @@ -def ourBuild { +def ourBuild = { stage('checkout') { checkout scm } From 81dbe353631a4c219bf29b65e14dcd544ac536d7 Mon Sep 17 00:00:00 2001 From: Nick Oliver Date: Sun, 13 Aug 2017 16:16:22 -0700 Subject: [PATCH 13/13] test(Jenkinsfile): existing test issues in node v8 disable for now --- Jenkinsfile | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 65800ec..afd0e57 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -22,6 +22,7 @@ docker.image('node:argon').inside { ourBuild() } -docker.image('node:boron').inside { - ourBuild() -} +// existing async? test issues in node v8 +//docker.image('node:boron').inside { +// ourBuild() +//}