Bash命令将文件添加到Git工作目录,然后在作业完成时删除-Jenkins

时间:2019-03-06 17:38:24

标签: bash git jenkins

我在上一份工作中进行了此设置,但是不记得具体的命令是什么,并且在我的新工作中找不到任何示例。我有一个creds文件,我想在作业运行时将其拖放到git中,然后在作业完成时将其删除,因此凭据不会存储在git中。

因此,基本上,预构建将文件从Jenkins服务器加载到Git期望其进入的工作目录中,然后在作业完成后将其从WD中删除。

2 个答案:

答案 0 :(得分:0)

所以这比我想的要简单得多:

cp ${JENKINS_HOME}/path_to_creds_file ${WORKSPACE}/path_to_dummy_file_to_overwrite

后跟以下构建步骤:

rm ${WORKSPACE}/path_to_dummy_file_to_overwrite

答案 1 :(得分:0)

Jenkins通过Credentials Binding plugin

提供凭据支持

此插件允许将多种凭证或机密信息(例如用户:密码,令牌,机密文本,机密文件等)绑定到环境变量(如果您还安装了de ssh插件,则将拥有可用的ssh密钥凭证)也是

您可以在withCredentials()块中将凭据和机密用作环境变量,并且与Jenkinsfile Pipeline语法完全兼容,您可以找到文档here

在脚本化管道中使用凭据的一些示例(也适用于声明性管道):

node {
  withCredentials([string(credentialsId: 'mytoken', variable: 'TOKEN')]) {
    sh '''
      set +x
      curl -H "Token: $TOKEN" https://some.api/
    '''
  }
}
node {
  dir('subdir') {
    withCredentials([file(credentialsId: 'secret', variable: 'FILE')]) {
      sh 'use $FILE'
    }
  }
}