Команда Bash для добавления файла в рабочий каталог Git, а затем удаления после завершения задания - Jenkins - PullRequest
0 голосов
/ 06 марта 2019

У меня была эта настройка на моей предыдущей работе, но я не могу вспомнить, что это за конкретная команда, и не могу найти никаких примеров на моей новой работе. У меня есть файл кредитов, который я хочу использовать в git при выполнении задания, а затем удалить при завершении задания, чтобы кредиты не сохранялись в git.

Таким образом, в основном, перед сборкой загрузите файл с сервера Jenkins в рабочий каталог, в котором он ожидает Git, а затем удалите его из WD после завершения задания.

Ответы [ 2 ]

0 голосов
/ 09 марта 2019

Jenkins обеспечивает поддержку учетных данных с помощью плагина Credentials Binding

Этот плагин позволяет привязывать несколько переменных учетных данных или секретов, таких как пользователь: пароль, токены, тексты секретов, файлы секретов и т. Д. (И если вы установили плагин de ssh, у вас будут доступны учетные данные ключа ssh). а также)

Вы можете использовать учетные данные и секреты в качестве переменных среды внутри блоков withCredentials (), и полностью совместим с синтаксисом Jenkinsfile Pipeline, документацию можно найти здесь

Некоторые примеры использования учетных данных в скриптовых конвейерах (которые работают также на декларативных конвейерах):

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'
    }
  }
}
0 голосов
/ 09 марта 2019

Так что это было намного проще, чем я думал:

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

После шага пост-сборки:

rm ${WORKSPACE}/path_to_dummy_file_to_overwrite

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...