[Bf-blender-cvs] [67766f7] master: Put latest buildbot config files to git

Sergey Sharybin noreply at git.blender.org
Sat Nov 8 20:12:03 CET 2014


Commit: 67766f7715a017fc20b2cba9892cdb3ab093f035
Author: Sergey Sharybin
Date:   Sun Nov 9 00:11:50 2014 +0500
Branches: master
https://developer.blender.org/rB67766f7715a017fc20b2cba9892cdb3ab093f035

Put latest buildbot config files to git

===================================================================

M	build_files/buildbot/master.cfg
M	build_files/buildbot/master_unpack.py

===================================================================

diff --git a/build_files/buildbot/master.cfg b/build_files/buildbot/master.cfg
index 66b456f..e96f49b 100644
--- a/build_files/buildbot/master.cfg
+++ b/build_files/buildbot/master.cfg
@@ -3,6 +3,12 @@
 
 # <pep8 compliant>
 
+# List of the branches being built automatically overnight
+NIGHT_SCHEDULE_BRANCHES=[None, "gooseberry"]
+
+# List of the branches available for force build
+FORCE_SCHEDULE_BRANCHES=["master", "gooseberry", "experimental-build"]
+
 """
 Stock Twisted directory lister doesn't provide any information about last file
 modification time, we hack the class a bit in order to have such functionaliity
@@ -11,7 +17,6 @@ modification time, we hack the class a bit in order to have such functionaliity
 
 from buildbot.status.web.base import DirectoryLister
 
-
 def get_files_and_directories(self, directory):
     from twisted.web.static import (getTypeAndEncoding,
                                     formatFileSize)
@@ -113,7 +118,7 @@ def schedule_force_build(name):
         codebases=[forcesched.CodebaseParameter(
                 codebase="blender",
                 branch=forcesched.ChoiceStringParameter(
-                    name="branch", choices=["master", "experimental-build"], default="master"),
+                    name="branch", choices=FORCE_SCHEDULE_BRANCHES, default="master"),
                 # Do not hide revision, can be handy!
                 repository=forcesched.FixedParameter(name="repository", default="", hide=True),
                 project=forcesched.FixedParameter(name="project", default="", hide=True)),
@@ -127,18 +132,22 @@ def schedule_force_build(name):
 
 
 def schedule_build(name, hour, minute=0):
-    c['schedulers'].append(timed.Nightly(name='nightly ' + name,
-        codebases={
-            "blender": {"repository": ""},
-            "blender-translations": {"repository": ""},
-            "blender-addons": {"repository": ""},
-            "blender-addons-contrib": {"repository": ""},
-            "scons": {"repository": ""},
-            "lib svn": {"repository": ""}},
-        branch=None,
-        builderNames=[name],
-        hour=hour,
-        minute=minute))
+    for current_branch in NIGHT_SCHEDULE_BRANCHES:
+        scheduler_name = "nightly " + name
+        if current_branch:
+            scheduler_name += ' ' + current_branch
+        c['schedulers'].append(timed.Nightly(name=scheduler_name,
+            codebases={
+                "blender": {"repository": ""},
+                "blender-translations": {"repository": "", "branch": "master"},
+                "blender-addons": {"repository": "", "branch": "master"},
+                "blender-addons-contrib": {"repository": "", "branch": "master"},
+                "scons": {"repository": "", "branch": "master"},
+                "lib svn": {"repository": "", "branch": "master"}},
+            branch=current_branch,
+            builderNames=[name],
+            hour=hour,
+            minute=minute))
 
 
 # BUILDERS
@@ -295,6 +304,8 @@ add_builder(c, 'linux_glibc211_i386_scons', '', generic_builder, hour=1)
 add_builder(c, 'linux_glibc211_x86_64_scons', '', generic_builder, hour=2)
 add_builder(c, 'win32_scons_vc2013', 'windows_vc12', generic_builder, hour=1)
 add_builder(c, 'win64_scons_vc2013', 'win64_vc12', generic_builder, hour=2)
+add_builder(c, 'win32_cmake_vc2013', 'windows_vc12', generic_builder, hour=3)
+add_builder(c, 'win64_cmake_vc2013', 'win64_vc12', generic_builder, hour=4)
 #add_builder(c, 'mingw_win32_scons', 'mingw32', generic_builder, hour=4)
 add_builder(c, 'mingw_win64_scons', 'mingw64', generic_builder, hour=3)
 #add_builder(c, 'freebsd_i386_cmake', '', generic_builder, hour=1)
diff --git a/build_files/buildbot/master_unpack.py b/build_files/buildbot/master_unpack.py
index 35d2661..f7ed2d0 100644
--- a/build_files/buildbot/master_unpack.py
+++ b/build_files/buildbot/master_unpack.py
@@ -30,12 +30,12 @@ import zipfile
 # extension stripping
 def strip_extension(filename):
     extensions = '.zip', '.tar', '.bz2', '.gz', '.tgz', '.tbz', '.exe'
-    filename_noext, ext = os.path.splitext(filename)
-    if ext in extensions:
-        return strip_extension(filename_noext)  # may have .tar.bz2
-    else:
-        return filename
 
+    for ext in extensions:
+        if filename.endswith(ext):
+            filename = filename[:-len(ext)]
+
+    return filename
 
 # extract platform from package name
 def get_platform(filename):
@@ -48,12 +48,11 @@ def get_platform(filename):
     tokens = filename.split("-")
     platforms = ('osx', 'mac', 'bsd',
                  'win', 'linux', 'source',
-                 'solaris',
-                 'mingw')
+                 'irix', 'solaris', 'mingw')
     platform_tokens = []
     found = False
 
-    for token in tokens:
+    for i, token in enumerate(tokens):
         if not found:
             for platform in platforms:
                 if platform in token.lower():
@@ -65,11 +64,10 @@ def get_platform(filename):
 
     return '-'.join(platform_tokens)
 
-
 def get_branch(filename):
     tokens = filename.split("-")
     branch = ""
-
+    
     for token in tokens:
         if token == "blender":
             return branch
@@ -112,16 +110,16 @@ branch = get_branch(packagename)
 
 if platform == '':
     sys.stderr.write('Failed to detect platform ' +
-                     'from package: %r\n' % packagename)
+        'from package: %r\n' % packagename)
     sys.exit(1)
 
 # extract
-directory = 'public_html/download'
 if not branch or branch == 'master':
     directory = 'public_html/download'
 elif branch == 'experimental-build':
     directory = 'public_html/download/experimental'
-# else: put 'official' branches in their own public subdir of download/ ?
+else:
+    directory = 'public_html/download'
 
 try:
     zf = z.open(package)
@@ -131,8 +129,6 @@ try:
 
     zf.close()
     z.close()
-
-    os.remove(filename)
 except Exception, ex:
     sys.stderr.write('Failed to unzip package: %s\n' % str(ex))
     sys.exit(1)




More information about the Bf-blender-cvs mailing list