• jenkins凭证插件的安装和基本使用


    凭据可以用来存储需要密文保护的数据库密码、Gitlab密码信息、Docker私有仓库密码等,以便
    Jenkins可以和这些第三方的应用进行交互。

    1. 安装Credentials Binding插件

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

    点击Manage Jenkins选择Manage Plugins

    点击可选插件,待加载完毕后,在过滤框中输入Credentials Binding

    勾选插件,直接安装

    安装插件后,左边多了 "凭证"菜单,在这里管理所有凭证

    2. 可以添加的5种凭证

    • Username with password :用户名和密码

    • SSH Username with private key : 使用SSH用户和密钥

    • Secret file :需要保密的文本文件,使用时Jenkins会将文件复制到一个临时目录中,再将文件路径设置到一个变量中,等构建结束后,所复制的Secret file就会被删除。

    • Secret text :需要保存的一个加密的文本串,如钉钉机器人或Githubapi token

    • Certificate :通过上传证书文件的方式

      常用的凭证类型有:Username with password(用户密码)和SSH Username with private keySSH
      密钥)


    3. 使用Git工具到Gitlab拉取项目源码

    演示Jenkins的如何管理Gitlab的凭证。

    3. 1 安装Git插件和Git工具

    安装GIT插件

    为了让Jenkins支持从Gitlab拉取源码,需要安装Git插件以及在CentOS7上安装Git工具。

    点击Manage Jenkins选择Manage Plugins

    勾选,直接安装

    安装Git工具

    CentOS7 上安装Git工具:

    yum -y install git
    # 查看git 版本
    git --version
    

    3.2 创建用户密码类型凭证

    Jenkins->凭证->系统->全局凭证->添加凭证

    选择 "Username with password",输入Gitlab的用户名和密码,点击"确定"。

    3.3 测试用户密码凭证是否可用

    创建一个FreeStyle项目:新建Item->FreeStyle Project->确定

    找到 "源码管理"->"Git",在Repository URL复制Gitlab中的项目URL

    将地址填入test01中选择Git

    这时会报错说无法连接仓库!在 Credentials选择刚刚添加的凭证就不报错了

    保存配置后,点击构建 ”Build Now“ 开始构建项目

    查看 /var/lib/jenkins/workspace/目录可以看到gitlab中的代码已经成功被拉取到jenkins

    3.3 创建SSH类型凭证

    生成公钥和私钥

    1. jenkins服务器上使用root用户生成公钥和私钥
    ssh-keygen -t rsa
    

    /root/.ssh/目录保存了公钥和使用

    • id_rsa :私钥文件
    • id_rsa.pub:公钥文件

    1. 把生成的公钥放在Gitlab
    # 读取公钥内容,复制,并填入gitlab
    cat ~/.ssh/id_rsa.pub
    

    root账户登录->点击头像->Settings->SSH Keys

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

    1. Jenkins中添加凭证,配置私钥
      Jenkins添加一个新的凭证,类型为"SSH Username with private key",把刚才生成私有文件内容复
      制过来

    点击确定

    3.4 测试SSH类型凭证是否可用

    新建"test02"项目->源码管理->Git,这次要使用GitlabSSH连接,并且选择SSH凭证

    同样尝试构建项目

    至此,使用用户密码凭证和使用SSH凭证从gitlab拉取代码成功

    参考

    java教程手把手教你Jenkins从环境配置到项目开发

  • 相关阅读:
    link rel=”canonical”标签
    overflow:hidden导致元素高度增加的问题
    python读取字节中的位
    chrome extension 扩展开发中 popup 页面卡顿问题
    chrome extension打开新窗口
    禁止enter回车键出发页面的onsubmit事件
    ArgumentError("subject table for an INSERT, UPDATE or DELETE expected, got Column('id', Integer(), table=<user>, primary_key=True, nullable=False)."
    urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1076)>
    vite-v3-ts-0到0.8
    执行shell脚本无法访问 logs/catalina.out^M: 没有那个文件或目录
  • 原文地址:https://www.cnblogs.com/ifme/p/12862288.html
Copyright © 2020-2023  润新知