我正在尝试将我现有的 Jenkins Freestyle Golang 作业转换为 Jenkinsfile,我可以将其与我的项目一起签入,以便我可以在管道作业中使用它。
所述工作只是运行所有 Go 测试并在所有测试通过后构建项目。部署还不是这项工作的关注点。
我的工作设置如下:
Go 插件安装:
Name: Go
Install Automatically: Checked
Install from golang.org: Go 1.11.2
注意:我给它起的名字Go是为了让 Go 安装文件夹部分Go/src在下面的目录中保持一致。
凭证(全球):
Username with password: (My email address and password)
职位配置:
Use custom workspace: Checked
Directory: /var/lib/jenkins/tools/org.jenkinsci.plugins.golang.GolangInstallation/Go/src/MY_PROJECT_NAME
Source Code Management:
Git
Repository URL: MY_PRIVATE_BITBUCKET_URL.git
Credentials: (My email address and password)
Branches to build: */master
Build Environment:
Set up Go programming language tools: Checked
Go version: Go
Build
Execute Shell
# Remove cached test results.
go clean -cache
# Run all Go tests.
cd /var/lib/jenkins/tools/org.jenkinsci.plugins.golang.GolangInstallation/Go/src/MY_PROJECT_NAME
go test ./... -v
Execute Shell
# Build the project.
cd /var/lib/jenkins/tools/org.jenkinsci.plugins.golang.GolangInstallation/Go/src/MY_PROJECT_NAME
go build
我尝试使用该Convert To Pipeline插件,但它无法完全转换作业:
// Powered by Infostretch
timestamps {
node () {
stage ('MY_PROJECT_NAME - Checkout') {
checkout([$class: 'GitSCM', branches: [[name: '*/master']], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[credentialsId: 'MY_CREDENTIALS_ID', url: 'MY_PRIVATE_BITBUCKET_URL.git']]])
}
如何将这个简单的作业转换为 Jenkinsfile?如有必要,我也愿意将 Docker 集成到所述文件中。
森林海
相关分类