+
This commit is contained in:
98
jenkins/流水线配置/go_中转服务/s5_go_lessie_sourcing_api copy.conf
Normal file
98
jenkins/流水线配置/go_中转服务/s5_go_lessie_sourcing_api copy.conf
Normal file
@@ -0,0 +1,98 @@
|
||||
pipeline {
|
||||
agent any
|
||||
tools{
|
||||
go 'go1.24.0'
|
||||
}
|
||||
environment {
|
||||
REMOTE_HOST_A = "49.51.33.153"
|
||||
REMOTE_PROJECT_PATH_A = "/data/webapps/go_lessie_sourcing_api_s5"
|
||||
PORT_A = "8100"
|
||||
CONNECTION_TIMEOUT = "300" // 等待连接关闭的超时时间
|
||||
CHECK_PORT_SCRIPT = "/data/sh/check_port.sh" // 检查服务所运行的端口是否起起来
|
||||
SEND_STOP_GOAPP_SCRIPT = "/data/sh/send_stop_goapp_s5.sh" // 发送GO的优雅停止信号
|
||||
WAIT_CONNECTIONS_SCRIPT = "/data/sh/wait_for_connections.sh" // 监测实例A是否有连接
|
||||
}
|
||||
|
||||
stages {
|
||||
stage('Checkout代码') {
|
||||
steps {
|
||||
echo "阶段一"
|
||||
git branch: "${params.Code_branch}", credentialsId: 'fly_gitlab_auth', url: 'http://172.24.16.20/go/lessie-sourcing-api.git'
|
||||
}
|
||||
}
|
||||
stage('依赖&构建') {
|
||||
steps {
|
||||
echo "阶段二"
|
||||
sh """
|
||||
cd ${WORKSPACE}/
|
||||
export GOVCS="git.deeplink.media:git,*:git"
|
||||
echo "拉依赖"
|
||||
go mod tidy -v -x
|
||||
echo "构建二进制文件"
|
||||
make build-linux
|
||||
cp ./build/lessie-sourcing-api ./build/lessie-sourcing-api-s5
|
||||
chmod +x ./build/lessie-sourcing-api-s5
|
||||
"""
|
||||
}
|
||||
}
|
||||
stage('A同步') {
|
||||
steps {
|
||||
echo "阶段三"
|
||||
sh """
|
||||
echo "进入jenkins工作目录:${WORKSPACE}"
|
||||
cd ${WORKSPACE}/
|
||||
echo "同步二进制产物"
|
||||
rsync -avzuP ./build/lessie-sourcing-api-s5 ./configs/application_s5.yaml ${REMOTE_HOST_A}:${REMOTE_PROJECT_PATH_A}/
|
||||
"""
|
||||
}
|
||||
}
|
||||
stage('A下线') {
|
||||
steps {
|
||||
echo "阶段三"
|
||||
sh """
|
||||
ssh ${REMOTE_HOST_A} '
|
||||
echo "向实例A发送优雅关闭信号"
|
||||
sh ${SEND_STOP_GOAPP_SCRIPT}
|
||||
echo "监测实例A是否有连接"
|
||||
sh ${WAIT_CONNECTIONS_SCRIPT} ${PORT_A} ${CONNECTION_TIMEOUT}
|
||||
'
|
||||
"""
|
||||
}
|
||||
}
|
||||
stage('A启动') {
|
||||
steps {
|
||||
echo "阶段四"
|
||||
sh """
|
||||
ssh ${REMOTE_HOST_A} '
|
||||
cd ${REMOTE_PROJECT_PATH_A}
|
||||
chmod +x ./lessie-sourcing-api-s5
|
||||
nohup env ENV=s5 ./lessie-sourcing-api-s5 --port 8100 > ./go.log 2>&1 &
|
||||
'
|
||||
"""
|
||||
}
|
||||
}
|
||||
stage('探测A服务 ') {
|
||||
steps {
|
||||
echo "阶段五"
|
||||
sh "sleep 10"
|
||||
sh """
|
||||
ssh ${REMOTE_HOST_A} '
|
||||
echo "查看实例A的启动日志"
|
||||
head -n 5 ${REMOTE_PROJECT_PATH_A}/go.log || true
|
||||
sh ${CHECK_PORT_SCRIPT} 8100 60
|
||||
sleep 5
|
||||
ps aux|grep lessie-sourcing-api-s5
|
||||
'
|
||||
"""
|
||||
}
|
||||
}
|
||||
}
|
||||
post {
|
||||
success {
|
||||
echo '✅ 部署成功!'
|
||||
}
|
||||
failure {
|
||||
echo '❌ 部署失败,请检查日志!'
|
||||
}
|
||||
}
|
||||
}
|
||||
98
jenkins/流水线配置/go_中转服务/s5_go_lessie_sourcing_api.conf
Normal file
98
jenkins/流水线配置/go_中转服务/s5_go_lessie_sourcing_api.conf
Normal file
@@ -0,0 +1,98 @@
|
||||
pipeline {
|
||||
agent any
|
||||
tools{
|
||||
go 'go1.24.0'
|
||||
}
|
||||
environment {
|
||||
REMOTE_HOST_A = "49.51.33.153"
|
||||
REMOTE_PROJECT_PATH_A = "/data/webapps/go_lessie_sourcing_api_s5"
|
||||
PORT_A = "8100"
|
||||
CONNECTION_TIMEOUT = "300" // 等待连接关闭的超时时间
|
||||
CHECK_PORT_SCRIPT = "/data/sh/check_port.sh" // 检查服务所运行的端口是否起起来
|
||||
SEND_STOP_GOAPP_SCRIPT = "/data/sh/send_stop_goapp_s5.sh" // 发送GO的优雅停止信号
|
||||
WAIT_CONNECTIONS_SCRIPT = "/data/sh/wait_for_connections.sh" // 监测实例A是否有连接
|
||||
}
|
||||
|
||||
stages {
|
||||
stage('Checkout代码') {
|
||||
steps {
|
||||
echo "阶段一"
|
||||
git branch: "${params.Code_branch}", credentialsId: 'fly_gitlab_auth', url: 'http://172.24.16.20/go/lessie-sourcing-api.git'
|
||||
}
|
||||
}
|
||||
stage('依赖&构建') {
|
||||
steps {
|
||||
echo "阶段二"
|
||||
sh """
|
||||
cd ${WORKSPACE}/
|
||||
export GOVCS="git.deeplink.media:git,*:git"
|
||||
echo "拉依赖"
|
||||
go mod tidy -v -x
|
||||
echo "构建二进制文件"
|
||||
make build-linux
|
||||
cp ./build/lessie-sourcing-api ./build/lessie-sourcing-api-s5
|
||||
chmod +x ./build/lessie-sourcing-api-s5
|
||||
"""
|
||||
}
|
||||
}
|
||||
stage('A同步') {
|
||||
steps {
|
||||
echo "阶段三"
|
||||
sh """
|
||||
echo "进入jenkins工作目录:${WORKSPACE}"
|
||||
cd ${WORKSPACE}/
|
||||
echo "同步二进制产物"
|
||||
rsync -avzuP ./build/lessie-sourcing-api-s5 ./configs/application_s5.yaml ${REMOTE_HOST_A}:${REMOTE_PROJECT_PATH_A}/
|
||||
"""
|
||||
}
|
||||
}
|
||||
stage('A下线') {
|
||||
steps {
|
||||
echo "阶段三"
|
||||
sh """
|
||||
ssh ${REMOTE_HOST_A} '
|
||||
echo "向实例A发送优雅关闭信号"
|
||||
sh ${SEND_STOP_GOAPP_SCRIPT}
|
||||
echo "监测实例A是否有连接"
|
||||
sh ${WAIT_CONNECTIONS_SCRIPT} ${PORT_A} ${CONNECTION_TIMEOUT}
|
||||
'
|
||||
"""
|
||||
}
|
||||
}
|
||||
stage('A启动') {
|
||||
steps {
|
||||
echo "阶段四"
|
||||
sh """
|
||||
ssh ${REMOTE_HOST_A} '
|
||||
cd ${REMOTE_PROJECT_PATH_A}
|
||||
chmod +x ./lessie-sourcing-api-s5
|
||||
nohup env ENV=s5 ./lessie-sourcing-api-s5 --port 8100 > ./go.log 2>&1 &
|
||||
'
|
||||
"""
|
||||
}
|
||||
}
|
||||
stage('探测A服务 ') {
|
||||
steps {
|
||||
echo "阶段五"
|
||||
sh "sleep 10"
|
||||
sh """
|
||||
ssh ${REMOTE_HOST_A} '
|
||||
echo "查看实例A的启动日志"
|
||||
head -n 5 ${REMOTE_PROJECT_PATH_A}/go.log || true
|
||||
sh ${CHECK_PORT_SCRIPT} 8100 60
|
||||
sleep 5
|
||||
ps aux|grep lessie-sourcing-api-s5
|
||||
'
|
||||
"""
|
||||
}
|
||||
}
|
||||
}
|
||||
post {
|
||||
success {
|
||||
echo '✅ 部署成功!'
|
||||
}
|
||||
failure {
|
||||
echo '❌ 部署失败,请检查日志!'
|
||||
}
|
||||
}
|
||||
}
|
||||
98
jenkins/流水线配置/go_中转服务/s6_go_lessie_sourcing_api.conf
Normal file
98
jenkins/流水线配置/go_中转服务/s6_go_lessie_sourcing_api.conf
Normal file
@@ -0,0 +1,98 @@
|
||||
pipeline {
|
||||
agent any
|
||||
tools{
|
||||
go 'go1.24.0'
|
||||
}
|
||||
environment {
|
||||
REMOTE_HOST_A = "49.51.33.153"
|
||||
REMOTE_PROJECT_PATH_A = "/data/webapps/go_lessie_sourcing_api_s6"
|
||||
PORT_A = "8101"
|
||||
CONNECTION_TIMEOUT = "300" // 等待连接关闭的超时时间
|
||||
CHECK_PORT_SCRIPT = "/data/sh/check_port.sh" // 检查服务所运行的端口是否起起来
|
||||
SEND_STOP_GOAPP_SCRIPT = "/data/sh/send_stop_goapp_s6.sh" // 发送GO的优雅停止信号
|
||||
WAIT_CONNECTIONS_SCRIPT = "/data/sh/wait_for_connections.sh" // 监测实例A是否有连接
|
||||
}
|
||||
|
||||
stages {
|
||||
stage('Checkout代码') {
|
||||
steps {
|
||||
echo "阶段一"
|
||||
git branch: "${params.Code_branch}", credentialsId: 'fly_gitlab_auth', url: 'http://172.24.16.20/go/lessie-sourcing-api.git'
|
||||
}
|
||||
}
|
||||
stage('依赖&构建') {
|
||||
steps {
|
||||
echo "阶段二"
|
||||
sh """
|
||||
cd ${WORKSPACE}/
|
||||
export GOVCS="git.deeplink.media:git,*:git"
|
||||
echo "拉依赖"
|
||||
go mod tidy -v -x
|
||||
echo "构建二进制文件"
|
||||
make build-linux
|
||||
cp ./build/lessie-sourcing-api ./build/lessie-sourcing-api-s6
|
||||
chmod +x ./build/lessie-sourcing-api-s6
|
||||
"""
|
||||
}
|
||||
}
|
||||
stage('A同步') {
|
||||
steps {
|
||||
echo "阶段三"
|
||||
sh """
|
||||
echo "进入jenkins工作目录:${WORKSPACE}"
|
||||
cd ${WORKSPACE}/
|
||||
echo "同步二进制产物"
|
||||
rsync -avzuP ./build/lessie-sourcing-api-s6 ./configs/application_s6.yaml ${REMOTE_HOST_A}:${REMOTE_PROJECT_PATH_A}/
|
||||
"""
|
||||
}
|
||||
}
|
||||
stage('A下线') {
|
||||
steps {
|
||||
echo "阶段三"
|
||||
sh """
|
||||
ssh ${REMOTE_HOST_A} '
|
||||
echo "向实例A发送优雅关闭信号"
|
||||
sh ${SEND_STOP_GOAPP_SCRIPT}
|
||||
echo "监测实例A是否有连接"
|
||||
sh ${WAIT_CONNECTIONS_SCRIPT} ${PORT_A} ${CONNECTION_TIMEOUT}
|
||||
'
|
||||
"""
|
||||
}
|
||||
}
|
||||
stage('A启动') {
|
||||
steps {
|
||||
echo "阶段四"
|
||||
sh """
|
||||
ssh ${REMOTE_HOST_A} '
|
||||
cd ${REMOTE_PROJECT_PATH_A}
|
||||
chmod +x ./lessie-sourcing-api-s6
|
||||
nohup env ENV=s6 ./lessie-sourcing-api-s6 --port 8101 > ./go.log 2>&1 &
|
||||
'
|
||||
"""
|
||||
}
|
||||
}
|
||||
stage('探测A服务 ') {
|
||||
steps {
|
||||
echo "阶段五"
|
||||
sh "sleep 10"
|
||||
sh """
|
||||
ssh ${REMOTE_HOST_A} '
|
||||
echo "查看实例A的启动日志"
|
||||
head -n 5 ${REMOTE_PROJECT_PATH_A}/go.log || true
|
||||
sh ${CHECK_PORT_SCRIPT} 8101 60
|
||||
sleep 5
|
||||
ps aux|grep lessie-sourcing-api-s6
|
||||
'
|
||||
"""
|
||||
}
|
||||
}
|
||||
}
|
||||
post {
|
||||
success {
|
||||
echo '✅ 部署成功!'
|
||||
}
|
||||
failure {
|
||||
echo '❌ 部署失败,请检查日志!'
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user