Как я могу программно изменить исходный текст сценариев сценариев scm? - PullRequest
0 голосов
/ 11 марта 2020

У меня много конвейеров jenkins, которые загружают сценарии с помощью scm из bitbucket. мы переносим все репозитории в GIT, и я хочу знать, есть ли способ изменить scm сценария конвейера с hg на GIT, не используя сценарий. потому что у нас есть много много трубопроводов, чтобы изменить. Я пытался выяснить сценарий для выполнения в консоли сценария спасибо

1 Ответ

1 голос
/ 11 марта 2020

после исследования я нашел это решение, чтобы изменить Mercurialscm на GitScm, управляющий информацией URL-адреса хранилища и учетными данными 1 конвейера, и я мог бы расширить его до списка трубопроводов

    import hudson.plugins.git.*;

def it = Jenkins.instance.getItemByFullName("test-pipeline-scm")
def definition = it.getDefinition() 
String scriptPath = definition.getScriptPath()
String url =  definition.getScm().getSource()
String credentials = definition.getScm().getCredentialsId()
def scm = new GitSCM(GitSCM.createRepoList(url, credentials),
                Collections.singletonList(new BranchSpec("*/master")),
                false, Collections.<SubmoduleConfig>emptyList(),
                null, null, Collections.emptyList())
def newDefinition = new org.jenkinsci.plugins.workflow.cps.CpsScmFlowDefinition(scm, scriptPath)
it.definition = newDefinition
it.save()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...