Updating repo for Jenkins pipeline
This commit is contained in:
parent
b27db5fec3
commit
e08dcc04d5
|
@ -0,0 +1,59 @@
|
||||||
|
pipeline {
|
||||||
|
|
||||||
|
agent {
|
||||||
|
docker { image 'golang:1.11' }
|
||||||
|
}
|
||||||
|
|
||||||
|
stages {
|
||||||
|
|
||||||
|
stage('Prepare environment') {
|
||||||
|
steps {
|
||||||
|
script {
|
||||||
|
sh 'make install-devtools'
|
||||||
|
sh 'make vendor'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('Run unit tests') {
|
||||||
|
steps {
|
||||||
|
script {
|
||||||
|
sh 'make test'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('Run lint') {
|
||||||
|
steps {
|
||||||
|
script {
|
||||||
|
try {
|
||||||
|
sh 'make LINT_ARGS="--new-from-rev=HEAD~" lint'
|
||||||
|
} catch(ex) {
|
||||||
|
currentBuild.result = "UNSTABLE"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
post {
|
||||||
|
always {
|
||||||
|
script {
|
||||||
|
if (currentBuild.currentResult != 'SUCCESS') {
|
||||||
|
emailext (
|
||||||
|
subject: "${currentBuild.currentResult} - Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]'",
|
||||||
|
body: """
|
||||||
|
Voir les étapes du job: ${env.BUILD_URL}flowGraphTable
|
||||||
|
|
||||||
|
Projet: ${env.GIT_URL}
|
||||||
|
Branche: ${env.GIT_BRANCH}
|
||||||
|
Commit: ${env.GIT_COMMIT}
|
||||||
|
""",
|
||||||
|
recipientProviders: [developers(), requestor()],
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,35 @@
|
||||||
|
LINT_ARGS ?= ./...
|
||||||
|
export GO111MODULE := on
|
||||||
|
|
||||||
|
test: tidy
|
||||||
|
GO111MODULE=off go clean -testcache
|
||||||
|
go test -mod=vendor -v ./...
|
||||||
|
|
||||||
|
lint:
|
||||||
|
@GO111MODULE=off golangci-lint run -e '.*/pkg/mod' -e ".*/go/src" --enable-all --disable lll $(LINT_ARGS)
|
||||||
|
|
||||||
|
tidy:
|
||||||
|
go mod tidy
|
||||||
|
|
||||||
|
vendor: tidy
|
||||||
|
go mod vendor
|
||||||
|
|
||||||
|
install-devtools: vendor
|
||||||
|
# Install modd
|
||||||
|
GO111MODULE=off go get -u github.com/cortesi/modd/cmd/modd
|
||||||
|
# Install golangci-lint
|
||||||
|
GO111MODULE=off go get -u github.com/golangci/golangci-lint/cmd/golangci-lint
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -rf ./bin
|
||||||
|
go clean -i -x -r -modcache
|
||||||
|
|
||||||
|
doc:
|
||||||
|
@echo "Open your browser to http://localhost:6060/pkg/forge.cadoles.com/Pyxis/orion/ to see the documentation"
|
||||||
|
@godoc -http=:6060
|
||||||
|
|
||||||
|
watch:
|
||||||
|
modd
|
||||||
|
|
||||||
|
|
||||||
|
.PHONY: test clean generate vendor install-devtools lint watch tidy doc bin/server
|
Loading…
Reference in New Issue