• Jenkins 凭据使用


    原文链接:https://blog.spiritling.cn/posts/6b626a8a/

    环境变量

    jenkinsfile 使用环境变量

    代码:

    pipeline {
      agent {
        docker {
          image 'spiritling/node:10.15.3'
        }
    
      }
      stages {
        stage('get') {
          environment {
            VERSION = sh(script: 'node script/auto-versioning.js', , returnStdout: true)
          }
          steps {
            sh 'echo "VERSION: "$VERSION'
        }
      }
    }
    

    将 auto-versioning.js 执行后返回的文本或数字存入到 VERSION 环境变量中去

    steps 中使用 $VERSION 来获取环境变量

    凭据

    账号密码凭据管理

    创建凭据,以下为例子:

    类型:Username with password
    范围:全局
    用户名:root
    密码:rootxxxx
    ID:BIRRARY_ID
    描述:随意填写

    在 jenkinsfile 中使用

    pipeline {
      agent {
        docker {
          image 'spiritling/node:10.15.3'
        }
    
      }
      stages {
        stage('get') {
          steps {
            withCredentials([usernamePassword(credentialsId: 'BIRRARY_ID', passwordVariable: 'password', usernameVariable: 'username')]) {
              sh 'git remote set-url origin https://${username}:${password}@github.com/spiritling/blog.git'
            }
            sh 'echo "获取凭据"'
        }
      }
    }
    

    可以在 jenkinsfile 文件的构建过程中获取到 username 和 password 的凭据,并且可以在后续将其插入进去

    加密文本凭据管理

    创建凭据,以下为例子:

    类型:Secret text
    范围:全局
    Secret:rootxxxx
    ID:BIRRARY_ID
    描述:随意填写

    在 jenkinsfile 中使用

    pipeline {
      agent {
        docker {
          image 'spiritling/node:10.15.3'
        }
    
      }
      stages {
        stage('get') {
          steps {
            withCredentials([string(credentialsId: 'ID:BIRRARY_ID', variable: 'secret')]) { //set SECRET with the credential content
              sh 'echo -e "registry=https://npmjs.org/spiritling/
    _auth = ${secret}
    email = spirit_ling_cn@163.com
    always-auth = true
    $PATH" > .npmrc'
            }
            sh 'echo "获取凭据"'
        }
      }
    }
    

    可以在 jenkinsfile 文件的构建过程中获取到 secret 的凭据,并且可以在后续将其插入进去

  • 相关阅读:
    判断activity是否显示在界面上
    限制EditText的输入字数
    安卓自定义类似TabHost的导航栏
    安卓中加载布局文件的三种方法
    绘图——Android绘图基础:Canvas、Paint等
    使用简单图片
    使用原始资源
    MySQL分表(Partition)学习研究报告
    Docker基础知识介绍
    Python开发系列
  • 原文地址:https://www.cnblogs.com/spirit-ling/p/13327976.html
Copyright © 2020-2023  润新知