PersonalMain-Golang/Jenkinsfile

41 lines
1.4 KiB
Go
Raw Normal View History

2024-01-31 13:40:59 +08:00
pipeline {
2024-01-31 15:02:47 +08:00
environment {
2024-01-31 13:40:59 +08:00
QODANA_TOKEN=credentials('qodana-token')
2024-01-31 15:02:47 +08:00
}
2024-01-31 16:26:58 +08:00
agent any
2024-01-31 16:25:45 +08:00
2024-01-31 15:02:47 +08:00
stages {
2024-01-31 16:23:02 +08:00
stage('Qodana代码检查') {
when {
branch 'feature'
}
2024-01-31 15:02:47 +08:00
steps {
2024-01-31 16:25:45 +08:00
script {
docker.image('jetbrains/qodana-go').run('''
-v "${WORKSPACE}":/data/project
--entrypoint=""
''') {
sh 'qodana'
}
}
2024-01-31 15:02:47 +08:00
}
}
2024-01-31 16:23:02 +08:00
stage('项目部署') {
steps {
2024-01-31 16:25:45 +08:00
sh 'echo "部署项目"'
sh 'export GOARCH=amd64'
sh 'export GOOS=linux'
2024-01-31 16:38:33 +08:00
sh '/usr/local/go/bin/go build -o personalMain'
2024-01-31 16:23:02 +08:00
}
}
stage('项目部署至服务器') {
steps {
2024-01-31 16:25:45 +08:00
sh 'echo "部署项目至服务器"'
2024-01-31 16:43:12 +08:00
sshPublisher(publishers: [sshPublisherDesc(configName: 'XiaoLFengBlogServer', transfers: [sshTransfer(cleanRemote: false, excludes: '', execCommand: '''cd ./blog-main
chmod +x ./personalMain
nohup ./personalMain > logger.log 2>&1 &''', execTimeout: 120000, flatten: false, makeEmptyDirs: false, noDefaultExcludes: false, patternSeparator: '[, ]+', remoteDirectory: 'blog-main', remoteDirectorySDF: false, removePrefix: '', sourceFiles: './personalMain')], usePromotionTimestamp: false, useWorkspaceInPromotion: false, verbose: true)])
2024-01-31 16:25:45 +08:00
}
2024-01-31 16:23:02 +08:00
}
2024-01-31 15:02:47 +08:00
}
2024-01-31 16:25:45 +08:00
}