У нас есть проект на GitHub , который имеет два многоотраслевых конвейера Jenkins заданий - одно строит проект, а другое запускает тесты ,Единственное различие между этими двумя конвейерами заключается в том, что у них разные JenkinsFiles .
У меня есть две проблемы, которые, я подозреваю, связаны друг с другом:
- ВРаздел проверки состояния GitHub. Я вижу только одну проверку со следующим заголовком:
continuous-integration/jenkins/pr-merge — This commit looks good
, которая направляет меня к конвейеру Jenkins test .Это означает, что наш build конвейер не обрабатывается GitHub, даже если он виден на Jenkins.Я подозреваю, что это потому, что обе проверки имеют одно и то же имя (например, continuous-integration/jenkins/pr-merge
). - Я не смог выяснить, как переименовать сообщение проверки состояния для каждого задания Jenkins (например, test и сборка ).Я прошел через этот подобный вопрос, но его решение не применимо к нам, так как Триггеры сборки недоступны в Многоотраслевых конвейерах
Если кто-нибудь знает, как изменить это сообщение для каждого задания для Jenkins Multichranch Pipelines , это было бы очень полезно.Спасибо!
Редактировать (просто немного больше информации):
Мы настроили веб-заезды GitHub / Jenkins в репозитории, и сборки для обоих наших начинаются.build и test jobs, просто проверка статуса / сообщение не отображаются на GitHub для обоих (кажется, только для test ).Вот наш JenkinsFile для задания build :
#!/usr/bin/env groovy
properties([[$class: 'BuildConfigProjectProperty', name: '', namespace: '', resourceVersion: '', uid: ''], buildDiscarder(logRotator(artifactDaysToKeepStr: '', artifactNumToKeepStr: '', daysToKeepStr: '', numToKeepStr: '5')), [$class: 'ScannerJobProperty', doNotScan: false]])
node {
stage('Initialize') {
echo 'Initializing...'
def node = tool name: 'node-lts', type: 'jenkins.plugins.nodejs.tools.NodeJSInstallation'
env.PATH = "${node}/bin:${env.PATH}"
}
stage('Checkout') {
echo 'Getting out source code...'
checkout scm
}
stage('Install Dependencies') {
echo 'Retrieving tooling versions...'
sh 'node --version'
sh 'npm --version'
sh 'yarn --version'
echo 'Installing node dependencies...'
sh 'yarn install'
}
stage('Build') {
echo 'Running build...'
sh 'npm run build'
}
stage('Build Image and Deploy') {
echo 'Building and deploying image across pods...'
echo "This is the build number: ${env.BUILD_NUMBER}"
// sh './build-openshift.sh'
}
stage('Upload to s3') {
if(env.BRANCH_NAME == "master"){
withAWS(region:'eu-west-1',credentials:'****') {
def identity=awsIdentity();
s3Upload(bucket:"****", workingDir:'build', includePathPattern:'**/*');
cfInvalidate(distribution:'EBAX8TMG6XHCK', paths:['/*']);
}
};
if(env.BRANCH_NAME == "PRODUCTION"){
withAWS(region:'eu-west-1',credentials:'****') {
def identity=awsIdentity();
s3Upload(bucket:"****", workingDir:'build', includePathPattern:'**/*');
cfInvalidate(distribution:'E6JRLLPORMHNH', paths:['/*']);
}
};
}
}