[zorg] r232006 - [zorg] add llgo builder, osuosl config
Andrew Wilkins
axwalk at gmail.com
Wed Mar 11 19:26:00 PDT 2015
Author: axw
Date: Wed Mar 11 21:25:59 2015
New Revision: 232006
URL: http://llvm.org/viewvc/llvm-project?rev=232006&view=rev
Log:
[zorg] add llgo builder, osuosl config
Summary:
Add LLGoBuilder to zorg, and add base
changes to osuosl buildbot config. There are
no slaves set up yet.
Builds fail currently, pending fixes to llgo:
D7851, D7852.
Test Plan: Tested with github.com/axw/docker-zorg
Reviewers: gkistanova
Reviewed By: gkistanova
Subscribers: pcc, axw, llvm-commits
Differential Revision: http://reviews.llvm.org/D7989
Added:
zorg/trunk/zorg/buildbot/builders/LLGoBuilder.py
Modified:
zorg/trunk/buildbot/osuosl/master/config/builders.py
zorg/trunk/buildbot/osuosl/master/master.cfg
zorg/trunk/zorg/buildbot/changes/llvmpoller.py
Modified: zorg/trunk/buildbot/osuosl/master/config/builders.py
URL: http://llvm.org/viewvc/llvm-project/zorg/trunk/buildbot/osuosl/master/config/builders.py?rev=232006&r1=232005&r2=232006&view=diff
==============================================================================
--- zorg/trunk/buildbot/osuosl/master/config/builders.py (original)
+++ zorg/trunk/buildbot/osuosl/master/config/builders.py Wed Mar 11 21:25:59 2015
@@ -26,6 +26,10 @@ from zorg.buildbot.builders import LLDBu
reload(LLDBuilder)
from zorg.buildbot.builders import LLDBuilder
+from zorg.buildbot.builders import LLGoBuilder
+reload(LLGoBuilder)
+from zorg.buildbot.builders import LLGoBuilder
+
from zorg.buildbot.builders import ClangAndLLDBuilder
reload(ClangAndLLDBuilder)
from zorg.buildbot.builders import ClangAndLLDBuilder
@@ -762,6 +766,13 @@ def _get_lld_builders():
]
+
+# llgo builders.
+def _get_llgo_builders():
+ # No build slaves set up for llgo yet.
+ return []
+
+
# Sanitizer builders.
def _get_sanitizer_builders():
return [
@@ -1073,6 +1084,10 @@ def get_builders():
b['category'] = 'lldb'
yield b
+ for b in _get_llgo_builders():
+ b['category'] = 'llgo'
+ yield b
+
for b in _get_sanitizer_builders():
b['category'] = 'sanitizer'
yield b
Modified: zorg/trunk/buildbot/osuosl/master/master.cfg
URL: http://llvm.org/viewvc/llvm-project/zorg/trunk/buildbot/osuosl/master/master.cfg?rev=232006&r1=232005&r2=232006&view=diff
==============================================================================
--- zorg/trunk/buildbot/osuosl/master/master.cfg (original)
+++ zorg/trunk/buildbot/osuosl/master/master.cfg Wed Mar 11 21:25:59 2015
@@ -47,6 +47,7 @@ c['change_source'].append(LLVMPoller(pro
"libcxxabi",
"lld",
"lldb",
+ "llgo",
"openmp"]))
# c['change_source'].append(LLVMPoller("test-suite", "trunk"))
@@ -169,6 +170,14 @@ c['schedulers'].append(SingleBranchSched
"libcxx",
"libcxxabi"])))
+c['schedulers'].append(SingleBranchScheduler(name="llgo_scheduler",
+ treeStableTimer=2*60,
+ builderNames=get_all_for("llgo"),
+ change_filter=depends_on([
+ "llvm",
+ "cfe",
+ "llgo"])))
+
####### PROJECT IDENTITY
c['title'] = "LLVM"
Added: zorg/trunk/zorg/buildbot/builders/LLGoBuilder.py
URL: http://llvm.org/viewvc/llvm-project/zorg/trunk/zorg/buildbot/builders/LLGoBuilder.py?rev=232006&view=auto
==============================================================================
--- zorg/trunk/zorg/buildbot/builders/LLGoBuilder.py (added)
+++ zorg/trunk/zorg/buildbot/builders/LLGoBuilder.py Wed Mar 11 21:25:59 2015
@@ -0,0 +1,92 @@
+import os
+
+import buildbot
+import buildbot.process.factory
+from buildbot.steps.source import SVN
+from buildbot.steps.shell import ShellCommand, SetProperty
+
+from zorg.buildbot.commands.NinjaCommand import NinjaCommand
+
+# NOTE: The llgo builder does not currently support Windows,
+# on account of the shell commands. That's okay for now, as
+# llgo is only tested and known to work on Linux x86-64.
+
+def getLLGoBuildFactory(
+ clean=True,
+ build_type='Release+Asserts',
+ test_libgo=True, # run 'check-libgo' target if True
+ ):
+ llvm_srcdir = "llvm.src"
+ llvm_objdir = "llvm.obj"
+ llgo_srcdir = '%s/tools/llgo' % llvm_srcdir
+ clang_srcdir = '%s/tools/clang' % llvm_srcdir
+
+ f = buildbot.process.factory.BuildFactory()
+ # Determine the build directory.
+ f.addStep(SetProperty(name="get_builddir",
+ command=["pwd"],
+ property="builddir",
+ description="set build dir",
+ workdir="."))
+ # Get LLVM, clang and llgo
+ f.addStep(SVN(name='svn-llvm',
+ mode='update',
+ baseURL='http://llvm.org/svn/llvm-project/llvm/',
+ defaultBranch='trunk',
+ workdir=llvm_srcdir))
+ f.addStep(SVN(name='svn-clang',
+ mode='update',
+ baseURL='http://llvm.org/svn/llvm-project/cfe/',
+ defaultBranch='trunk',
+ workdir=clang_srcdir))
+ f.addStep(SVN(name='svn-llgo',
+ mode='update',
+ baseURL='http://llvm.org/svn/llvm-project/llgo/',
+ defaultBranch='trunk',
+ workdir=llgo_srcdir))
+
+ # Clean build directory, if requested.
+ f.addStep(ShellCommand(name="rm-llvm_objdir",
+ command=["rm", "-rf", llvm_objdir],
+ haltOnFailure=True,
+ description=["rm build dir", "llvm"],
+ workdir=".",
+ doStepIf=clean))
+
+ # Create configuration files with cmake
+ f.addStep(ShellCommand(name="create-build-dir",
+ command=["mkdir", "-p", llvm_objdir],
+ haltOnFailure=False,
+ description=["create build dir"],
+ workdir="."))
+ cmakeCommand = [
+ "cmake", "-G", "Ninja",
+ "../%s" %llvm_srcdir,
+ "-DCMAKE_BUILD_TYPE=" + build_type,
+ ]
+ f.addStep(ShellCommand(name="cmake-configure",
+ command=cmakeCommand,
+ haltOnFailure=False,
+ description=["cmake configure"],
+ workdir=llvm_objdir))
+
+ # Build llgo
+ f.addStep(NinjaCommand(name="build_llgo",
+ targets=["llgo"],
+ haltOnFailure=True,
+ description=["build llgo"],
+ workdir=llvm_objdir))
+ # Test llgo
+ f.addStep(NinjaCommand(name="test_llgo",
+ targets=["check-llgo"],
+ haltOnFailure=True,
+ description=["test llgo"],
+ workdir=llvm_objdir))
+ # Test libgo
+ f.addStep(NinjaCommand(name="test_libgo",
+ targets=["check-libgo"],
+ haltOnFailure=True,
+ description=["test libgo"],
+ workdir=llvm_objdir))
+ return f
+
Modified: zorg/trunk/zorg/buildbot/changes/llvmpoller.py
URL: http://llvm.org/viewvc/llvm-project/zorg/trunk/zorg/buildbot/changes/llvmpoller.py?rev=232006&r1=232005&r2=232006&view=diff
==============================================================================
--- zorg/trunk/zorg/buildbot/changes/llvmpoller.py (original)
+++ zorg/trunk/zorg/buildbot/changes/llvmpoller.py Wed Mar 11 21:25:59 2015
@@ -238,6 +238,7 @@ class LLVMPoller(base.PollingChangeSourc
'libcxxabi' : 'libcxxabi',
'lld' : 'lld',
'lldb' : 'lldb',
+ 'llgo' : 'llgo',
'openmp' : 'openmp',
}
More information about the llvm-commits
mailing list