From 1442711bae7ed99644f16df51827bd8659ccec1f Mon Sep 17 00:00:00 2001 From: simon Date: Sat, 1 Jun 2019 14:14:34 -0400 Subject: [PATCH] jenkins setup --- README.md | 1 + jenkins/Jenkinsfile | 34 ++++++++++++++++++++++++++++++++++ main.go | 6 +++--- 3 files changed, 38 insertions(+), 3 deletions(-) create mode 100644 jenkins/Jenkinsfile diff --git a/README.md b/README.md index a7b54c5..d0edf22 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,7 @@ [![CodeFactor](https://www.codefactor.io/repository/github/simon987/architeuthis/badge)](https://www.codefactor.io/repository/github/simon987/architeuthis) ![GitHub](https://img.shields.io/github/license/simon987/Architeuthis.svg) +[![Build Status](https://ci.simon987.net/buildStatus/icon?job=architeuthis_builds)](https://ci.simon987.net/job/architeuthis_builds/) *NOTE: this is very WIP* diff --git a/jenkins/Jenkinsfile b/jenkins/Jenkinsfile new file mode 100644 index 0000000..44f05df --- /dev/null +++ b/jenkins/Jenkinsfile @@ -0,0 +1,34 @@ +def remote = [:] +remote.name = 'remote' +remote.host = env.DEPLOY_HOST +remote.user = env.DEPLOY_USER +remote.identityFile = '/var/lib/jenkins/.ssh/id_rsa' +remote.knownHosts = '/var/lib/jenkins/.ssh/known_hosts' +remote.allowAnyHosts = true +logLevel = 'FINER' + +pipeline { + agent none + environment { + GOOS='linux' + CGO_ENABLED='1' + HOME='.' + } + stages { + stage('Build & deploy') { + agent { + docker { + image 'golang:latest' + } + } + steps { + sh 'mkdir -p /go/src/github.com/simon987/Architeuthis' + sh 'cp *.go "/go/src/github.com/simon987/Architeuthis"' + sh 'cd /go/src/github.com/simon987/Architeuthis && go get ./...' + sh 'cd /go/src/github.com/simon987/Architeuthis && go build -a -installsuffix cgo -o "${WORKSPACE}/architeuthis" .' + sh 'tar -czf ${BUILD_NUMBER}_architeuthis.tar.gz config.json architeuthis' + sshPut remote: remote, from: env.BUILD_NUMBER + '_architeuthis.tar.gz', into: 'architeuthis/webroot/' + } + } + } +} diff --git a/main.go b/main.go index 3bda8c7..447225e 100644 --- a/main.go +++ b/main.go @@ -123,9 +123,9 @@ func New() *Balancer { p := balancer.chooseProxy() logrus.WithFields(logrus.Fields{ - "proxy": p.Name, - "connexions": p.Connections, - "url": r.URL, + "proxy": p.Name, + "conns": p.Connections, + "url": r.URL, }).Trace("Routing request") resp, err := p.processRequest(r)