Jason Lowe-Power has uploaded this change for review. ( https://gem5-review.googlesource.com/c/public/gem5/+/17448

Change subject: tests: Rebase/squash jenkins changes
......................................................................

tests: Rebase/squash jenkins changes

Change-Id: If5612edef0e2dab8574e56751d61b8790cd9e6ce
Signed-off-by: Jason Lowe-Power <[email protected]>
---
A tests/jenkins/continuous.cfg
A tests/jenkins/continuous.sh
A tests/jenkins/presubmit.cfg
A tests/jenkins/presubmit.sh
4 files changed, 214 insertions(+), 0 deletions(-)



diff --git a/tests/jenkins/continuous.cfg b/tests/jenkins/continuous.cfg
new file mode 100644
index 0000000..6b0d85a
--- /dev/null
+++ b/tests/jenkins/continuous.cfg
@@ -0,0 +1,4 @@
+# Format: //devtools/kokoro/config/proto/build.proto
+
+# Location of the continuous batch script in repository.
+build_file: "jenkins-gem5-prod/tests/jenkins/continuous.sh"
diff --git a/tests/jenkins/continuous.sh b/tests/jenkins/continuous.sh
new file mode 100755
index 0000000..7e82632
--- /dev/null
+++ b/tests/jenkins/continuous.sh
@@ -0,0 +1,103 @@
+#!/bin/bash
+#
+# Copyright (c) 2016 ARM Limited
+# All rights reserved
+#
+# The license below extends only to copyright in the software and shall
+# not be construed as granting a license to any other intellectual
+# property including but not limited to intellectual property relating
+# to a hardware implementation of the functionality of the software
+# licensed hereunder.  You may use the software subject to the license
+# terms below provided that you ensure that this notice is replicated
+# unmodified and in its entirety in all distributions of the software,
+# modified or unmodified, in source code or in binary form.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met: redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer;
+# redistributions in binary form must reproduce the above copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution;
+# neither the name of the copyright holders nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+#
+# Authors: Andreas Sandberg
+#          Sean Wilson
+
+set -e
+
+# Use ccache with the default directory for caching
+export PATH="/usr/lib/ccache:$PATH"
+
+cd git/jenkins-gem5-prod
+
+BUILD_JOBS=4
+
+GEM5_ARCH="ALPHA ARM MIPS NULL POWER SPARC X86"
+GEM5_VARIANT="opt"
+
+TARGETS=
+for A in ${GEM5_ARCH}; do
+    TARGETS+=" build/${A}/gem5.${GEM5_VARIANT}"
+done
+
+export TEST_TARGETS=""
+for A in ${GEM5_ARCH}; do
+    TEST_TARGETS+=" build/${A}/tests/${GEM5_VARIANT}/quick/"
+done
+
+runtests () {
+    # Set pipefail incase scons test fails out while reading.
+    set -e
+    set -o pipefail
+
+    # Build the gem5 binaries.
+    scons --ignore-style ${TARGETS} -j${BUILD_JOBS}
+
+ # Keep pushing out SCons output and check the fail status after we have read
+    # through all of the tests.
+    scons --ignore-style ${TEST_TARGETS} -j${BUILD_JOBS} |\
+        {
+            FAILED=""
+            while read line; do
+                echo "${line}"
+                failed_lines="$(echo "${line}" | grep "FAILED!"; true)"
+                if ! [ "${failed_lines}" = "" ]; then
+                    FAILED="fail"
+                fi
+            done
+            test "${FAILED}" = ""
+        }
+
+        exit 0
+    }
+
+    # Print out the output as it comes to us, but don't exit right away
+    # if runtests fails, we want to print the final status on our own.
+    runtests | {
+    while read line; do
+        echo "${line}"
+    done
+}
+
+if [ "${PIPESTATUS[0]}" = "0" ]; then
+    echo "SUCCESS"
+    exit 0
+else
+    echo "FAIL"
+    exit 1
+fi
diff --git a/tests/jenkins/presubmit.cfg b/tests/jenkins/presubmit.cfg
new file mode 100644
index 0000000..742a6fc
--- /dev/null
+++ b/tests/jenkins/presubmit.cfg
@@ -0,0 +1,4 @@
+# Format: //devtools/kokoro/config/proto/build.proto
+
+# Location of the continuous batch script in repository.
+build_file: "jenkins-gem5-prod/tests/jenkins/presubmit.sh"
diff --git a/tests/jenkins/presubmit.sh b/tests/jenkins/presubmit.sh
new file mode 100755
index 0000000..f00f396
--- /dev/null
+++ b/tests/jenkins/presubmit.sh
@@ -0,0 +1,103 @@
+#!/bin/bash
+#
+# Copyright (c) 2016 ARM Limited
+# All rights reserved
+#
+# The license below extends only to copyright in the software and shall
+# not be construed as granting a license to any other intellectual
+# property including but not limited to intellectual property relating
+# to a hardware implementation of the functionality of the software
+# licensed hereunder.  You may use the software subject to the license
+# terms below provided that you ensure that this notice is replicated
+# unmodified and in its entirety in all distributions of the software,
+# modified or unmodified, in source code or in binary form.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met: redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer;
+# redistributions in binary form must reproduce the above copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution;
+# neither the name of the copyright holders nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+#
+# Authors: Andreas Sandberg
+#          Sean Wilson
+
+set -e
+
+# Use ccache with the default directory for caching
+export PATH="/usr/lib/ccache:$PATH"
+
+cd git/jenkins-gem5-prod
+
+BUILD_JOBS=4
+
+GEM5_ARCH="ARM NULL X86"
+GEM5_VARIANT="opt"
+
+TARGETS=
+for A in ${GEM5_ARCH}; do
+    TARGETS+=" build/${A}/gem5.${GEM5_VARIANT}"
+done
+
+export TEST_TARGETS=""
+for A in ${GEM5_ARCH}; do
+    TEST_TARGETS+=" build/${A}/tests/${GEM5_VARIANT}/quick/se/00.hello"
+done
+
+runtests () {
+    # Set pipefail incase scons test fails out while reading.
+    set -e
+    set -o pipefail
+
+    # Build the gem5 binaries.
+    scons --ignore-style ${TARGETS} -j${BUILD_JOBS}
+
+ # Keep pushing out SCons output and check the fail status after we have read
+    # through all of the tests.
+    scons --ignore-style ${TEST_TARGETS} -j${BUILD_JOBS} |\
+        {
+            FAILED=""
+            while read line; do
+                echo "${line}"
+                failed_lines="$(echo "${line}" | grep "FAILED!"; true)"
+                if ! [ "${failed_lines}" = "" ]; then
+                    FAILED="fail"
+                fi
+            done
+            test "${FAILED}" = ""
+        }
+
+        exit 0
+    }
+
+    # Print out the output as it comes to us, but don't exit right away
+    # if runtests fails, we want to print the final status on our own.
+    runtests | {
+    while read line; do
+        echo "${line}"
+    done
+}
+
+if [ "${PIPESTATUS[0]}" = "0" ]; then
+    echo "SUCCESS"
+    exit 0
+else
+    echo "FAIL"
+    exit 1
+fi

--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/17448
To unsubscribe, or for help writing mail filters, visit https://gem5-review.googlesource.com/settings

Gerrit-Project: public/gem5
Gerrit-Branch: master
Gerrit-Change-Id: If5612edef0e2dab8574e56751d61b8790cd9e6ce
Gerrit-Change-Number: 17448
Gerrit-PatchSet: 1
Gerrit-Owner: Jason Lowe-Power <[email protected]>
Gerrit-MessageType: newchange
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to