• Jenkins中安装Credentials Binding插件实现凭证管理与安装Git插件和拉取代码构建项目


    场景

    CentOS中Jenkins的下载、安装、配置与启动(图文教程):

    https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/116490738

    在上面将jenkins安装配置好之后。

    要在Jenkins使用凭证管理功能,需要安装Credentials Binding插件

    注:

    博客:
    https://blog.csdn.net/badao_liumang_qizhi
    关注公众号
    霸道的程序猿
    获取编程相关电子书、教程推送与免费下载。

    实现

    在系统管理-插件管理-可选插件中搜索

    Credentials Binding

    然后点击Install without restart

    在安装过程中会让你安装多个插件,确保每个插件都能安装成功才行。

    这里是已经安装完成。

    所以就不会在可选插件中搜索到,而是在已安装中搜索到。

    这里六个插件都是安装上面那一个插件所带的。

    安装成功之后就可以在Dashboard中找到Manage Credentials

    点击全局

    在全局凭证中点击添加一些凭证

     

    这里可以选择凭证类型,可以添加的凭证类型为5种

    Username with password :用户名和密码
    SSH Username with private key : 使用SSH用户和密钥
    Secret file :需要保密的文本文件,使用时Jenkins会将文件复制到一个临时目录中,再将文件路径
    设置到一个变量中,等构建结束后,所复制的Secret file就会被删除。
    Secret text :需要保存的一个加密的文本串,如钉钉机器人或Github的api token
    Certificate :通过上传证书文件的方式

    常用的使用用户名和密码的方式以及使用SSH和秘钥的方式。

    使用用户名和密码的方式

    选择类型为Username with password

    然后下面输入你的gitlab的用户名和密码,点击确定

    那么就可以在全局凭证中看到添加后的凭证了

    安装Git插件和Git工具

    为了让Jenkins支持从Gitlab拉取源码,需要安装Git插件以及在Jenkins所在的CentOS服务器上安装Git工具。

    在系统管理-插件管理-可选插件中搜索Git,并勾选中后点击Install without restart

    然后在CentOS中安装Git可以参照

    CentOS中通过编译源码包的方式安装Git:

    https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/116704345

    验证凭证管理拉取代码

    安装完Git插件和Git之后,在Jenkins中创建一个任务

    然后找到配置-源码管理-Git,在Responsitory中复制Gitlab的项目的Http的地址

    注意这里是Http地址,不能是SSH地址

    然后再下面的Credentials选择上面添加的凭证。

    这一步可能会出现如下问题

    Jenkins中连接Git仓库时提示:error: The requested URL returned error: 401 Unauthorized while accessing

    https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/116708668

    Jenkins中连接Git仓库时提示:无法连接仓库:Error performing git command: git ls-remote -h

    https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/116711146


     然后点击Build Now

    然后左下角就会显示构建历史,点击最新的一次,从查看控制台输出

    可以看到已经成功从Gitlab将代码拉取到了Jenkins中

    可以到Jenkins服务器中查看

    cd /var/lib/jenkins/workspace

    然后

    ls

    SSH凭证管理的方式

    在Jenkins服务器中使用root账户生成公钥和私钥

    首先设置在Jenkins所在的服务器上给git设置下身份的名字和邮箱

    git config --global user.name "yourname"
    
    git config --global user.email "your@email.com "

    注:yourname是你要设置的名字,your@email 是你要设置的邮箱。

    ssh-keygen -t rsa -C "your@email.com "(请填你设置的邮箱地址)

    然后一路回车,直到在 /root/.ssh目录下生成私钥和公钥

    到生成的目录下

    cd /root/.ssh
    
    ls

    然后将id_rsa.pub公钥的内容复制到GitLab中root账户登录-头像-Settings

    -SSH Keys。复制刚才id_rsa.pub文件的内容到这里,点击"Add Key"

    然后在Jenkins中,添加凭证

    选择类型为SSH Username with pricate key

    把刚才生成私有文件内容复制过来

     

    注意这里的私钥的内容一定要复制完全了,包括收尾的两行begin和end

    如果复制不全的话会提示权限不足被拒绝

    Please make sure you have the correct access rights and the repository exist

    然后新建项目-源码管理-Git,这次填写仓库的URL时直接填写项目仓库的ssh地址,然后凭证选择上面新建的凭证。

    然后点击这个项目的构建项目一样能构建成功。

    博客园: https://www.cnblogs.com/badaoliumangqizhi/ 关注公众号 霸道的程序猿 获取编程相关电子书、教程推送与免费下载。
  • 相关阅读:
    C#调用大华摄像头
    K8S原来如此简单(三)Pod+Deployment
    K8S原来如此简单(六)Pod调度
    K8S原来如此简单(八)ServiceAccount+RBAC
    K8S原来如此简单(七)存储
    K8S原来如此简单(五)Metrics Server与HPA
    未能正确加载“MonoAndroidDesignerPackage”包。
    Ubuntu下解决Git保存用户名和密码的方法
    采用WPF开发第二版OFD阅读器,持续完善中,敬请期待!
    能改变你一生的顶级逻辑层次
  • 原文地址:https://www.cnblogs.com/badaoliumangqizhi/p/14764909.html
Copyright © 2020-2023  润新知