Использование Jenkinsfile для изменения существующего текстового файла в процессе сборки - PullRequest
1 голос
/ 25 марта 2020

Я очень новичок в модификации jenkinsfiles и был бы признателен за некоторые указатели.

Я хочу иметь возможность изменить существующий txt-файл в моем хранилище с подробным описанием изменений, внесенных в ходе этой регистрации. Я получил список изменений, используя приведенные ниже:


def getChangeLog() {
    def changeLogSets = currentBuild.changeSets
    for (int i = 0; i < changeLogSets.size(); i++) {
        def entries = changeLogSets[i].items
        for (int j = 0; j < entries.length; j++) {
            def entry = entries[j]
            echo "${entry.commitId} by ${entry.author} on ${new Date(entry.timestamp)}: ${entry.msg}"
            def files = new ArrayList(entry.affectedFiles)
            for (int k = 0; k < files.size(); k++) {
                def file = files[k]
                echo "  ${file.editType.name} ${file.path}"
            }
        }
    }
}

Но тогда нужно каким-то образом иметь возможность записать это в существующий текстовый файл до того, как будет запущена сборка. Мне также нужно иметь возможность прочитать файл и подтвердить, что изменения там существуют, а также не вставлять повторяющиеся записи.

Все это нужно каким-то образом сделать в Jenkinsfile.

Мне удалось найти множество аддонов, которые делают что-то подобное, но ничего, что указывает на то, как реализовать это в самом Jenkinsfile.

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