HBASE-22033 Update to maven-javadoc-plugin 3.2.0 and switch to non-forking aggregate...
[hbase.git] / dev-support / flaky-tests / flaky-reporting.Jenkinsfile
blob58e7328f7b49e2dfe2971c1e0fa6a6ee674ff1eb
1 // Licensed to the Apache Software Foundation (ASF) under one
2 // or more contributor license agreements.  See the NOTICE file
3 // distributed with this work for additional information
4 // regarding copyright ownership.  The ASF licenses this file
5 // to you under the Apache License, Version 2.0 (the
6 // "License"); you may not use this file except in compliance
7 // with the License.  You may obtain a copy of the License at
8 //
9 //   http://www.apache.org/licenses/LICENSE-2.0
11 // Unless required by applicable law or agreed to in writing,
12 // software distributed under the License is distributed on an
13 // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14 // KIND, either express or implied.  See the License for the
15 // specific language governing permissions and limitations
16 // under the License.
17 pipeline {
18   agent {
19     node {
20       label 'Hadoop'
21     }
22   }
23   triggers {
24     cron('@daily')
25   }
26   options {
27     buildDiscarder(logRotator(numToKeepStr: '50'))
28     timeout (time: 15, unit: 'MINUTES')
29     timestamps()
30   }
31   parameters {
32     booleanParam(name: 'DEBUG', defaultValue: false, description: 'Produce a lot more meta-information.')
33   }
34   stages {
35     stage ('build flaky report') {
36       steps {
37         sh '''#!/usr/bin/env bash
38           set -e
39           if [ "${DEBUG}" = "true" ]; then
40             set -x
41           fi
42           declare -a flaky_args
43           flaky_args=("${flaky_args[@]}" --urls "${JENKINS_URL}/job/HBase%20Nightly/job/${BRANCH_NAME}" --is-yetus True --max-builds 10)
44           flaky_args=("${flaky_args[@]}" --urls "${JENKINS_URL}/job/HBase-Flaky-Tests/job/${BRANCH_NAME}" --is-yetus False --max-builds 30)
45           docker build -t hbase-dev-support dev-support
46           docker run --ulimit nproc=12500 -v "${WORKSPACE}":/hbase --workdir=/hbase hbase-dev-support python dev-support/flaky-tests/report-flakies.py --mvn -v "${flaky_args[@]}"
47 '''
48       }
49     }
50   }
51   post {
52     always {
53       // Has to be relative to WORKSPACE.
54       archiveArtifacts artifacts: "includes,excludes,dashboard.html"
55       publishHTML target: [
56         allowMissing: true,
57         keepAll: true,
58         alwaysLinkToLastBuild: true,
59         // Has to be relative to WORKSPACE
60         reportDir: ".",
61         reportFiles: 'dashboard.html',
62         reportName: 'Flaky Test Report'
63       ]
64     }
65   }