changeset 3:7a07ae3068be

add mxe-octave 'release' builds and rebalance worker loads
author John W. Eaton <jwe@octave.org>
date Thu, 28 Jun 2018 18:20:12 +0000
parents f77e7e92cc95
children 5d2e18ee2b92
files master.cfg
diffstat 1 files changed, 114 insertions(+), 56 deletions(-) [+]
line wrap: on
line diff
--- a/master.cfg	Wed Jun 13 16:27:52 2018 +0000
+++ b/master.cfg	Thu Jun 28 18:20:12 2018 +0000
@@ -97,34 +97,38 @@
 #all_default_octave_builders.append ("gcc-4.9-debian")
 #all_default_octave_builders.append ("gcc-5-debian")
 all_default_octave_builders.append ("gcc-6-debian") # mtmx
-all_default_octave_builders.append ("gcc-7-debian") # jwe
-all_default_octave_builders.append ("gcc-7-lto-debian") # jwe
+all_default_octave_builders.append ("gcc-7-debian") # jwe 1
+all_default_octave_builders.append ("gcc-7-lto-debian") # jwe 2
 all_default_octave_builders.append ("gcc-fedora") # das
 all_default_octave_builders.append ("gcc-lto-fedora") # das
-all_default_octave_builders.append ("no-extras-debian") # jwe
+all_default_octave_builders.append ("no-extras-debian") # jwe 1
 all_default_octave_builders.append ("clang-3.9-debian") # mtmx
-all_default_octave_builders.append ("clang-4.0-debian") # jwe
-all_default_octave_builders.append ("clang-5.0-debian") # jwe
+all_default_octave_builders.append ("clang-4.0-debian") # jwe 0
+all_default_octave_builders.append ("clang-5.0-debian") # jwe 3
 all_default_octave_builders.append ("clang-fedora") # das
 all_default_octave_builders.append ("clang-osx") # simone
 
 all_stable_octave_builders = [];
-all_stable_octave_builders.append ("stable-gcc-7-debian") # jwe
-all_stable_octave_builders.append ("stable-gcc-7-lto-debian") # jwe
+all_stable_octave_builders.append ("stable-gcc-7-debian") # jwe 1
+all_stable_octave_builders.append ("stable-gcc-7-lto-debian") # jwe 2
 all_stable_octave_builders.append ("stable-gcc-fedora") # das
-all_stable_octave_builders.append ("stable-no-extras-debian") # jwe
-all_stable_octave_builders.append ("stable-clang-4.0-debian") # jwe
-all_stable_octave_builders.append ("stable-clang-5.0-debian") # jwe
+all_stable_octave_builders.append ("stable-no-extras-debian") # jwe 1
+all_stable_octave_builders.append ("stable-clang-4.0-debian") # jwe 0
+all_stable_octave_builders.append ("stable-clang-5.0-debian") # jwe 3
 all_stable_octave_builders.append ("stable-clang-osx") # simone
 
 all_mxe_octave_builders = [];
-all_mxe_octave_builders.append ("w32-on-debian") # jwe
-all_mxe_octave_builders.append ("w64-32-on-debian") # jwe
-all_mxe_octave_builders.append ("w64-64-on-debian") # jwe
-all_mxe_octave_builders.append ("w32-stable-on-debian") # jwe
-all_mxe_octave_builders.append ("w64-32-stable-on-debian") # jwe
-all_mxe_octave_builders.append ("mxe-native-on-debian") # jwe
-all_mxe_octave_builders.append ("mxe-native-all-on-debian") # jwe
+all_mxe_octave_builders.append ("w32-on-debian") # jwe 3
+all_mxe_octave_builders.append ("w64-32-on-debian") # jwe 0
+all_mxe_octave_builders.append ("w64-64-on-debian") # jwe 2
+all_mxe_octave_builders.append ("w32-release-on-debian") # jwe 3
+all_mxe_octave_builders.append ("w64-32-release-on-debian") # jwe 0
+all_mxe_octave_builders.append ("w64-64-release-on-debian") # jwe 2
+all_mxe_octave_builders.append ("w32-stable-on-debian") # jwe 3
+all_mxe_octave_builders.append ("w64-32-stable-on-debian") # jwe 0
+all_mxe_octave_builders.append ("w64-64-stable-on-debian") # jwe 2
+all_mxe_octave_builders.append ("mxe-native-on-debian") # jwe 0
+all_mxe_octave_builders.append ("mxe-native-all-on-debian") # jwe 2
 
 c["schedulers"] = []
 
@@ -154,13 +158,55 @@
                                        branch = "default",
                                        change_filter = mxe_octave_default_filter,
                                        builderNames = ["w64-32-on-debian"],
-                                       hour = 6))
+                                       hour = 0))
 
 ## Here, branch is the mxe-octave branch.
 c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-w64-64",
                                        branch = "default",
                                        change_filter = mxe_octave_default_filter,
                                        builderNames = ["w64-64-on-debian"],
+                                       hour = 0))
+
+## Here, branch is the mxe-octave branch.
+c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-w32-release",
+                                       branch = "default",
+                                       change_filter = mxe_octave_default_filter,
+                                       builderNames = ["w32-release-on-debian"],
+                                       hour = 8))
+
+## Here, branch is the mxe-octave branch.
+c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-w64-32-release",
+                                       branch = "default",
+                                       change_filter = mxe_octave_default_filter,
+                                       builderNames = ["w64-32-release-on-debian"],
+                                       hour = 6))
+
+## Here, branch is the mxe-octave branch.
+c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-w64-64-release",
+                                       branch = "default",
+                                       change_filter = mxe_octave_default_filter,
+                                       builderNames = ["w64-64-release-on-debian"],
+                                       hour = 6))
+
+## Here, branch is the mxe-octave branch.
+c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-w32-stable",
+                                       branch = "default",
+                                       change_filter = mxe_octave_default_filter,
+                                       builderNames = ["w32-stable-on-debian"],
+                                       hour = 16))
+
+## Here, branch is the mxe-octave branch.
+c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-w64-32-stable",
+                                       branch = "default",
+                                       change_filter = mxe_octave_default_filter,
+                                       builderNames = ["w64-32-stable-on-debian"],
+                                       hour = 12))
+
+## Here, branch is the mxe-octave branch.
+c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-w64-64-stable",
+                                       branch = "default",
+                                       change_filter = mxe_octave_default_filter,
+                                       builderNames = ["w64-64-stable-on-debian"],
                                        hour = 12))
 
 ## Here, branch is the mxe-octave branch.
@@ -175,21 +221,7 @@
                                        branch = "default",
                                        change_filter = mxe_octave_default_filter,
                                        builderNames = ["mxe-native-all-on-debian"],
-                                       hour = 0))
-
-## Here, branch is the mxe-octave branch.
-c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-w32-stable",
-                                       branch = "default",
-                                       change_filter = mxe_octave_default_filter,
-                                       builderNames = ["w32-stable-on-debian"],
-                                       hour = 8))
-
-## Here, branch is the mxe-octave branch.
-c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-w64-32-stable",
-                                       branch = "default",
-                                       change_filter = mxe_octave_default_filter,
-                                       builderNames = ["w64-32-stable-on-debian"],
-                                       hour = 16))
+                                       hour = 18))
 
 c["schedulers"].append (ForceScheduler (name = "force_mxe_octave", builderNames = all_mxe_octave_builders))
 
@@ -555,11 +587,11 @@
                                      factory = mk_clang_4_0_factory (19, "-j8", "stable")))
 
 c["builders"].append (BuilderConfig (name = "clang-5.0-debian",
-                                     workernames = ["jwe-debian-x86_64-2"],
+                                     workernames = ["jwe-debian-x86_64-3"],
                                      factory = mk_clang_5_0_factory (19, "-j8", "default")))
 
 c["builders"].append (BuilderConfig (name = "stable-clang-5.0-debian",
-                                     workernames = ["jwe-debian-x86_64-2"],
+                                     workernames = ["jwe-debian-x86_64-3"],
                                      factory = mk_clang_5_0_factory (19, "-j8", "stable")))
 
 c["builders"].append (BuilderConfig (name = "clang-fedora",
@@ -613,7 +645,12 @@
 ## has a high nice value.
 
 def mk_mxe_octave_hg_tarball_step (nice = 0, jobs = 8, branch = "default"):
-  make_cmd = build_cmd_list (["make", "JOBS=" + str (jobs), "hg-octave-dist", "hg-octave-branch=" + branch],
+
+  hg_octave_branch = branch
+  if branch == "release":
+    hg_octave_branch = "stable"
+
+  make_cmd = build_cmd_list (["make", "JOBS=" + str (jobs), "hg-octave-dist", "hg-octave-branch=" + hg_octave_branch],
                              nice = nice)
   return Compile (command = make_cmd, workdir = "src", env = build_env,
                   timeout = 14400)
@@ -642,6 +679,7 @@
   ## This also builds all dependencies for Octave, so it can take a
   ## while.  Using ccache should help us significantly since we are
   ## typically rebuilding the same sets of packages repeatedly.
+
   factory.addStep (mk_mxe_octave_hg_tarball_step (nice = nice, jobs = jobs,
                                                   branch = branch))
   factory.addStep (mk_mxe_octave_compile_step (nice = nice, jobs = jobs,
@@ -656,19 +694,20 @@
                                 ["--enable-qt5",
                                  "--enable-devel-tools",
                                  "--disable-windows-64",
+                                 "--disable-64",
+                                 "--disable-fortran-int64",
                                  "--disable-system-opengl"],
                                 compile_opts)
 
 
 def mk_w64_32_factory (nice, jobs, branch, compile_opts):
-  configure_opts = ["--enable-qt5",
-                    "--enable-devel-tools",
-                    "--disable-system-opengl"]
-  if branch == "stable":
-    configure_opts.extend (["--disable-64"])
-
   return mk_mxe_octave_factory (nice, jobs, branch,
-                                configure_opts,
+                                ["--enable-qt5",
+                                 "--enable-devel-tools",
+                                 "--enable-windows-64",
+                                 "--enable-64",
+                                 "--disable-fortran-int64",
+                                 "--disable-system-opengl"],
                                 compile_opts)
 
 
@@ -676,9 +715,10 @@
   return mk_mxe_octave_factory (nice, jobs, branch,
                                 ["--enable-qt5",
                                  "--enable-devel-tools",
+                                 "--enable-windows-64",
+                                 "--enable-64",
                                  "--enable-fortran-int64",
-                                 "--disable-system-opengl",
-                                 "--enable-64"],
+                                 "--disable-system-opengl"],
                                 compile_opts)
 
 
@@ -712,7 +752,7 @@
 
 
 c["builders"].append (BuilderConfig (name = "w32-on-debian",
-                                     workernames = ["jwe-debian-x86_64-0"],
+                                     workernames = ["jwe-debian-x86_64-3"],
                                      factory = mk_w32_factory (19, 8, "default", "nsis-installer")))
 
 c["builders"].append (BuilderConfig (name = "w64-32-on-debian",
@@ -720,8 +760,34 @@
                                      factory = mk_w64_32_factory (19, 8, "default", "nsis-installer")))
 
 c["builders"].append (BuilderConfig (name = "w64-64-on-debian",
+                                     workernames = ["jwe-debian-x86_64-2"],
+                                     factory = mk_w64_64_factory (19, 8, "default", "nsis-installer")))
+
+
+c["builders"].append (BuilderConfig (name = "w32-release-on-debian",
+                                     workernames = ["jwe-debian-x86_64-3"],
+                                     factory = mk_w32_factory (19, 8, "release", "nsis-installer")))
+
+c["builders"].append (BuilderConfig (name = "w64-32-release-on-debian",
                                      workernames = ["jwe-debian-x86_64-0"],
-                                     factory = mk_w64_64_factory (19, 8, "default", "nsis-installer")))
+                                     factory = mk_w64_32_factory (19, 8, "release", "nsis-installer")))
+
+c["builders"].append (BuilderConfig (name = "w64-64-release-on-debian",
+                                     workernames = ["jwe-debian-x86_64-2"],
+                                     factory = mk_w64_64_factory (19, 8, "release", "nsis-installer")))
+
+
+c["builders"].append (BuilderConfig (name = "w32-stable-on-debian",
+                                     workernames = ["jwe-debian-x86_64-3"],
+                                     factory = mk_w32_factory (19, 8, "stable", "nsis-installer")))
+
+c["builders"].append (BuilderConfig (name = "w64-32-stable-on-debian",
+                                     workernames = ["jwe-debian-x86_64-0"],
+                                     factory = mk_w64_32_factory (19, 8, "stable", "nsis-installer")))
+
+c["builders"].append (BuilderConfig (name = "w64-64-stable-on-debian",
+                                     workernames = ["jwe-debian-x86_64-2"],
+                                     factory = mk_w64_64_factory (19, 8, "stable", "nsis-installer")))
 
 
 c["builders"].append (BuilderConfig (name = "mxe-native-on-debian",
@@ -729,18 +795,10 @@
                                      factory = mk_native_factory (19, 8, "default", "tar-dist")))
 
 c["builders"].append (BuilderConfig (name = "mxe-native-all-on-debian",
-                                     workernames = ["jwe-debian-x86_64-3"],
+                                     workernames = ["jwe-debian-x86_64-2"],
                                      factory = mk_native_all_factory (19, 8, "default", "tar-dist")))
 
 
-c["builders"].append (BuilderConfig (name = "w32-stable-on-debian",
-                                     workernames = ["jwe-debian-x86_64-3"],
-                                     factory = mk_w32_factory (19, 8, "stable", "nsis-installer")))
-
-c["builders"].append (BuilderConfig (name = "w64-32-stable-on-debian",
-                                     workernames = ["jwe-debian-x86_64-3"],
-                                     factory = mk_w64_32_factory (19, 8, "stable", "nsis-installer")))
-
 ## PROJECT IDENTITY
 
 ## the 'title' string will appear at the top of this buildbot