利用Jenkinsfile创建流水线任务
初体验笔记
Jenkins是一款开源 CI&CD 软件,用于自动化各种任务,包括构建、测试和部署软件。
Jenkins 支持各种运行方式,可通过系统包、Docker 或者通过一个独立的 Java 程序。
Jenkins任务创建有2种方式。
- 经典用户界面Dashboard创建任务
- 利用Blue Ocean接口创建流水线,如果git库中没有Jenkinsfile,会引导你手动添加步骤
利用BlueOcean+Jenkinsfile创建流水线大致三个步骤——初始化git库、添加Jenkins文件、创建流水线并执行。
初始化git库
在gitlab上创建空白项目simple-pipeline
,本地用vue-cli创建同名工程,然后将工程代码提交到gitlab库上。
具体步骤如下:
创建gitlab代码库
选择创建空白项目
输入Simple Pipline项目名,并创建项目。
初始化vue工程
利用gitbash执行创建指令,选择vue3默认脚手架。
vue create simple-pipeline
注意,工程路径不要存在特殊字符,否则可能会导致vue-cli-server路径报错。
分别执行如下指令完成vue工程提交gitlab
# 进入工程
cd simple-pipeline
# 安装依赖
npm i
# 本地启动工程,浏览器确认工程创建成功。http://localhost:8080/
npm run serve
# 添加远端
git remote add origin http://xxxxx/simple-pipeline.git
# 确认添加远端成功
git remote -v
# master重命名为main。gitlab默认主分支为main,本地初始化项目默认是master,调整一致
git branch -M main
# 拉取远端分支内容
git fetch origin
git pull origin main --allow-unrelated-histories
# 提交代码
git status
git add .
git commit -m 'init project'
git push -u origin main
# 注:如果gitlab上创建空白项目没有任何文件,可以直接提交,否则的话要修改可能的冲突再提交
至此,初始化git库完成
添加Jenkins文件
在本地工程的根目录创建Jenkinsfile文件,不要后缀名。录入如下内容
pipeline {
agent any
stages {
stage("1.静态检查") {
steps {
echo '开始静态检查'
echo '检查结束,代码质量良好'
}
}
stage("2.编译") {
steps {
echo '开始安装环境'
echo '开始编译'
echo '编译成功'
}
}
stage("3.构建") {
steps {
echo '开始构建'
echo '构建成功'
}
}
stage("4.部署") {
steps {
echo '开始传包'
echo '传包成功'
echo '开始部署'
echo '部署成功'
}
}
}
post {
success {
echo '执行成功 successful'
}
failure {
echo '执行失败 failed'
}
}
}
提交代码
git add Jenkinsfile
git commit -m 'Add Jenkinsfile'
git push origin
gitlab上显示文件
创建流水线并执行
打开Jenkins网址,左侧导航选择【打开Blue Ocean】
右上角选择【创建流水线】进入创建页面。
填入代码库时,还要输入认证凭据,将拥有代码权限的gitlab账号密码填入即可自动生成凭证。
点击【创建流水线】稍等片刻,流水线创建成功,自动运行。