持续集成系统Jenkins[权限管理|凭据管理|BlueOcean UI]

root
233
文章
0
评论
2021年9月5日17:56:10 评论 2057字阅读6分51秒

持续集成系统Jenkins[权限管理|凭据管理|BlueOcean UI]

 

Jenkins系统权限管理

注意安装插件: 权限默认使用 Role-Based Strategy。

jenkins的默认策略是任何用可以做任何事情

管理权限
  • 系统设置->Manage and Assign Roles->Manage Roles
  • Global roles:添加用户和用户组,分配某个用户属于哪个用户组。
  • Item roles:添加某个工程或某一组工程的用户或用户组
  • Node roles:添加某个节点或某一组节点的用户或用户组

比如设置开发人员的权限,这是一个全局权限

Role全部凭据代理任务运行视图SCMLockable Resources
AdministerReadCreateDeleteManageDomainsUpdateViewBuildConfigureConnectCreateDeleteDisconnectProvisionBuildCancelConfigureCreateDeleteDiscoverMoveReadWorkspaceDeleteReplayUpdateConfigureCreateDeleteReadTagReserveUnlockView
dev

创建开发 用户,赋予上面dev权限

局部授权

Pattern凭据任务运行SCMLockable Resources
CreateDeleteManageDomainsUpdateViewBuildCancelConfigureCreateDeleteDiscoverMoveReadWorkspaceDeleteReplayUpdateTagReserveUnlockView
hwfhwf-.*?

局部分配角色

Jenkins系统凭据管理

  • Username with password类型存储Harbor或者其他系统的用户名和密码。
  • GitLab API token类型存储Gitlab的用户API token。
  • Secret text类型可以用来存储OpenShift等系统中的token。
  • Certificate类型可以用户存储证书,例如k8s的用户证书。

调取jenkins凭据的api代码

def jenkinsCredentials = com.cloudbees.plugins.credentials.CredentialsProvider.lookupCredentials(
        com.cloudbees.plugins.credentials.Credentials.class,
        Jenkins.instance,
        null,
        null
  );
for (creds in jenkinsCredentials) {
  println(creds.id)
  println(creds.username)
  println(creds.password)
}

效果:

使用凭据的方法 :

  • 1.是使用凭据参数
  • 2.流水线语法中使用凭据
  • 3.脚本命令行 调取api使用

使用流线线生成的凭据脚本

//pipeline script
pipeline {
    agent any

    stages {
        stage('Hello') {
            steps {
                echo 'Hello World'
                echo "version: ${Version}"
                echo "Env: ${Envtype}"
                script{
                     withCredentials([usernamePassword(credentialsId: 'a0a55eef-7718-4595-816f-b9c9458bf227', 
                                passwordVariable: 'password', 
                                usernameVariable: 'username')]) {
                         println("username: ${username}")
                         println("password: ${password}")
                         // some block
                    }
                }
            }
        }
    }
}

执行构建查看效果

token的方式使用凭据

 

BlueOcean UI

Blue Ocean减少了混乱而且进一步明确了团队中每个成员 Blue Ocean 的主要特性包括:

  • 续交付(CD)Pipeline的 复杂可视化 ,可以让您快速直观地理解管道状态。
  • Pipeline 编辑器 - 引导用户通过直观的、可视化的过程来创建Pipeline,从而使Pipeline的创建变得平易近人。
  • 个性化 以适应团队中每个成员不同角色的需求。
  • 在需要干预和/或出现问题时 精确定位 。Blue Ocean 展示 Pipeline中需要关注的地方, 简化异常处理,提高生产力
  • 本地集成分支和合并请求, 在与GitHub 和 Bitbucket中的其他人协作编码时实现最大程度的开发人员生产力。

官方文档:https://jenkins.io/zh/doc/book/blueocean/getting-started/

进入Jenkins插件管理然后安装blueocean插件。

使用BlueOcean可视化编辑Pipeline生成Jenkinsfile

可视化流水线,点点就完成了流水线代码的编辑

 

 

 

继续阅读
weinxin
我的微信
这是我的微信扫一扫
  • 文本由 发表于 2021年9月5日17:56:10
  • 除非特殊声明,本站文章均为原创,转载请务必保留本文链接
jenkins-邮件通知|gitlab配置邮箱 Jenkins

jenkins-邮件通知|gitlab配置邮箱

jenkins-邮件通知|gitlab配置邮箱 gitlab-配置邮箱地址 默认情况可能每个Gitlab用户没有配置邮箱的, 需要Gitlab用户要配置好邮箱。 点击头像进入 edit profile...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: