Дженкинс Пост Построить, если заявление - PullRequest
0 голосов
/ 24 сентября 2019

Выполнение декларативного конвейера Jenkins,

Итак, я ищу действие " Post ", которое будет отправлять электронную почту, только если существует 1 файл, который существует и имеет значение biggger, то 0 КБ.

Очень похоже на функцию bash: если [-s]

Я могу сделать это в скрипте bash, но как это сделать в jenkins для POST BUILD:

Посмотрите, каксделано в bash:

if [ -s "$file" ]
then
/usr/bin/mutt -s "Master  Failed 3Days" $emails -a $file < /dev/null
        exit 1
else
        echo "$file is empty."
/usr/bin/mutt -s "Master  Success 3Days" $emails_success -a $file < /dev/null
        exit 0
fi

1 Ответ

0 голосов
/ 25 сентября 2019

Этот подход работает: 1. Вы выполняете глобальную переменную со своим сценарием оболочки на этапе

result = sh(script: '''
if [ -s "$file" ]
then
/usr/bin/mutt -s "Master  Failed 3Days" $emails -a $file < /dev/null
        echo 'found'
else
        echo "$file is empty."
/usr/bin/mutt -s "Master  Success 3Days" $emails_success -a $file < /dev/null
        echo 'not'
fi
''', returnStdout: true).trim()
Вы добавляете определения сообщений
post {
    always {
        script {
            if (result.contains('found')) {
                <your logic to sending email>
            }
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...