Я был вынужден дважды сменить сервер jenkins с одного сервера на другой. В первый раз я без проблем перенес его с сервера Ubuntu 20.04 на Ubuntu 21; сборка (многоветвевой конвейер) работала нормально.
Но теперь я был вынужден снова сменить jenkins на другой сервер, на котором работает Debian 10, и теперь конвейер пропускает все шаги, кроме проверки и публикации (отправки электронной почты).
Это файл Дженкинса:
трубопровод {
агент любой
среда {
GIT_BRANCH = "происхождение/${BRANCH_NAME}"
BRANCH_NAME = "${BRANCH_NAME}"
REGISTRY_CREDENTIALS = учетные данные («УДАЛЕНО»)
РЕГИСТР = "my.remote.regsitry"
}
этапы {
этап («Оформить заказ») {
шаги {
касса
}
}
этап («Сборка») {
шаги {
ш '''#!/bin/bash
компакт-диск ci
эхо "BRANCH_NAME=$BRANCH_NAME"
эхо "GIT_BRANCH=$GIT_BRANCH"
./build.sh мой.удаленный.реестр
'''
}
}
этап («Нажать») {
шаги {
ш '''#!/bin/bash
компакт-диск ci
echo "Вход в реестр $REGISTRY как $REGISTRY_CREDENTIALS_USR..."
if ( ! docker login -p "$REGISTRY_CREDENTIALS_PSW" -u "$REGISTRY_CREDENTIALS_USR" "$REGISTRY" ); тогда
echo "Не удалось войти в ${REGISTRY}. Прерывание..."
вернуть 1;
фи
./push.sh док-станция.epiclabs.io
если [-e псевдоним.sh]; тогда
. ./gitinfo.sh
./alias.sh "$TAG" "$BRANCH" мой.удаленный.реестр
./push.sh --tag "$BRANCH" my.remote.registry
фи
'''
}
}
этап («Развертывание») {
шаги {
ш '''#!/bin/bash
компакт-диск ci
./deploy.sh "192.168.10.254/cid" мой.удаленный.реестр
'''
}
}
}
публиковать {
всегда {
emailext attachLog: правда,
body: "${currentBuild.currentResult}: задание ${env.JOB_NAME} построить ${env.BUILD_NUMBER}\n",
subject: "Сборка CID ${currentBuild.currentResult}: задание ${env.JOB_NAME}",
на: 'ОТРЕДАКТИРОВАНО'
}
}
}
Конвейер ведет себя хорошо на первых двух серверах (деплой должен дать сбой, это не та проблема, о которой я говорю :)):
Но теперь он пропускает шаги:
Журналов, отражающих какие-либо ошибки, нет. Я не знаю, где еще искать.