Я пытаюсь указать GithubProjectProperty в многоотраслевом конвейере Jenkins. Я безуспешно пытался установить запись в блоке опций для управления этим значением.
Генератор фрагментов синтаксиса конвейера предлагает:
properties([
$class: 'GithubProjectProperty',
displayName: '',
projectUrlStr: 'https://myServer/myOrg/myRepo'
])
Ни один из следующего не работает:
1) Попробуйте поместить свойства прямо в блок параметров
options {
// Set the URL for the GitHub project option
properties([
$class: 'GithubProjectProperty',
displayName: '',
projectUrlStr: 'https://myServer/myOrg/myRepo'
])
}
ОШИБКА: раздел «Свойства» был переименован в версии 0.8. Вместо этого используйте "параметры"
2) Удалите ключевое слово свойств, но оставьте параметр в блоке параметров
options {
// Set the URL for the GitHub project option
[
$class: 'GithubProjectProperty',
displayName: '',
projectUrlStr: 'https://myServer/myOrg/myRepo'
]
}
ОШИБКА: параметры не могут быть определены как карты
3) Относитесь к GitHubProjectProperty так, как будто он может быть создан (например, office365ConnectorWebhooks)
options {
// Set the URL for the GitHub project option
GithubProjectProperty('https://myServer/myOrg/myRepo')
}
ОШИБКА: недопустимый тип параметра «GithubProjectProperty». Допустимые типы опций: [authorizationMatrix, buildDiscarder, catchError, checkoutToSubdirectory, disableConcurrentBuilds, disableResume, durabilityHint, newContainerPerStage, office365ConnectorWebhooks, overrideIndexTriggers, parallelsAlwaysFailFailFast, skitutils, timeoutip, sci-fi, sci-mail, preserveStashes, waitUntil, warnError, withContext, withCredentials, withEnv, ws]
4) Обращайтесь с GitHubProjectProperty так, как будто он может быть создан, но внутри блока сценария (поскольку сценарий должен быть действительным в соответствии с попыткой №3)
options {
script {
// Set the URL for the GitHub project option
GithubProjectProperty('https://myServer/myOrg/myRepo')
}
}
ОШИБКА: в определениях параметров не может быть блоков.
Плагин office-365-connector-это рабочий плагин, который поддерживается в блоке параметров файла Jenkins. Я сравнил его код с источником github-плагина на GitHub и заметил следующую строку:
@Extension
public static final class DescriptorImpl extends JobPropertyDescriptor {
В коде отсутствует директива @Symbol, которую office365ConnectorWebhooks предоставляет в своем код:
@Extension
@Symbol("office365ConnectorWebhooks")
public final class WebhookJobPropertyDescriptor extends JobPropertyDescriptor {
Существует ли какой-то специальный синтаксис для добавления URL-адреса GitHub в многоотраслевой конвейер или этот плагин просто не поддерживает управление им через Jenkinsfile?