首页 > 其他分享 >Infisical怎么在Jenkins内调用

Infisical怎么在Jenkins内调用

时间:2024-08-23 09:50:35浏览次数:15  
标签:插件 Infisical 调用 密钥 infisical Jenkins infisicalKey

参考
https://infisical.com/docs/integrations/cicd/jenkins#jenkins-plugin
Jenkins参考
https://plugins.jenkins.io/infisical/
前提条件

  • 安装配置infisical
  • 设置了项目和密钥
  1. Infisical创建身份认证
    创建身份
    Access Control->Machine Identities -> Create identify
    image
    image
    生成密钥
    image
    创建客户端密钥
    image
    image
    生成密钥
    只有在生成时显示,生成以后编辑无法显示,需要重新生成
    image
    在项目内绑定身份认证信息
    项目名称本次为Demo App Access Control->Machine Identities -> Add identify
    image
    image

  2. Jenkins安装infisical插件
    Jenkins安装插件
    Dashboard -> Manage Jenkins -> Credentials -> System -> Global credentials
    image
    搜索Infisical插件并安装
    image

  3. Jenkins创建认证
    Dashboard -> Manage Jenkins -> Credentials
    image
    点击以下位置插件认证
    image
    image
    image

  4. Jenkins任务使用infisical
    Jenkins新建一个任务
    image
    配置infisical
    需要提供四个信息
    image
    Slug信息在以下位置找到
    image
    添加需要获取的密钥的key值
    image
    添加构建步骤输出刚刚设置下key值
    image
    控制台输出key的值为*
    image
    需要显示真实的值则下载一段代码设置重定向至代码的某个文件
    设置拉取Git代码
    image
    修改构建步骤把刚刚设置的变量值重定向至代码根目录一个文件
    image
    再次支持构建然后到Jenkins服务器去查看该文件的内容
    显示的是明文内容了

# cat /var/lib/jenkins/workspace/Demo\ App/infisical 
BAR
  1. Jenkins流水线使用infisical
    创建一个流水线任务
    image
    配置流水线
    image
    在流水线添加以下代码
node {
    withInfisical(
        configuration: [
            infisicalCredentialId: 'DemoAPP',
            infisicalEnvironmentSlug: 'dev', 
            infisicalProjectSlug: 'demo-app-u-e6u', 
            infisicalUrl: 'https://app.infisical.com' // Change this to your Infisical instance URL if you aren't using Infisical Cloud.
        ], 
        infisicalSecrets: [
            infisicalSecret(
                includeImports: true, 
                path: '/', 
                secretValues: [
                    [infisicalKey: 'FOO'],
                    [infisicalKey: 'FOO2'],
                    [infisicalKey: 'NAME'],
                    [infisicalKey: 'AGE']
                ]
            )
        ]
    ) {
        // Code runs here
        sh "printenv"
    }
}

需要配置Jenkins密钥ID

注意:该ID严格区分大小写

Slug信息和上面配置的一样的

同理对应的key的值在控制台输出也是*
image

标签:插件,Infisical,调用,密钥,infisical,Jenkins,infisicalKey
From: https://www.cnblogs.com/minseo/p/18375294

相关文章

  • C#使用委托实现函数回调,方法调用拦截
    C#使用委托实现函数回调,方法调用拦截回调方法、拦截方法定义publicclassAopHelper{publicstaticasyncTask<T>ExecuteGenericMethod<T>(Task<T>returnValue,Action<T>callBackAction,Action<Exception>exceptionAction,ActionfinallyAction){......
  • docker 部署jenkins
    #查看jenkins镜像dockersearchjenkins#安装jenkinsdockerpulljenkins/jenkins:lts#jenkins挂载目录mkdir-p/home/jenkins/workspace#启动jenkinsdockerrun-uroot-d--restart=always-p9001:8080\-v/home/jenkins/workspace/:/var/jenkins_home/workspace......
  • android调用h5代码步骤
    要在Android应用中调用H5代码,可以使用WebView来加载并执行H5代码。以下是一个简单的示例:首先,在你的Android项目中的布局文件中添加一个WebView组件:```xml<WebView  android:id="@+id/webview"  android:layout_width="match_parent"  android:layout_height="......
  • jenkins 自动安装 和 手动安装java 或者一些其他环境配置的区别
    由于之前的jenkins存在安全漏洞,升级了jenkins,相应的jenkinsmaster服务器上的javajdk也一起升级为openjdk21.升级后发现:1.新的jenkins的slavenode启动的jar包下载后,在原来的slavenode服务器上面无法正常被执行了。这时我才知道原来升级了jenkins,对应的slavenode启动的jar......
  • Jenkins从2.401.1升级到2.440.1后项目配置报错,提示:JSONObject["scm"] is not a JSONOb
    因为安全原因升级了Jenkins。然后发现Project-->Configure那里配置竟然嵌套了,而且保存修改的时候,提示:JSONObject["scm"]isnotaJSONObject. 异常信息表明在JSON中尝试获取一个名为“scm”的属性时,期望得到的是一个JSONObject,但实际上并不是。可能是因为JSON中的......
  • jenkins 自动化流程
     ......
  • 织梦dedeCMS怎么使用arclist标签调用自定义字段
    {dede:arclistrow='10'titlelen='24'orderby='pubdate'idlist=''col='2'}[field:textlink/]([field:pubdatefunction=MyDate('m-d',@me)/])<br/>{/dede:arclist}row=‘10’返回文档列表总数typeid=‘’栏目ID......
  • jmeter压测组件bzm-Arrivals Thread Group使用Jenkins运行配置
    jmeter脚本设置Jenkins设置运行代码设置cd/home/jmeterWorkplace/performceTps/script/home/app/apache-jmeter-5.4.3/bin/jmeter-n-tjenkins_test.jmx-Jtarget_rate=${target_rate}-Jramp_up_time=${ramp_up_time}-Jramp_up_step_count=${ramp_up_step_count}-Jh......
  • Element Plus表单调用resetFields方法失效
    问题描述:你会发现在第一次点击新增按钮的时候然后再点击编辑按钮,再点击新增按钮表单是可以正常清空的。但是如果你第一次点击编辑按钮,表单数据回显,关闭窗口再点击新增按钮发现编辑的数据竟然还在,就很玄乎。而且,你点击编辑其他数据再点击新增按钮发现竟然是第一次点击编辑的数据!......
  • C#调用python程序
    //在NuGet中安装pythonnet插件usingPython.Runtime;privatevoidbt_python_Click(objectsender,EventArgse){dynamicdynamic;Stopwatchsw=newStopwatch();sw.Start();Runtime.PythonDLL=Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Loc......