В моем jenkinsfile я использую:
def ChangedFiles = bat ( returnStdout: true, script: "@git diff-tree --no-commit-id --name-only --stdin -m -r ${commitHash}" ).trim()
чтобы получить все файлы, которые изменились при слиянии, которое запустило сборку Jenkins. Тем не менее, это дает все измененные файлы в одну большую строку, например:
force-app/main/default/staticresources/test.css
force-app/main/default/staticresources/secondtest.css
Если я хочу, чтобы мое развертывание в Salesforce сохраняло то же время, мне нужно, чтобы строку экранировали с помощью "" и разделяли запятой. Это будет выглядеть так:
"force-app/main/default/staticresources/test.css, force-app/main/default/staticresources/secondtest.css"
Было бы еще лучше (но не нужно), если бы я мог добавить "C: / A_MAP / ANOTHER_MAP /", например так:
"C:/A_MAP/ANOTHER_MAP/force-app/main/default/staticresources/test.css, C:/A_MAP/ANOTHER_MAP/force-app/main/default/staticresources/secondtest.css"
Я посмотрел на классные методы tokenize (), split () и replaceAll (), но, похоже, ни один из них не имеет того, что я ищу. Я уже потратил много времени на это, и я надеюсь, что кто-то здесь может мне помочь.