Unverified 提交 d166b2cf 作者: Whyrusleeping 提交者: GitHub

Merge pull request #4958 from ipfs/feat/ci/timeouts

ci: Add more timeouts to the jenkins pipeline
...@@ -2,6 +2,12 @@ import groovy.transform.Field ...@@ -2,6 +2,12 @@ import groovy.transform.Field
/* SETTINGS */ /* SETTINGS */
// in minutes
def sharness_timeout = 15
def gotest_timeout = 10
def build_timeout = 20
def check_timeout = 4
def test = 'go test -v ./...' def test = 'go test -v ./...'
def fast_build_platforms = [ def fast_build_platforms = [
...@@ -64,32 +70,41 @@ def gobuild_step(list) { ...@@ -64,32 +70,41 @@ def gobuild_step(list) {
/* PIPELINE */ /* PIPELINE */
ansiColor('xterm') { withEnv(['TERM=xterm-color']) { timeout(time: 30, unit: 'MINUTES') { ansiColor('xterm') { withEnv(['TERM=xterm-color']) {
stage('Checks') { stage('Checks') {
parallel( parallel(
'go fmt': { 'go fmt': {
setupStep('linux') { run -> setupStep('linux') { run ->
timeout(time: check_timeout, unit: 'MINUTES') {
run 'make test_go_fmt' run 'make test_go_fmt'
} }
}
}, },
'go vet': { 'go vet': {
setupStep('linux') { run -> setupStep('linux') { run ->
timeout(time: check_timeout, unit: 'MINUTES') {
run 'go vet ./...' run 'go vet ./...'
} }
}
}, },
'go build': { 'go build': {
timeout(time: check_timeout, unit: 'MINUTES') {
gobuild_step(fast_build_platforms) gobuild_step(fast_build_platforms)
} }
}
) )
} }
stage('Tests') { stage('Tests') {
parallel( parallel(
'go build (other platforms)': { 'go build (other platforms)': {
timeout(time: build_timeout, unit: 'MINUTES') {
gobuild_step(build_platforms) gobuild_step(build_platforms)
}
}, },
windows: { windows: {
setupStep('windows') { run -> setupStep('windows') { run ->
timeout(time: gotest_timeout, unit: 'MINUTES') {
run 'go get -v github.com/jstemmer/go-junit-report github.com/whyrusleeping/gx github.com/whyrusleeping/gx-go' run 'go get -v github.com/jstemmer/go-junit-report github.com/whyrusleeping/gx github.com/whyrusleeping/gx-go'
run "gx install --global" run "gx install --global"
...@@ -103,9 +118,11 @@ ansiColor('xterm') { withEnv(['TERM=xterm-color']) { timeout(time: 30, unit: 'MI ...@@ -103,9 +118,11 @@ ansiColor('xterm') { withEnv(['TERM=xterm-color']) { timeout(time: 30, unit: 'MI
/* junit allowEmptyResults: true, testResults: 'junit-report-*.xml' */ /* junit allowEmptyResults: true, testResults: 'junit-report-*.xml' */
} }
} }
}
}, },
linux: { linux: {
setupStep('linux') { run -> setupStep('linux') { run ->
timeout(time: gotest_timeout, unit: 'MINUTES') {
run 'go get -v github.com/jstemmer/go-junit-report' run 'go get -v github.com/jstemmer/go-junit-report'
run "make gx-deps" run "make gx-deps"
...@@ -118,9 +135,11 @@ ansiColor('xterm') { withEnv(['TERM=xterm-color']) { timeout(time: 30, unit: 'MI ...@@ -118,9 +135,11 @@ ansiColor('xterm') { withEnv(['TERM=xterm-color']) { timeout(time: 30, unit: 'MI
junit allowEmptyResults: true, testResults: 'junit-report-*.xml' junit allowEmptyResults: true, testResults: 'junit-report-*.xml'
} }
} }
}
}, },
linuxSharness: { linuxSharness: {
setupStep('linux') { run -> setupStep('linux') { run ->
timeout(time: sharness_timeout, unit: 'MINUTES') {
run 'go get -v github.com/jstemmer/go-junit-report' run 'go get -v github.com/jstemmer/go-junit-report'
run "make gx-deps" run "make gx-deps"
...@@ -132,9 +151,11 @@ ansiColor('xterm') { withEnv(['TERM=xterm-color']) { timeout(time: 30, unit: 'MI ...@@ -132,9 +151,11 @@ ansiColor('xterm') { withEnv(['TERM=xterm-color']) { timeout(time: 30, unit: 'MI
junit allowEmptyResults: true, testResults: 'test/sharness/test-results/sharness.xml' junit allowEmptyResults: true, testResults: 'test/sharness/test-results/sharness.xml'
} }
} }
}
}, },
macOS: { macOS: {
setupStep('macos') { run -> setupStep('macos') { run ->
timeout(time: gotest_timeout, unit: 'MINUTES') {
run 'go get -v github.com/jstemmer/go-junit-report' run 'go get -v github.com/jstemmer/go-junit-report'
run "make gx-deps" run "make gx-deps"
...@@ -148,9 +169,11 @@ ansiColor('xterm') { withEnv(['TERM=xterm-color']) { timeout(time: 30, unit: 'MI ...@@ -148,9 +169,11 @@ ansiColor('xterm') { withEnv(['TERM=xterm-color']) { timeout(time: 30, unit: 'MI
/* junit 'junit-report-*.xml' */ /* junit 'junit-report-*.xml' */
} }
} }
}
}, },
macSharness: { macSharness: {
setupStep('macos') { run -> setupStep('macos') { run ->
timeout(time: sharness_timeout, unit: 'MINUTES') {
run 'go get -v github.com/jstemmer/go-junit-report' run 'go get -v github.com/jstemmer/go-junit-report'
run "make gx-deps" run "make gx-deps"
...@@ -163,7 +186,8 @@ ansiColor('xterm') { withEnv(['TERM=xterm-color']) { timeout(time: 30, unit: 'MI ...@@ -163,7 +186,8 @@ ansiColor('xterm') { withEnv(['TERM=xterm-color']) { timeout(time: 30, unit: 'MI
/* junit allowEmptyResults: true, testResults: 'test/sharness/test-results/sharness.xml' */ /* junit allowEmptyResults: true, testResults: 'test/sharness/test-results/sharness.xml' */
} }
} }
}
}, },
) )
} }
}}} }}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论