mirror of
https://github.com/terorie/od-database-crawler.git
synced 2025-12-12 23:08:50 +00:00
Jenkins setup
This commit is contained in:
47
jenkins/Jenkinsfile
vendored
Normal file
47
jenkins/Jenkinsfile
vendored
Normal file
@@ -0,0 +1,47 @@
|
||||
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
|
||||
remote.retryCount = 3
|
||||
remote.retryWaitSec = 3
|
||||
logLevel = 'FINER'
|
||||
|
||||
pipeline {
|
||||
agent none
|
||||
environment {
|
||||
GOOS='linux'
|
||||
CGO_ENABLED='0'
|
||||
HOME='.'
|
||||
}
|
||||
stages {
|
||||
stage('Build') {
|
||||
agent {
|
||||
docker {
|
||||
image 'golang:latest'
|
||||
}
|
||||
}
|
||||
steps {
|
||||
sh 'mkdir -p /go/src/github.com/terorie/od-database-crawler'
|
||||
sh 'cp -r *.go fasturl ds jenkins/build.sh "/go/src/github.com/terorie/od-database-crawler"'
|
||||
sh 'cd /go/src/github.com/terorie/od-database-crawler && go get ./...'
|
||||
sh './jenkins/build.sh'
|
||||
stash includes: 'dist/', name: 'dist'
|
||||
}
|
||||
}
|
||||
stage('Deploy') {
|
||||
agent none
|
||||
steps {
|
||||
node('master') {
|
||||
unstash 'dist'
|
||||
sshCommand remote: remote, command: "ls od-database-crawler/"
|
||||
sshPut remote: remote, from: 'dist/', into: 'od-database-crawler'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
23
jenkins/build.sh
Executable file
23
jenkins/build.sh
Executable file
@@ -0,0 +1,23 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
appname="od-database-crawler"
|
||||
outdir="dist/"
|
||||
tag="${BUILD_ID}_$(date +%Y-%m-%d)"
|
||||
|
||||
rm -rf "./${outdir}"
|
||||
mkdir build 2> /dev/null
|
||||
|
||||
name=${outdir}${appname}-${tag}-linux
|
||||
GOOS="linux" GOARCH="amd64" go build -ldflags="-s -w" -o ${name}
|
||||
gzip -f ${name}
|
||||
echo ${name}
|
||||
|
||||
name=${outdir}${appname}-${tag}-mac
|
||||
GOOS="darwin" GOARCH="amd64" go build -ldflags="-s -w" -o ${name}
|
||||
gzip -f ${name}
|
||||
echo ${name}
|
||||
|
||||
name=${outdir}${appname}-${tag}-freebsd
|
||||
GOOS="freebsd" GOARCH="amd64" go build -ldflags="-s -w" -o ${name}
|
||||
gzip -f ${name}
|
||||
echo ${name}
|
||||
Reference in New Issue
Block a user