在上一篇博客《Jenkins持续集成介绍及插件安装版本更新演示(一)--技术流ken》中已经详细介绍了jenkins的插件安装以版本更新等,本篇博客将再深刻探究jenkins的更多功能,以便可以熟练使用jenkins完成工做中的内容。html
本篇博客将详细讲解有关jenkins的凭证以及新建任务的演示,有关jenkins系列会一直更新到jenkins与gitlab和ansible完成动态和静态网站持续集成自动化部署为止,敬请期待。node
有许多第三方网站和应用程序能够与 Jenkins 进行交互,例如程序代码仓库,云存储系统和服务等。git
此类应用程序的系统管理员能够在应用程序中配置凭证以专供 Jenkins 使用。一般经过将访问控制应用于这些凭证来完成这项工做,以“锁定”Jenkins可用的应用程序功能区域。一旦 Jenkins 管理员(即管理 Jenkins 站点的 Jenkins 用户)在 Jenkins 中添加/配置这些凭证,Pipeline 项目就可使用凭证与这些第三方应用程序进行交互。shell
Jenkins 中保存的凭证能够用于:wordpress
第一步:建立凭证gitlab
进入你的jenkins的首页,点击左边栏的凭证post
第二步:点击全局凭据网站
第三步:点击 添加一些凭据this
第四步:输入信息url
在以下的对话框中输入你的信息点击肯定便可
第五步:首页查看
便可看到咱们已经添加的凭据
若是你想使用jenkins完成平常的工做,那么你必需要学会如何使用任务。
所谓的任务你能够这样理解就是你须要执行的一系列动做。
第一步:点击新建任务
第二步:输入你要建立的任务名称
输入完成点击下方的肯定便可
注意:名称不能有空格
这个名称就是一个目录,接下来咱们会演示git,git拉取到的内容就是保存了这个同名目录下面
第三步:填写你须要看到的信息
在参数构建过程当中参数有几个你必须知道的是文本参数和选项参数
这里我选择选项参数进行演示
第四步:git获取项目
URL输入你的项目地址
凭证哪里添加能够获取到你的项目的用户和用户名
branch哪里添加分支
第五步:构建
这里就是把 你的命令添加在这里便可
在shell中添加以下内容并保存便可
第六步:构建参数
若是你选择了选项参数,在这个任务界面就能够看到这个选项
点开这个,就会看到咱们刚才输入的tyep以及auto了(忘记了请往上翻一下哦)
第七步:返回结果
若是执行成功了左下角的圆圈就是蓝色的
执行失败了就是红色
鼠标放上去也会看到提示信息的
第八步:查看执行过程
下图中的红色框都是我刚才执行的命令
第一列:的/var/lib/jenkins/workspace/test_for_block 是echo 的结果,表示jenkins如今工做目录是在你的任务名称下的
第二列:显示当前所在的目录,其实能够发现咱们如今就处在本身的新建任务的同名目录中
第三列:进入到工做目录,即当下
第四列:给咱们展现了当前目录下的全部文件,能够看到咱们远程仓库中的文件已经被拉取到了当前文件夹下
层级结构
第一层:pipline,这是最外层
第二层:stages,这层是用来完成一个特定的工做,其中有一个或者多个子层,每一个子层是一个stage
第三册:stage,这是stages的子层
第四层:steps,这层是定义具体要执行的操做
pipline { agent any; environment { user='deploy' host='1.2.3.4' PATH='/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin' } stages { stage('bulid job') { environment { NEWPATH='/bin:/sbin' } steps { sh '/home/a.sh' echo "hi boys" script{ xxxx xxxx } } } } }
区域:
1. agent:定义当前的job运行在哪一个jenkins节点上
any:
none:
node:
agent {node {label 'ser1'}}
agent any
2. environment:定义环境变量
格式:变量名=变量值
3. script:可选的
4. steps:借助于特定的jenkis模块来完成特定的工做
echo
sh
git
第一步:新建任务
选择流水线
第二步: 编写pipeline
能够发现这里面的界面比咱们以前选择的freestyle界面简洁的多
在这里填写你的pipeline保存便可
第三步:构建
点击当即构建便可
第四步:查看执行结果
能够发现执行成功
pipeline的功能不少,在接下来的博客当中会使用pipeline完成动态网站的持续集成部署。
上面例子中的pipeline代码
pipeline{ agent {node {label 'master'}} environment { PATH="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin" } parameters{ choice( name: "deploy_env", choices: "dev\nprod", description: "this is for liang lei xi tong" ) string(name: 'version',defaultValue: '1.0.0', description: '版本号') } stages { stage("test for pipline job"){ steps{ sh "git config --global http.sslVerify false" dir ("${env.WORKSPACE}"){ git branch:'master', url:'http://10.220.5.232/gp1/wordpress.git', credentialsId:'119a7e29-4c6c-4f75-bfdb-56fa0edcafaa' } } } stage("print bianlian"){ steps{ sh """ set +x echo "===============start job==============" echo "你选的类型是 $deploy_env" echo "your version is $version" echo "===============stop job ==============" set -x """ } } } }