summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortgrogers <[email protected]>2019-06-03 09:12:39 -0400
committertgrogers <[email protected]>2019-06-03 09:12:39 -0400
commite12b464cd7b29841b67a8dd9ff58d1337208e855 (patch)
tree662036c3cf3b914ec9fdbd8b4eaf51df632c158f
parent4656f3b630953e3d4c4ef3435ebaeb1f8bacecf2 (diff)
Trying out this auto-email groovy madness
-rw-r--r--Jenkinsfile9
-rw-r--r--groovy-html.success.template108
2 files changed, 113 insertions, 4 deletions
diff --git a/Jenkinsfile b/Jenkinsfile
index 528c15a..a34026b 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -91,9 +91,10 @@ pipeline {
sh './gpgpu-sim_simulations/util/plotting/merge-stats.py -c ./gpgpu-sim-results-repo/${JOB_NAME}/stats-per-app-4.2.csv,./stats-per-app-4.2.csv -R > per-app-merge-4.2.csv'
sh './gpgpu-sim_simulations/util/plotting/merge-stats.py -c ./gpgpu-sim-results-repo/${JOB_NAME}/stats-per-app-9.1.csv,./stats-per-app-9.1.csv -R > per-app-merge-9.1.csv'
sh 'PLOTDIR="jenkins/${JOB_NAME}" &&\
- ssh [email protected] mkdir -p /home/dynamo/a/tgrogers/website/gpgpu-sim-plots/$PLOTDIR/${BUILD_NUMBER}/deltas && \
- ./gpgpu-sim_simulations/util/plotting/plot-get-stats.py -c per-app-merge-4.2.csv -p [email protected]:~/website/gpgpu-sim-plots/$PLOTDIR/${BUILD_NUMBER}/deltas -w https://engineering.purdue.edu/tgrogers/gpgpu-sim-plots/$PLOTDIR/${BUILD_NUMBER} -n $PLOTDIR/${BUILD_NUMBER}/deltas &&\
- ./gpgpu-sim_simulations/util/plotting/plot-get-stats.py -c per-app-merge-9.1.csv -p [email protected]:~/website/gpgpu-sim-plots/$PLOTDIR/${BUILD_NUMBER}/deltas -w https://engineering.purdue.edu/tgrogers/gpgpu-sim-plots/$PLOTDIR/${BUILD_NUMBER}/deltas -n $PLOTDIR/${BUILD_NUMBER}/deltas &&\
+ ssh [email protected] mkdir -p /home/dynamo/a/tgrogers/website/gpgpu-sim-plots/$PLOTDIR/${BUILD_NUMBER}/deltas/4.2 && \
+ ssh [email protected] mkdir -p /home/dynamo/a/tgrogers/website/gpgpu-sim-plots/$PLOTDIR/${BUILD_NUMBER}/deltas/9.1 && \
+ ./gpgpu-sim_simulations/util/plotting/plot-get-stats.py -c per-app-merge-4.2.csv -p [email protected]:~/website/gpgpu-sim-plots/$PLOTDIR/${BUILD_NUMBER}/deltas/4.2 -w https://engineering.purdue.edu/tgrogers/gpgpu-sim-plots/$PLOTDIR/${BUILD_NUMBER}/deltas/4.2 -n $PLOTDIR/${BUILD_NUMBER}/deltas/4.2 &&\
+ ./gpgpu-sim_simulations/util/plotting/plot-get-stats.py -c per-app-merge-9.1.csv -p [email protected]:~/website/gpgpu-sim-plots/$PLOTDIR/${BUILD_NUMBER}/deltas/9.1 -w https://engineering.purdue.edu/tgrogers/gpgpu-sim-plots/$PLOTDIR/${BUILD_NUMBER}/deltas/9.1 -n $PLOTDIR/${BUILD_NUMBER}/deltas/9.1 &&\
./gpgpu-sim_simulations/util/plotting/merge-stats.py -c ./gpgpu-sim-results-repo/${JOB_NAME}/stats-per-kernel-4.2-ptx.csv,./stats-per-kernel-4.2-ptx.csv -R > per-kernel-merge-4.2-ptx.csv &&\
./gpgpu-sim_simulations/util/plotting/merge-stats.py -c ./gpgpu-sim-results-repo/${JOB_NAME}/stats-per-kernel-4.2-ptxplus.csv,./stats-per-kernel-4.2-ptxplus.csv -R > per-kernel-merge-4.2-ptxplus.csv &&\
./gpgpu-sim_simulations/util/plotting/merge-stats.py -c ./gpgpu-sim-results-repo/${JOB_NAME}/stats-per-kernel-9.1.csv,./stats-per-kernel-9.1.csv -R > per-kernel-merge-9.1.csv &&\
@@ -109,7 +110,7 @@ pipeline {
}
post {
success {
- emailext body: "See ${BUILD_URL}",
+ emailext body:'''${SCRIPT, template="groovy-html.success.template"}''',
recipientProviders: [[$class: 'CulpritsRecipientProvider'],
[$class: 'RequesterRecipientProvider']],
subject: "[AALP Jenkins] Build #${BUILD_NUMBER} - Success!",
diff --git a/groovy-html.success.template b/groovy-html.success.template
new file mode 100644
index 0000000..37d3e65
--- /dev/null
+++ b/groovy-html.success.template
@@ -0,0 +1,108 @@
+<STYLE>
+ BODY, TABLE, TD, TH, P {
+ font-family: Calibri, Verdana, Helvetica, sans serif;
+ font-size: 12px;
+ color: black;
+ }
+ .console {
+ font-family: Courier New;
+ }
+ .filesChanged {
+ width: 10%;
+ padding-left: 10px;
+ }
+ .section {
+ width: 100%;
+ border: thin black dotted;
+ }
+ .td-title-main {
+ color: white;
+ font-size: 200%;
+ padding-left: 5px;
+ font-weight: bold;
+ }
+ .td-title {
+ color: white;
+ font-size: 120%;
+ font-weight: bold;
+ padding-left: 5px;
+ text-transform: uppercase;
+ }
+ .td-title-tests {
+ font-weight: bold;
+ font-size: 120%;
+ }
+ .td-header-maven-module {
+ font-weight: bold;
+ font-size: 120%;
+ }
+ .td-maven-artifact {
+ padding-left: 5px;
+ }
+ .tr-title {
+ background-color: <%= (build.result == null || build.result.toString() == 'SUCCESS') ? '#27AE60' : build.result.toString() == 'FAILURE' ? '#E74C3C' : '#f4e242' %>;
+ }
+ .test {
+ padding-left: 20px;
+ }
+ .test-fixed {
+ color: #27AE60;
+ }
+ .test-failed {
+ color: #E74C3C;
+ }
+</STYLE>
+<BODY>
+ <!-- BUILD RESULT -->
+ <table class="section">
+ <tr class="tr-title">
+ <td class="td-title-main" colspan=2>
+ BUILD ${build.result ?: 'COMPLETED'}
+ </td>
+ </tr>
+ <tr>
+ <td>URL:</td>
+ <td><A href="${rooturl}${build.url}">${rooturl}${build.url}</A></td>
+ </tr>
+ <tr>
+ <td>Project:</td>
+ <td>${project.name}</td>
+ </tr>
+ <tr>
+ <td>Date:</td>
+ <td>${it.timestampString}</td>
+ </tr>
+ <tr>
+ <td>Duration:</td>
+ <td>${build.durationString}</td>
+ </tr>
+ <tr>
+ <td>Cause:</td>
+ <td><% build.causes.each() { cause -> %> ${cause.shortDescription} <% } %></td>
+ </tr>
+ </table>
+ <br/>
+ <!--
+ Changes since last commit:
+
+ https://engineering.purdue.edu/tgrogers/gpgpu-sim-plots/$PLOTDIR/${BUILD_NUMBER}/deltas/9.1
+ https://engineering.purdue.edu/tgrogers/gpgpu-sim-plots/$PLOTDIR/${BUILD_NUMBER}/deltas/4.2
+
+ Correlation:
+ 4.2:
+
+ $CORREL_4.2
+
+ https://engineering.purdue.edu/tgrogers/gpgpu-sim-plots/$PLOTDIR/${BUILD_NUMBER}/gtx480-cycles.html.GTX480-PTXPLUS.GTX480.html
+ https://engineering.purdue.edu/tgrogers/gpgpu-sim-plots/$PLOTDIR/${BUILD_NUMBER}/gtx480-cycles.html.GTX480-PTXPLUS.GTX480.appincluded.txt
+
+ 9.1:
+
+ $CORREL_9.1
+
+ https://engineering.purdue.edu/tgrogers/gpgpu-sim-plots/$PLOTDIR/${BUILD_NUMBER}/titanv-cycles.html.TITANV.html
+ https://engineering.purdue.edu/tgrogers/gpgpu-sim-plots/$PLOTDIR/${BUILD_NUMBER}/titanv-cycles.html.TITANV.appincluded.txt
+
+ See ${BUILD_URL} for full build detials.
+ -->
+</BODY>