29 lines
849 B
Groovy
29 lines
849 B
Groovy
pipeline {
|
|
agent any
|
|
environment {
|
|
APP_HOME = "/opt/go-dy"
|
|
}
|
|
stages {
|
|
stage('Checkout') {
|
|
steps {
|
|
git url: 'http://47.95.203.241:3000/ReeseLin/golang-dy-back', branch: 'main', credentialsId: 'GITEA_CREDENTIAL_ID'
|
|
}
|
|
}
|
|
stage('Build Binary') {
|
|
steps {
|
|
sh 'docker run --rm -v $APP_HOME:/app -w /app golang:1.22-alpine sh -c "go mod tidy && go build -o go-dy ."'
|
|
}
|
|
}
|
|
stage('Build Docker Image') {
|
|
steps {
|
|
sh 'docker build -t go-dy:latest $APP_HOME'
|
|
}
|
|
}
|
|
stage('Deploy') {
|
|
steps {
|
|
sh 'docker stop go-dy || true && docker rm go-dy || true && docker run -d --name go-dy -p 8090:18080 go-dy:latest'
|
|
}
|
|
}
|
|
}
|
|
}
|