Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix for #41858 #52168 #52161

Closed
wants to merge 106 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
106 commits
Select commit Hold shift + click to select a range
812f99c
Removed kwargs stringification
t0fik Mar 13, 2019
287c1b8
call of get_pem_entry in write_pem moved outside salt.utils.files.set…
t0fik Mar 13, 2019
9b8daa9
Fixed match compound testing ca server instead requestor
t0fik Mar 14, 2019
321c987
Merge branch '2019.2' into 2019.2-x509_fixes
t0fik Mar 21, 2019
f97869d
Merge branch '2019.2' into 2019.2-x509_fixes
dwoz Apr 11, 2019
be12b7e
Merge branch '2019.2' into 2019.2-x509_fixes
t0fik Apr 12, 2019
fa41d0f
Update events.rst
May 7, 2019
69cd4e6
Factor out ami-* imageId lookup from get_imageId
NiCalderon May 8, 2019
332dcd3
Add test case for salt-cloud ec2's get_imageid
NiCalderon May 8, 2019
99831c7
Fix salt-cloud traceback with python 3
NiCalderon Mar 22, 2019
a784fb9
Merge branch '2019.2' into fix-python3-get-imageid
twangboy May 10, 2019
935363f
Fixing integration/states/test_cron.py to ensure it works on OS X
garethgreenaway May 12, 2019
ea44c1e
Fixing a bug when the roots fileserver and the location is a symlink …
garethgreenaway May 12, 2019
2fe3f96
Fixing various tests testing for exceptions being raises on invalid a…
garethgreenaway May 14, 2019
f9b1b59
Merge remote-tracking branch 'upstream/2019.2' into 2019.2-x509_fixes
t0fik May 16, 2019
57ef75d
Update to salt-bootstrap v2019.05.20
s0undt3ch May 20, 2019
19a717a
Fixing integration/states/test_cron.py to ensure it works on OS X
garethgreenaway May 12, 2019
3ec0725
Fixing a bug when the roots fileserver and the location is a symlink …
garethgreenaway May 12, 2019
2b1189c
Just skip this one for now.
garethgreenaway May 15, 2019
cafac4d
right number of arguments for skipIf
garethgreenaway May 15, 2019
e202f23
Removing the temporary skipIf
garethgreenaway May 20, 2019
b149d15
Adding in the macos specific bits to the Gemfile.
garethgreenaway May 21, 2019
bc04418
Porting #52647 and #52754 to 2019.2
garethgreenaway May 21, 2019
bc313fd
reverting max_queue_size back to 10000
garethgreenaway May 22, 2019
bfa0f17
Merge branch '2019.2' into fix-python3-get-imageid
twangboy May 22, 2019
dd03e0f
Merge pull request #53021 from garethgreenaway/2019_2_macos_x_kitchen…
s0undt3ch May 23, 2019
88c32d9
Fixing unit.test_loader.LoaderGlobalsTest.test_states test
garethgreenaway May 23, 2019
ffa42de
Applying requested change from @DmitryKuzmenko.
garethgreenaway May 23, 2019
063ea3c
Merge pull request #53224 from garethgreenaway/53014_test_states_test…
twangboy May 23, 2019
e721efe
Merge pull request #53132 from s0undt3ch/hotfix/update-bootstrap-2019.2
s0undt3ch May 24, 2019
ddfd472
Add 'ppc64le' as a valid RPM package architecture
meaksh May 24, 2019
1e5e447
Fix multiprocessing logging queue dict changing during iteration errors
s0undt3ch May 27, 2019
d98ab2e
Merge pull request #53259 from s0undt3ch/2019.2
s0undt3ch May 27, 2019
ee36307
The flaky decorator should go through `(setUp|tearDown)()` at each at…
s0undt3ch May 28, 2019
941d13e
Preserve already defined DESTRUCTIVE_TESTS and EXPENSIVE_TESTS env va…
meaksh Jun 3, 2019
dd92a8b
Added aixpkg to index
Akm0d Jun 4, 2019
37939d0
Added refs to AIX module documentation
Akm0d Jun 4, 2019
cb2d9e7
Updated 'used for' description of aixpkg
Akm0d Jun 4, 2019
19bf0b1
Merge pull request #53269 from s0undt3ch/hotfix/fix-flaky-decorator-2…
garethgreenaway Jun 7, 2019
f9a99bc
Merge branch '2019.2' into aixpkg_2019_2
garethgreenaway Jun 7, 2019
121a785
Added better error messages for vmware tests (#53321)
Akm0d Jun 7, 2019
f30532b
only fetch pr target branch instead of all branches to save time and …
Jun 9, 2019
a9e0c05
Merge pull request #53420 from bryceml/2019.2
dwoz Jun 10, 2019
1a83017
Fixing various issues with the MySQL module, particularly around user…
garethgreenaway Jun 9, 2019
c1d1274
Updating various chpass functions. Adding additional tests.
garethgreenaway Jun 10, 2019
93ba899
fixing lint
garethgreenaway Jun 10, 2019
ba22e85
Merge branch '2019.2' into aixpkg_2019_2
Akm0d Jun 11, 2019
94f3e03
Merge branch '2019.2' into 2019.2-preserve-already-defined-DESTRUCTIV…
Akm0d Jun 11, 2019
6a71714
Fix wrong output in test=true run
May 21, 2019
022b8f4
added unit test for zpool.present with test=true
May 22, 2019
e386a51
Merge pull request #53452 from Ch3LL/bp-53145
dwoz Jun 12, 2019
0386c75
Merge branch '2019.2' into mysql_module_user_exists_fixes
dwoz Jun 13, 2019
ef82dce
Merge branch '2019.2' into 2019.2-preserve-already-defined-DESTRUCTIV…
Akm0d Jun 13, 2019
9712eed
Merge branch '2019.2' into aixpkg_2019_2
Akm0d Jun 13, 2019
14b6998
Merge pull request #53343 from meaksh/2019.2-preserve-already-defined…
Akm0d Jun 13, 2019
f8d572e
Merge branch '2019.2' into aixpkg_2019_2
Akm0d Jun 13, 2019
1018e6e
Merge pull request #53373 from Akm0d/aixpkg_2019_2
Akm0d Jun 13, 2019
a6f8201
Updating various functions that were using version_comment to also lo…
garethgreenaway Jun 14, 2019
b1570b7
Merge branch 'mysql_module_user_exists_fixes' of github.com:garethgre…
garethgreenaway Jun 14, 2019
df5d312
removing lambda, fixing lint.
garethgreenaway Jun 14, 2019
6514ea1
Ensure version_comment is returning a string.
garethgreenaway Jun 14, 2019
3e6672a
Merge branch '2019.2' into patch-1
Akm0d Jun 17, 2019
7f94a5d
Merge pull request #52854 from cncshaggy/patch-1
garethgreenaway Jun 17, 2019
0881664
Merge branch '2019.2' into 2019.2-add-ppc64le-as-valid-rpm-architecture
Akm0d Jun 17, 2019
d791555
Merge branch '2019.2' into mysql_module_user_exists_fixes
garethgreenaway Jun 17, 2019
69ada50
Merge pull request #53237 from meaksh/2019.2-add-ppc64le-as-valid-rpm…
Akm0d Jun 17, 2019
10ba95a
Add event_listen_queue_max_seconds to fix #53411
cro Jun 7, 2019
d32444a
Make doc build test pass
cro Jun 24, 2019
cadbbc2
Merge pull request #53588 from cro/53412-2019.2
cro Jun 25, 2019
10683fb
Merge branch '2019.2' into mysql_module_user_exists_fixes
garethgreenaway Jun 25, 2019
e4bb532
CI pipelines fixes to support old and new jenkins
s0undt3ch Jun 26, 2019
466cc1f
Build documentation using tox
s0undt3ch Jun 26, 2019
da85656
Merge branch '2019.2' into fix-python3-get-imageid
xeacott Jun 26, 2019
1068893
Merge pull request #52936 from NiCalderon/fix-python3-get-imageid
xeacott Jun 26, 2019
6229d7f
Merge pull request #53602 from s0undt3ch/hotfix/fix-nox-bypass-2019.2
s0undt3ch Jun 26, 2019
0792fa4
CI Pipelines. Timeout after getting a node.
s0undt3ch Jun 26, 2019
797c69e
Merge pull request #53610 from s0undt3ch/hotfix/fix-nox-bypass-2019.2
s0undt3ch Jun 27, 2019
e660ce4
Fix function chugid_and_umask to behave as pre 2019.2 versions when c…
pkwestm Jul 2, 2019
bb1d373
Add tests for function chugid_and_umask in salt.utils.user
pkwestm Jul 2, 2019
a7f6860
pylint check fixes and code cleanup
pkwestm Jul 2, 2019
ebac06a
Merge pull request #53681 from xetix/fix-util-users-chugid_and_umask
Akm0d Jul 2, 2019
7bdee40
Use encoding when caching pillar data
waynew Mar 14, 2019
d58ba1a
Absolutely import absolutely
waynew Apr 10, 2019
5e5bfd4
Update encoding... for the last time?
waynew Apr 24, 2019
79fb4de
Ignore test_minion_cache name
waynew Jul 3, 2019
c42e1e6
Merge pull request #52195 from waynew/51854-minion-pillar-cache-excep…
waynew Jul 3, 2019
598bc70
Merge branch '2019.2' into mysql_module_user_exists_fixes
garethgreenaway Jul 5, 2019
34a076d
Merge pull request #53418 from garethgreenaway/mysql_module_user_exis…
garethgreenaway Jul 5, 2019
6fb9f53
increase sleep time between kitchen create failures to account for ap…
Jul 16, 2019
e77344f
Merge pull request #53878 from bryceml/2019.2-increase-sleep
dwoz Jul 17, 2019
355b93b
Update CODEOWNERS github file
Ch3LL Jul 3, 2019
9b0331c
Merge pull request #53891 from Ch3LL/codeowners_2019.2
Ch3LL Jul 23, 2019
0409a4f
add new saltconf ads
Aug 19, 2019
8b5a2c8
Merge pull request #54254 from bryceml/2019.2_new_saltconf_ads
dwoz Aug 19, 2019
4f2cf15
modifying saltconf ads
Aug 30, 2019
e04efc3
Merge pull request #54362 from bryceml/2019.2_saltconf_ads
dwoz Aug 30, 2019
92e4842
switch to ruby 2.6.3
Sep 20, 2019
871e2ef
Merge pull request #54705 from bryceml/2019.2_ruby
Sep 23, 2019
dc10222
add known issue to relase notes
Sep 25, 2019
08de185
Update release versions for 2019.2 branch
Sep 25, 2019
2c4bf8c
Add PY3 only in knows issue text
Sep 25, 2019
3f27d1c
Merge pull request #54742 from frogunder/relasenotes_2019.2
Sep 25, 2019
779bc17
Merge pull request #54744 from frogunder/doc_conf_2019.2
Sep 25, 2019
d64662c
call of get_pem_entry in write_pem moved outside salt.utils.files.set…
t0fik Mar 13, 2019
ccf7f06
Fixed match compound testing ca server instead requestor
t0fik Mar 14, 2019
b5db440
Merge branch '2019.2-x509_fixes' of github.com:jdsieci/salt into 2019…
t0fik Mar 13, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
133 changes: 81 additions & 52 deletions .ci/docs
Original file line number Diff line number Diff line change
@@ -1,56 +1,85 @@
pipeline {
agent {
label 'docs'
}
options {
timestamps()
ansiColor('xterm')
timeout(time: 2, unit: 'HOURS')
}
environment {
PYENV_ROOT = "/usr/local/pyenv"
PATH = "$PYENV_ROOT/bin:$PATH"
PY_COLORS = 1
}
stages {
stage('github-pending') {
steps {
githubNotify credentialsId: 'test-jenkins-credentials',
description: 'Testing docs...',
status: 'PENDING',
context: "jenkins/pr/docs"
// Define the maximum time, in hours, that a test run should run for
def global_timeout = 2
def salt_target_branch = '2019.2'

properties([
buildDiscarder(logRotator(artifactDaysToKeepStr: '', artifactNumToKeepStr: '', daysToKeepStr: '', numToKeepStr: '10')),
])

def shell_header

node('docs') {
timeout(time: global_timeout, unit: 'HOURS') {
ansiColor('xterm') {
timestamps {
try {
// Set the GH status even before cloning the repo
if (env.NODE_NAME.startsWith('jenkins-pr-')) {
stage('github-pending') {
githubNotify credentialsId: 'test-jenkins-credentials',
description: 'Testing docs...',
status: 'PENDING',
context: "jenkins/pr/docs"
}
shell_header = 'export PYENV_ROOT="/usr/local/pyenv"\nexport PATH="$PYENV_ROOT/bin:$PATH"'
} else {
shell_header = ''
}
// Checkout the repo
stage('checkout-scm') {
cleanWs notFailBuild: true
checkout scm
}

// Setup the kitchen required bundle
stage('Setup') {
sh shell_header + '''
eval "$(pyenv init -)"
pyenv --version
pyenv install --skip-existing 2.7.15
pyenv shell 2.7.15
python --version
pip install tox
'''
}

stage('Build') {
sh shell_header + '''
eval "$(pyenv init -)"
pyenv shell 2.7.15
tox -e docs
'''
}
} catch (Exception e) {
currentBuild.result = 'FAILURE'
} finally {
cleanWs notFailBuild: true
if (currentBuild.resultIsBetterOrEqualTo('SUCCESS')) {
if (env.NODE_NAME.startsWith('jenkins-pr-')) {
githubNotify credentialsId: 'test-jenkins-credentials',
description: 'The docs job has passed',
status: 'SUCCESS',
context: "jenkins/pr/docs"
}
} else {
if (env.NODE_NAME.startsWith('jenkins-pr-')) {
githubNotify credentialsId: 'test-jenkins-credentials',
description: 'The docs job has failed',
status: 'FAILURE',
context: "jenkins/pr/docs"
}
try {
slackSend channel: "#jenkins-prod-pr",
color: '#FF0000',
message: "FAILED: PR-Job: '${env.JOB_NAME} [${env.BUILD_NUMBER}]' (${env.BUILD_URL})"
} catch (Exception e) {
sh 'echo Failed to send the Slack notification'
}
}
}
}
}
stage('setup') {
steps {
sh 'eval "$(pyenv init -)"; pyenv install 2.7.14 || echo "We already have this python."; pyenv local 2.7.14; pyenv shell 2.7.14'
sh 'eval "$(pyenv init -)"; pip install sphinx -e .'
}
}
stage('build') {
steps {
sh 'eval "$(pyenv init -)"; make SPHINXOPTS="-W" -C doc clean html'
}
}
}
post {
always {
cleanWs()
}
success {
githubNotify credentialsId: 'test-jenkins-credentials',
description: 'The docs job has passed',
status: 'SUCCESS',
context: "jenkins/pr/docs"
}
failure {
githubNotify credentialsId: 'test-jenkins-credentials',
description: 'The docs job has failed',
status: 'FAILURE',
context: "jenkins/pr/docs"
slackSend channel: "#jenkins-prod-pr",
color: '#FF0000',
message: "FAILED: PR-Job: '${env.JOB_NAME} [${env.BUILD_NUMBER}]' (${env.BUILD_URL})"
}
}
}

// vim: ft=groovy
186 changes: 122 additions & 64 deletions .ci/kitchen-centos7-py2
Original file line number Diff line number Diff line change
@@ -1,80 +1,136 @@
timeout(time: 8, unit: 'HOURS') {
node('kitchen-slave') {
timestamps {
// Define the maximum time, in hours, that a test run should run for
def testrun_timeout = 6
// Now define a global pipeline timeout. This is the test run timeout with one(1) additional
// hour to allow for artifacts to be downloaded, if possible.
def global_timeout = testrun_timeout + 1;

def distro_name = 'centos'
def distro_version = '7'
def python_version = 'py2'
def salt_target_branch = '2019.2'
def golden_images_branch = '2019.2'

properties([
buildDiscarder(logRotator(artifactDaysToKeepStr: '', artifactNumToKeepStr: '', daysToKeepStr: '', numToKeepStr: '10')),
parameters([
booleanParam(defaultValue: false, description: 'Run full test suite', name: 'runFull')
])
])

node('kitchen-slave') {
timeout(time: global_timeout, unit: 'HOURS') {
withCredentials([[$class: 'AmazonWebServicesCredentialsBinding',
accessKeyVariable: 'AWS_ACCESS_KEY_ID',
credentialsId: 'AWS_ACCESS_KEY_ID',
secretKeyVariable: 'AWS_SECRET_ACCESS_KEY']]) {
ansiColor('xterm') {
withEnv([
'SALT_KITCHEN_PLATFORMS=/var/jenkins/workspace/platforms.yml',
'SALT_KITCHEN_DRIVER=/var/jenkins/workspace/driver.yml',
'PATH=/usr/local/rbenv/shims/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/root/bin',
'RBENV_VERSION=2.4.2',
'TEST_SUITE=py2',
'TEST_PLATFORM=centos-7',
'PY_COLORS=1',
]) {
stage('checkout-scm') {
cleanWs notFailBuild: true
checkout scm
}
try {
stage('github-pending') {
githubNotify credentialsId: 'test-jenkins-credentials',
description: "running ${TEST_SUITE}-${TEST_PLATFORM}...",
status: 'PENDING',
context: "jenkins/pr/${TEST_SUITE}-${TEST_PLATFORM}"
timestamps {
withEnv([
'SALT_KITCHEN_PLATFORMS=/var/jenkins/workspace/platforms.yml',
'SALT_KITCHEN_VERIFIER=/var/jenkins/workspace/verifier.yml',
'SALT_KITCHEN_DRIVER=/var/jenkins/workspace/driver.yml',
'NOX_ENV_NAME=runtests-zeromq',
'NOX_ENABLE_FROM_FILENAMES=true',
'NOX_PASSTHROUGH_OPTS=--ssh-tests',
"SALT_TARGET_BRANCH=${salt_target_branch}",
"GOLDEN_IMAGES_CI_BRANCH=${golden_images_branch}",
"CODECOV_FLAGS=${distro_name}${distro_version},${python_version}",
'PATH=~/.rbenv/shims:/usr/local/rbenv/shims:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/root/bin',
'RBENV_VERSION=2.6.3',
"TEST_SUITE=${python_version}",
"TEST_PLATFORM=${distro_name}-${distro_version}",
"FORCE_FULL=${params.runFull}",
]) {
// Set the GH status even before cloning the repo
if (env.NODE_NAME.startsWith('jenkins-pr-')) {
stage('github-pending') {
githubNotify credentialsId: 'test-jenkins-credentials',
description: "running ${TEST_SUITE}-${TEST_PLATFORM}...",
status: 'PENDING',
context: "jenkins/pr/${TEST_SUITE}-${TEST_PLATFORM}"
}
}
// Checkout the repo
stage('checkout-scm') {
cleanWs notFailBuild: true
checkout scm
sh 'git fetch --no-tags https://github.com/saltstack/salt.git +refs/heads/${SALT_TARGET_BRANCH}:refs/remotes/origin/${SALT_TARGET_BRANCH}'
}

// Setup the kitchen required bundle
stage('setup-bundle') {
sh 'bundle install --with ec2 windows --without opennebula docker'
sh 'bundle install --with ec2 windows --without docker macos opennebula vagrant'
}

stage('Create VM') {
retry(3) {
sh '''
t=$(shuf -i 30-120 -n 1); echo "Sleeping $t seconds"; sleep $t
bundle exec kitchen create $TEST_SUITE-$TEST_PLATFORM; echo "ExitCode: $?;"
'''
}
}
try {
stage('run kitchen') {
withCredentials([
[$class: 'AmazonWebServicesCredentialsBinding', accessKeyVariable: 'AWS_ACCESS_KEY_ID', credentialsId: 'AWS_ACCESS_KEY_ID', secretKeyVariable: 'AWS_SECRET_ACCESS_KEY']
]) {
sshagent(credentials: ['jenkins-testing-ssh-key']) {
sh 'ssh-add ~/.ssh/jenkins-testing.pem'
sh 'bundle exec kitchen converge $TEST_SUITE-$TEST_PLATFORM || bundle exec kitchen converge $TEST_SUITE-$TEST_PLATFORM'
sh 'bundle exec kitchen verify $TEST_SUITE-$TEST_PLATFORM'
sshagent(credentials: ['jenkins-testing-ssh-key']) {
sh 'ssh-add ~/.ssh/jenkins-testing.pem || ssh-add ~/.ssh/kitchen.pem'
try {
timeout(time: testrun_timeout, unit: 'HOURS') {
stage('Converge VM') {
sh 'bundle exec kitchen converge $TEST_SUITE-$TEST_PLATFORM; echo "ExitCode: $?";'
}
stage('Run Tests') {
sh 'bundle exec kitchen verify $TEST_SUITE-$TEST_PLATFORM; echo "ExitCode: $?";'
}
}
}
}
} finally {
stage('cleanup kitchen') {
script {
withCredentials([
[$class: 'AmazonWebServicesCredentialsBinding', accessKeyVariable: 'AWS_ACCESS_KEY_ID', credentialsId: 'AWS_ACCESS_KEY_ID', secretKeyVariable: 'AWS_SECRET_ACCESS_KEY']
]) {
sshagent(credentials: ['jenkins-testing-ssh-key']) {
sh 'ssh-add ~/.ssh/jenkins-testing.pem'
sh 'bundle exec kitchen destroy $TEST_SUITE-$TEST_PLATFORM'
} finally {
try {
archiveArtifacts artifacts: 'artifacts/*,artifacts/**/*'
junit 'artifacts/xml-unittests-output/*.xml'
} finally {
stage('Cleanup') {
sh '''
bundle exec kitchen destroy $TEST_SUITE-$TEST_PLATFORM; echo "ExitCode: $?;"
'''
}
stage('Upload Coverage') {
script {
withCredentials([[$class: 'StringBinding', credentialsId: 'codecov-upload-token-salt', variable: 'CODECOV_TOKEN']]) {
sh '''
if [ -n "${FORCE_FULL}" -a "${FORCE_FULL}" = "true" -a -f artifacts/coverage/coverage.xml ]; then
curl -L https://codecov.io/bash | /bin/sh -s -- -R $(pwd) -s artifacts/coverage/ -F "${CODECOV_FLAGS}"
fi
'''
}
}
}
}
}
archiveArtifacts artifacts: 'artifacts/xml-unittests-output/*.xml'
archiveArtifacts artifacts: 'artifacts/logs/minion'
archiveArtifacts artifacts: 'artifacts/logs/salt-runtests.log'
}
}
} catch (Exception e) {
currentBuild.result = 'FAILURE'
} finally {
try {
junit 'artifacts/xml-unittests-output/*.xml'
} catch (Exception e) {
currentBuild.result = 'FAILURE'
} finally {
cleanWs notFailBuild: true
def currentResult = currentBuild.result ?: 'SUCCESS'
if (currentResult == 'SUCCESS') {
githubNotify credentialsId: 'test-jenkins-credentials',
description: "The ${TEST_SUITE}-${TEST_PLATFORM} job has passed",
status: 'SUCCESS',
context: "jenkins/pr/${TEST_SUITE}-${TEST_PLATFORM}"
if (currentBuild.resultIsBetterOrEqualTo('SUCCESS')) {
if (env.NODE_NAME.startsWith('jenkins-pr-')) {
githubNotify credentialsId: 'test-jenkins-credentials',
description: "The ${TEST_SUITE}-${TEST_PLATFORM} job has passed",
status: 'SUCCESS',
context: "jenkins/pr/${TEST_SUITE}-${TEST_PLATFORM}"
}
} else {
githubNotify credentialsId: 'test-jenkins-credentials',
description: "The ${TEST_SUITE}-${TEST_PLATFORM} job has failed",
status: 'FAILURE',
context: "jenkins/pr/${TEST_SUITE}-${TEST_PLATFORM}"
slackSend channel: "#jenkins-prod-pr",
color: '#FF0000',
message: "FAILED: PR-Job: '${env.JOB_NAME} [${env.BUILD_NUMBER}]' (${env.BUILD_URL})"
if (env.NODE_NAME.startsWith('jenkins-pr-')) {
githubNotify credentialsId: 'test-jenkins-credentials',
description: "The ${TEST_SUITE}-${TEST_PLATFORM} job has failed",
status: 'FAILURE',
context: "jenkins/pr/${TEST_SUITE}-${TEST_PLATFORM}"
}
try {
slackSend channel: "#jenkins-prod-pr",
color: '#FF0000',
message: "FAILED: PR-Job: '${env.JOB_NAME} [${env.BUILD_NUMBER}]' (${env.BUILD_URL})"
} catch (Exception e) {
sh 'echo Failed to send the Slack notification'
}
}
}
}
Expand All @@ -83,3 +139,5 @@ timeout(time: 8, unit: 'HOURS') {
}
}
}

// vim: ft=groovy
Loading