Какая команда Jenkins, чтобы получить список измененных файлов - PullRequest
0 голосов
/ 14 января 2019

В сборке Jenkins я вижу список измененных файлов:

enter image description here

Итак, какую команду Jenkins использует для получения этого списка (я использую git для управления версией репозитория).

Ответы [ 2 ]

0 голосов
/ 14 января 2019

Вы можете использовать свойство changeSets глобальной переменной currentBuild , чтобы получить информацию об обнаруженных изменениях текущей сборки.

, например

// returns a list of changed files
@NonCPS
String getChangedFilesList() {

    changedFiles = []
    for (changeLogSet in currentBuild.changeSets) { 
        for (entry in changeLogSet.getItems()) { // for each commit in the detected changes
            for (file in entry.getAffectedFiles()) {
                changedFiles.add(file.getPath()) // add changed file to list
            }
        }
    }

    return changedFiles

}
0 голосов
/ 14 января 2019

Возможно, одна из двух возможных команд, перечисленных в " Как вывести список всех файлов в коммите? ":

git diff-tree --no-commit-id --name-only -r <commit-ish>

Обратите внимание, что плагин Jenkins Git предоставляет этот коммит в качестве переменной среды: GIT_COMMIT

...