[zorg] r224166 - Replace the simple Jenkins test scripts with a real lit test

Chris Matthews cmatthews5 at apple.com
Fri Dec 12 15:41:01 PST 2014


Author: cmatthews
Date: Fri Dec 12 17:41:01 2014
New Revision: 224166

URL: http://llvm.org/viewvc/llvm-project?rev=224166&view=rev
Log:
Replace the simple Jenkins test scripts with a real lit test

Added:
    zorg/trunk/test/jenkins/
    zorg/trunk/test/jenkins/test_build.py
Removed:
    zorg/trunk/zorg/jenkins/test_jenkins_build.sh
Modified:
    zorg/trunk/test/lit.cfg

Added: zorg/trunk/test/jenkins/test_build.py
URL: http://llvm.org/viewvc/llvm-project/zorg/trunk/test/jenkins/test_build.py?rev=224166&view=auto
==============================================================================
--- zorg/trunk/test/jenkins/test_build.py (added)
+++ zorg/trunk/test/jenkins/test_build.py Fri Dec 12 17:41:01 2014
@@ -0,0 +1,127 @@
+# Testing for the Jenkins build.py script
+#
+# RUN: export TESTING=1
+# RUN: export JOB_NAME="FOO"
+# RUN: export BUILD_NUMBER=321
+# Tell build.py to just print commands instead of running.
+# RUN: export LLVM_REV=1234
+# RUN: mkdir -p %t.SANDBOX/host-compiler/lib %t.SANDBOX/host-compiler/bin %t.SANDBOX/llvm.src %t.SANDBOX/clang.src %t.SANDBOX/libcxx.src %t.SANDBOX/compiler-rt.src %t.SANDBOX/debuginfo-tests.src %t.SANDBOX/clang-tools-extra.src %t.SANDBOX/lldb.src
+# RUN: touch %t.SANDBOX/host-compiler/bin/clang
+# RUN: python %{src_root}/zorg/jenkins/build.py clang all > %t.log
+# RUN: FileCheck --check-prefix CHECK-SIMPLE < %t.log %s
+# CHECK-SIMPLE: @@@ Configure @@@
+# CHECK-SIMPLE: cd
+# CHECK-SIMPLE: configure' '--disable-assertions' '--enable-optimized' '--disable-bindings' '--enable-targets=x86,x86_64,arm,aarch64' '--prefix=/
+# CHECK-SIMPLE: @@@@@@
+# CHECK-SIMPLE: @@@ Make All @@@
+# CHECK-SIMPLE: 'make' '-j' '4' 'VERBOSE=1' 'CLANG_REPOSITORY_STRING=FOO' 'SVN_REVISION=1234' 'LLVM_VERSION_INFO= (FOO: trunk 1234)'
+# CHECK-SIMPLE: @@@@@@
+# CHECK-SIMPLE: @@@ Make Install @@@
+# CHECK-SIMPLE: 'make' 'install-clang' '-j' '4'
+# CHECK-SIMPLE: @@@@@@
+# CHECK-SIMPLE: @@@ Upload artifact @@@
+# CHECK-SIMPLE: 'tar' 'zcvf' '../clang-r1234-tNONE-b321.tar.gz' '.'
+# CHECK-SIMPLE: cd
+# CHECK-SIMPLE: 'scp' 'clang-r1234-tNONE-b321.tar.gz' 'buildslave at labmaster2.local:/Library/WebServer/Documents/artifacts/FOO/'
+# CHECK-SIMPLE: cd
+# CHECK-SIMPLE: 'scp' 'last_good_build.properties' 'buildslave at labmaster2.local:/Library/WebServer/Documents/artifacts/FOO/'
+# CHECK-SIMPLE: cd
+# CHECK-SIMPLE: 'ssh' 'buildslave at labmaster2.local' 'ln' '-fs' '/Library/WebServer/Documents/artifacts/FOO/clang-r1234-tNONE-b321.tar.gz' '/Library/WebServer/Documents/artifacts/FOO/latest'
+# CHECK-SIMPLE: @@@@@@
+# CHECK-SIMPLE: @@@ Make Check @@@
+# CHECK-SIMPLE: cd
+# CHECK-SIMPLE: 'make' 'VERBOSE=1' 'check-all' 'LIT_ARGS=--xunit-xml-output=testresults.xunit.xml -v'
+# CHECK-SIMPLE: @@@@@@
+
+# Now Check Assertion Buiilds have --enable assertions
+
+
+# RUN: python %{src_root}/zorg/jenkins/build.py clang all --assertions > %t-assert.log
+# RUN: FileCheck --check-prefix CHECK-ASSERT < %t-assert.log %s
+# CHECK-ASSERT: configure' '--enable-assertions' '--enable-optimized' '--disable-bindings' '--enable-targets=x86,x86_64,arm,aarch64' '--prefix=
+# CHECK-ASSERT: clang-install' '--enable-libcpp'
+# CHECK-ASSERT: 'make' '-j' '4' 'VERBOSE=1' 'CLANG_REPOSITORY_STRING=FOO' 'SVN_REVISION=1234' 'LLVM_VERSION_INFO= (FOO: trunk 1234)'
+# CHECK-ASSERT: 'make' 'install-clang' '-j' '4'
+# CHECK-ASSERT: 'make' 'VERBOSE=1' 'check-all' 'LIT_ARGS=--xunit-xml-output=testresults.xunit.xml -v'
+
+
+# Check LTO
+
+# RUN: python %{src_root}/zorg/jenkins/build.py clang all --lto > %t-lto.log
+# RUN: FileCheck --check-prefix CHECK-LTO < %t-lto.log %s
+# CHECK-LTO: configure' '--disable-assertions' '--with-extra-options=-flto -gline-tables-only' '--enable-optimized' '--disable-bindings' '--enable-targets=x86,x86_64,arm,aarch64' '--prefix=
+# CHECK-LTO: clang-install' '--enable-libcpp'
+# CHECK-LTO: 'make' '-j' '4' 'VERBOSE=1' 'CLANG_REPOSITORY_STRING=FOO' 'SVN_REVISION=1234' 'LLVM_VERSION_INFO= (FOO: trunk 1234)'
+# CHECK-LTO: 'make' 'install-clang' '-j' '4'
+# CHECK-LTO: 'make' 'VERBOSE=1' 'check-all' 'LIT_ARGS=--xunit-xml-output=testresults.xunit.xml -v'
+
+
+# Now try just a build
+# RUN: python %{src_root}/zorg/jenkins/build.py clang build --lto
+# RUN: python %{src_root}/zorg/jenkins/build.py clang build
+
+# Just a test
+# RUN: python %{src_root}/zorg/jenkins/build.py clang test
+
+# CMake
+
+# RUN: python %{src_root}/zorg/jenkins/build.py cmake all > %t-cmake.log
+# RUN: FileCheck --check-prefix CHECK-CMAKE < %t-cmake.log %s
+# CHECK-CMAKE: '/usr/local/bin/cmake' '-G' 'Ninja' '-DCMAKE_BUILD_TYPE=Debug' '-DLLVM_ENABLE_ASSERTIONS=On' '-DCMAKE_INSTALL_PREFIX=
+# CHECK-CMAKE: -DLLVM_LIT_ARGS=--xunit-xml-output=testresults.xunit.xml -v
+# CHECK-CMAKE: '/usr/local/bin/ninja'
+# CHECK-CMAKE: '/usr/local/bin/ninja' 'check' 'check-clang'
+# CHECK-CMAKE: '/usr/local/bin/ninja' 'check-all'
+
+
+# RUN: python %{src_root}/zorg/jenkins/build.py cmake build
+# RUN: python %{src_root}/zorg/jenkins/build.py cmake test
+# RUN: python %{src_root}/zorg/jenkins/build.py cmake testlong
+
+# Derive Functions
+
+# RUN: cd %t.SANDBOX; python %{src_root}/zorg/jenkins/build.py derive > %t-derive.log
+# RUN: FileCheck --check-prefix CHECK-DERIVE < %t-derive.log %s
+# CHECK-DERIVE: @@@ Derive Source @@@
+# CHECK-DERIVE: cd
+# CHCEK-DERIVE: Output/test_build.py.tmp.SANDBOX/llvm
+# CHECK-DERIVE: 'rsync' '-auvh' '--delete' '--exclude=.svn/' '--exclude=/tools/clang' '--exclude=/projects/libcxx' '--exclude=/tools/clang/tools/extra' '--exclude=/projects/compiler-rt' '--exclude=/tools/clang/test/debuginfo-tests'
+# CHECK-DERIVE: /llvm.src/'
+# CHECK-DERIVE: test_build.py.tmp.SANDBOX/llvm'
+# CHECK-DERIVE: 'rsync' '-auvh' '--delete' '--exclude=.svn/' '--exclude=/tools/clang/tools/extra' '--exclude=/tools/clang/test/debuginfo-tests'
+# CHECK-DERIVE: test_build.py.tmp.SANDBOX/clang.src/'
+# CHECK-DERIVE: test_build.py.tmp.SANDBOX/llvm/tools/clang'
+# CHECK-DERIVE: 'rsync' '-auvh' '--delete' '--exclude=.svn/'
+# CHECK-DERIVE: test_build.py.tmp.SANDBOX/libcxx.src/'
+# CHECK-DERIVE:test_build.py.tmp.SANDBOX/llvm/projects/libcxx'
+# CHECK-DERIVE: 'rsync' '-auvh' '--delete' '--exclude=.svn/'
+# CHECK-DERIVE: test_build.py.tmp.SANDBOX/clang-tools-extra.src/'
+# CHECK-DERIVE: test_build.py.tmp.SANDBOX/llvm/tools/clang/tools/extra'
+# CHECK-DERIVE: 'rsync' '-auvh' '--delete' '--exclude=.svn/'
+# CHECK-DERIVE: test_build.py.tmp.SANDBOX/compiler-rt.src/'
+# CHECK-DERIVE: test_build.py.tmp.SANDBOX/llvm/projects/compiler-rt'
+# CHECK-DERIVE: 'rsync' '-auvh' '--delete' '--exclude=.svn/'
+# CHECK-DERIVE: test_build.py.tmp.SANDBOX/debuginfo-tests.src/'
+# CHECK-DERIVE: test_build.py.tmp.SANDBOX/llvm/tools/clang/test/debuginfo-tests'
+# CHECK-DERIVE: @@@@@@
+
+
+
+# RUN: cd %t.SANDBOX; python %{src_root}/zorg/jenkins/build.py derive-lldb
+# RUN: cd %t.SANDBOX; python %{src_root}/zorg/jenkins/build.py derive-llvm+clang
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+

Modified: zorg/trunk/test/lit.cfg
URL: http://llvm.org/viewvc/llvm-project/zorg/trunk/test/lit.cfg?rev=224166&r1=224165&r2=224166&view=diff
==============================================================================
--- zorg/trunk/test/lit.cfg (original)
+++ zorg/trunk/test/lit.cfg Fri Dec 12 17:41:01 2014
@@ -2,6 +2,7 @@
 
 import os
 import platform
+import lit
 
 # Configuration file for the 'lit' test runner.
 
@@ -26,3 +27,7 @@ config.target_triple = None
 
 config.environment['PYTHONPATH'] = os.path.join(config.test_source_root, '..')
 
+
+src_root = os.path.join(config.test_source_root, '..')
+
+config.substitutions.append(('%{src_root}', src_root))
\ No newline at end of file

Removed: zorg/trunk/zorg/jenkins/test_jenkins_build.sh
URL: http://llvm.org/viewvc/llvm-project/zorg/trunk/zorg/jenkins/test_jenkins_build.sh?rev=224165&view=auto
==============================================================================
--- zorg/trunk/zorg/jenkins/test_jenkins_build.sh (original)
+++ zorg/trunk/zorg/jenkins/test_jenkins_build.sh (removed)
@@ -1,63 +0,0 @@
-#!/bin/bash
-# This is a simple tester for the Jenkins build.py.  Use at your own risk, it modifies the local src dir.
-# This should be replaced with a real tester.
-
-set -u
-set -e
-
-# Tell build.py to just print commands instead of running.
-export TESTING=1
-
-export LLVM_REV=1234
-
-
-# Some stub files.
-rm -rf host-compiler
-mkdir -p host-compiler/lib
-mkdir -p host-compiler/bin
-touch host-compiler/bin/clang
-mkdir -p llvm.src
-mkdir -p clang.src
-mkdir -p libcxx.src
-mkdir -p compiler-rt.src
-mkdir -p debuginfo-tests.src
-mkdir -p clang-tools-extra.src
-mkdir -p lldb.src
-
-
-python=`which python`
-
-$python ./build.py clang all
-$python ./build.py clang all --assertions
-
-
-$python ./build.py clang all --lto
-$python ./build.py clang build --lto
-
-$python ./build.py clang build
-$python ./build.py clang test
-
-echo "############ CMAKE ##############"
-
-$python ./build.py cmake all
-$python ./build.py cmake build
-$python ./build.py cmake test
-$python ./build.py cmake testlong
-
-
-echo "############ SRC TREE ##############"
-
-$python ./build.py derive
-$python ./build.py derive-lldb
-$python ./build.py derive-llvm+clang
-
-#Clean up.
-
-rm -rf host-compiler
-rm -rf llvm.src
-rm -rf clang.src
-rm -rf libcxx.src
-rm -rf compiler-rt.src
-rm -rf debuginfo-tests.src
-rm -rf clang-tools-extra.src
-rm -rf lldb.src
\ No newline at end of file





More information about the llvm-commits mailing list