Mercurial > octave-buildbot
comparison master.cfg @ 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 |
comparison
equal
deleted
inserted
replaced
2:f77e7e92cc95 | 3:7a07ae3068be |
---|---|
95 | 95 |
96 all_default_octave_builders = []; | 96 all_default_octave_builders = []; |
97 #all_default_octave_builders.append ("gcc-4.9-debian") | 97 #all_default_octave_builders.append ("gcc-4.9-debian") |
98 #all_default_octave_builders.append ("gcc-5-debian") | 98 #all_default_octave_builders.append ("gcc-5-debian") |
99 all_default_octave_builders.append ("gcc-6-debian") # mtmx | 99 all_default_octave_builders.append ("gcc-6-debian") # mtmx |
100 all_default_octave_builders.append ("gcc-7-debian") # jwe | 100 all_default_octave_builders.append ("gcc-7-debian") # jwe 1 |
101 all_default_octave_builders.append ("gcc-7-lto-debian") # jwe | 101 all_default_octave_builders.append ("gcc-7-lto-debian") # jwe 2 |
102 all_default_octave_builders.append ("gcc-fedora") # das | 102 all_default_octave_builders.append ("gcc-fedora") # das |
103 all_default_octave_builders.append ("gcc-lto-fedora") # das | 103 all_default_octave_builders.append ("gcc-lto-fedora") # das |
104 all_default_octave_builders.append ("no-extras-debian") # jwe | 104 all_default_octave_builders.append ("no-extras-debian") # jwe 1 |
105 all_default_octave_builders.append ("clang-3.9-debian") # mtmx | 105 all_default_octave_builders.append ("clang-3.9-debian") # mtmx |
106 all_default_octave_builders.append ("clang-4.0-debian") # jwe | 106 all_default_octave_builders.append ("clang-4.0-debian") # jwe 0 |
107 all_default_octave_builders.append ("clang-5.0-debian") # jwe | 107 all_default_octave_builders.append ("clang-5.0-debian") # jwe 3 |
108 all_default_octave_builders.append ("clang-fedora") # das | 108 all_default_octave_builders.append ("clang-fedora") # das |
109 all_default_octave_builders.append ("clang-osx") # simone | 109 all_default_octave_builders.append ("clang-osx") # simone |
110 | 110 |
111 all_stable_octave_builders = []; | 111 all_stable_octave_builders = []; |
112 all_stable_octave_builders.append ("stable-gcc-7-debian") # jwe | 112 all_stable_octave_builders.append ("stable-gcc-7-debian") # jwe 1 |
113 all_stable_octave_builders.append ("stable-gcc-7-lto-debian") # jwe | 113 all_stable_octave_builders.append ("stable-gcc-7-lto-debian") # jwe 2 |
114 all_stable_octave_builders.append ("stable-gcc-fedora") # das | 114 all_stable_octave_builders.append ("stable-gcc-fedora") # das |
115 all_stable_octave_builders.append ("stable-no-extras-debian") # jwe | 115 all_stable_octave_builders.append ("stable-no-extras-debian") # jwe 1 |
116 all_stable_octave_builders.append ("stable-clang-4.0-debian") # jwe | 116 all_stable_octave_builders.append ("stable-clang-4.0-debian") # jwe 0 |
117 all_stable_octave_builders.append ("stable-clang-5.0-debian") # jwe | 117 all_stable_octave_builders.append ("stable-clang-5.0-debian") # jwe 3 |
118 all_stable_octave_builders.append ("stable-clang-osx") # simone | 118 all_stable_octave_builders.append ("stable-clang-osx") # simone |
119 | 119 |
120 all_mxe_octave_builders = []; | 120 all_mxe_octave_builders = []; |
121 all_mxe_octave_builders.append ("w32-on-debian") # jwe | 121 all_mxe_octave_builders.append ("w32-on-debian") # jwe 3 |
122 all_mxe_octave_builders.append ("w64-32-on-debian") # jwe | 122 all_mxe_octave_builders.append ("w64-32-on-debian") # jwe 0 |
123 all_mxe_octave_builders.append ("w64-64-on-debian") # jwe | 123 all_mxe_octave_builders.append ("w64-64-on-debian") # jwe 2 |
124 all_mxe_octave_builders.append ("w32-stable-on-debian") # jwe | 124 all_mxe_octave_builders.append ("w32-release-on-debian") # jwe 3 |
125 all_mxe_octave_builders.append ("w64-32-stable-on-debian") # jwe | 125 all_mxe_octave_builders.append ("w64-32-release-on-debian") # jwe 0 |
126 all_mxe_octave_builders.append ("mxe-native-on-debian") # jwe | 126 all_mxe_octave_builders.append ("w64-64-release-on-debian") # jwe 2 |
127 all_mxe_octave_builders.append ("mxe-native-all-on-debian") # jwe | 127 all_mxe_octave_builders.append ("w32-stable-on-debian") # jwe 3 |
128 all_mxe_octave_builders.append ("w64-32-stable-on-debian") # jwe 0 | |
129 all_mxe_octave_builders.append ("w64-64-stable-on-debian") # jwe 2 | |
130 all_mxe_octave_builders.append ("mxe-native-on-debian") # jwe 0 | |
131 all_mxe_octave_builders.append ("mxe-native-all-on-debian") # jwe 2 | |
128 | 132 |
129 c["schedulers"] = [] | 133 c["schedulers"] = [] |
130 | 134 |
131 c["schedulers"].append (SingleBranchScheduler (name = "default octave", | 135 c["schedulers"].append (SingleBranchScheduler (name = "default octave", |
132 change_filter = octave_default_filter, | 136 change_filter = octave_default_filter, |
152 ## Here, branch is the mxe-octave branch. | 156 ## Here, branch is the mxe-octave branch. |
153 c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-w64-32", | 157 c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-w64-32", |
154 branch = "default", | 158 branch = "default", |
155 change_filter = mxe_octave_default_filter, | 159 change_filter = mxe_octave_default_filter, |
156 builderNames = ["w64-32-on-debian"], | 160 builderNames = ["w64-32-on-debian"], |
161 hour = 0)) | |
162 | |
163 ## Here, branch is the mxe-octave branch. | |
164 c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-w64-64", | |
165 branch = "default", | |
166 change_filter = mxe_octave_default_filter, | |
167 builderNames = ["w64-64-on-debian"], | |
168 hour = 0)) | |
169 | |
170 ## Here, branch is the mxe-octave branch. | |
171 c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-w32-release", | |
172 branch = "default", | |
173 change_filter = mxe_octave_default_filter, | |
174 builderNames = ["w32-release-on-debian"], | |
175 hour = 8)) | |
176 | |
177 ## Here, branch is the mxe-octave branch. | |
178 c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-w64-32-release", | |
179 branch = "default", | |
180 change_filter = mxe_octave_default_filter, | |
181 builderNames = ["w64-32-release-on-debian"], | |
157 hour = 6)) | 182 hour = 6)) |
158 | 183 |
159 ## Here, branch is the mxe-octave branch. | 184 ## Here, branch is the mxe-octave branch. |
160 c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-w64-64", | 185 c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-w64-64-release", |
161 branch = "default", | 186 branch = "default", |
162 change_filter = mxe_octave_default_filter, | 187 change_filter = mxe_octave_default_filter, |
163 builderNames = ["w64-64-on-debian"], | 188 builderNames = ["w64-64-release-on-debian"], |
189 hour = 6)) | |
190 | |
191 ## Here, branch is the mxe-octave branch. | |
192 c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-w32-stable", | |
193 branch = "default", | |
194 change_filter = mxe_octave_default_filter, | |
195 builderNames = ["w32-stable-on-debian"], | |
196 hour = 16)) | |
197 | |
198 ## Here, branch is the mxe-octave branch. | |
199 c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-w64-32-stable", | |
200 branch = "default", | |
201 change_filter = mxe_octave_default_filter, | |
202 builderNames = ["w64-32-stable-on-debian"], | |
203 hour = 12)) | |
204 | |
205 ## Here, branch is the mxe-octave branch. | |
206 c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-w64-64-stable", | |
207 branch = "default", | |
208 change_filter = mxe_octave_default_filter, | |
209 builderNames = ["w64-64-stable-on-debian"], | |
164 hour = 12)) | 210 hour = 12)) |
165 | 211 |
166 ## Here, branch is the mxe-octave branch. | 212 ## Here, branch is the mxe-octave branch. |
167 c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-native", | 213 c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-native", |
168 branch = "default", | 214 branch = "default", |
173 ## Here, branch is the mxe-octave branch. | 219 ## Here, branch is the mxe-octave branch. |
174 c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-native-all", | 220 c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-native-all", |
175 branch = "default", | 221 branch = "default", |
176 change_filter = mxe_octave_default_filter, | 222 change_filter = mxe_octave_default_filter, |
177 builderNames = ["mxe-native-all-on-debian"], | 223 builderNames = ["mxe-native-all-on-debian"], |
178 hour = 0)) | 224 hour = 18)) |
179 | |
180 ## Here, branch is the mxe-octave branch. | |
181 c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-w32-stable", | |
182 branch = "default", | |
183 change_filter = mxe_octave_default_filter, | |
184 builderNames = ["w32-stable-on-debian"], | |
185 hour = 8)) | |
186 | |
187 ## Here, branch is the mxe-octave branch. | |
188 c["schedulers"].append (timed.Nightly (name = "periodic mxe-octave-w64-32-stable", | |
189 branch = "default", | |
190 change_filter = mxe_octave_default_filter, | |
191 builderNames = ["w64-32-stable-on-debian"], | |
192 hour = 16)) | |
193 | 225 |
194 c["schedulers"].append (ForceScheduler (name = "force_mxe_octave", builderNames = all_mxe_octave_builders)) | 226 c["schedulers"].append (ForceScheduler (name = "force_mxe_octave", builderNames = all_mxe_octave_builders)) |
195 | 227 |
196 ## BUILDERS | 228 ## BUILDERS |
197 | 229 |
553 c["builders"].append (BuilderConfig (name = "stable-clang-4.0-debian", | 585 c["builders"].append (BuilderConfig (name = "stable-clang-4.0-debian", |
554 workernames = ["jwe-debian-x86_64-0"], | 586 workernames = ["jwe-debian-x86_64-0"], |
555 factory = mk_clang_4_0_factory (19, "-j8", "stable"))) | 587 factory = mk_clang_4_0_factory (19, "-j8", "stable"))) |
556 | 588 |
557 c["builders"].append (BuilderConfig (name = "clang-5.0-debian", | 589 c["builders"].append (BuilderConfig (name = "clang-5.0-debian", |
558 workernames = ["jwe-debian-x86_64-2"], | 590 workernames = ["jwe-debian-x86_64-3"], |
559 factory = mk_clang_5_0_factory (19, "-j8", "default"))) | 591 factory = mk_clang_5_0_factory (19, "-j8", "default"))) |
560 | 592 |
561 c["builders"].append (BuilderConfig (name = "stable-clang-5.0-debian", | 593 c["builders"].append (BuilderConfig (name = "stable-clang-5.0-debian", |
562 workernames = ["jwe-debian-x86_64-2"], | 594 workernames = ["jwe-debian-x86_64-3"], |
563 factory = mk_clang_5_0_factory (19, "-j8", "stable"))) | 595 factory = mk_clang_5_0_factory (19, "-j8", "stable"))) |
564 | 596 |
565 c["builders"].append (BuilderConfig (name = "clang-fedora", | 597 c["builders"].append (BuilderConfig (name = "clang-fedora", |
566 workernames = ["das_fc25-x86_64"], | 598 workernames = ["das_fc25-x86_64"], |
567 factory = mk_clang_factory (19, "-j8", "default"))) | 599 factory = mk_clang_factory (19, "-j8", "default"))) |
611 ## and some of those make take significant time to build, especially | 643 ## and some of those make take significant time to build, especially |
612 ## if the build is running on a heavily loaded system and this step | 644 ## if the build is running on a heavily loaded system and this step |
613 ## has a high nice value. | 645 ## has a high nice value. |
614 | 646 |
615 def mk_mxe_octave_hg_tarball_step (nice = 0, jobs = 8, branch = "default"): | 647 def mk_mxe_octave_hg_tarball_step (nice = 0, jobs = 8, branch = "default"): |
616 make_cmd = build_cmd_list (["make", "JOBS=" + str (jobs), "hg-octave-dist", "hg-octave-branch=" + branch], | 648 |
649 hg_octave_branch = branch | |
650 if branch == "release": | |
651 hg_octave_branch = "stable" | |
652 | |
653 make_cmd = build_cmd_list (["make", "JOBS=" + str (jobs), "hg-octave-dist", "hg-octave-branch=" + hg_octave_branch], | |
617 nice = nice) | 654 nice = nice) |
618 return Compile (command = make_cmd, workdir = "src", env = build_env, | 655 return Compile (command = make_cmd, workdir = "src", env = build_env, |
619 timeout = 14400) | 656 timeout = 14400) |
620 | 657 |
621 | 658 |
640 opts = configure_opts)) | 677 opts = configure_opts)) |
641 ## Create a tarball file from an hg checkout, then build from that. | 678 ## Create a tarball file from an hg checkout, then build from that. |
642 ## This also builds all dependencies for Octave, so it can take a | 679 ## This also builds all dependencies for Octave, so it can take a |
643 ## while. Using ccache should help us significantly since we are | 680 ## while. Using ccache should help us significantly since we are |
644 ## typically rebuilding the same sets of packages repeatedly. | 681 ## typically rebuilding the same sets of packages repeatedly. |
682 | |
645 factory.addStep (mk_mxe_octave_hg_tarball_step (nice = nice, jobs = jobs, | 683 factory.addStep (mk_mxe_octave_hg_tarball_step (nice = nice, jobs = jobs, |
646 branch = branch)) | 684 branch = branch)) |
647 factory.addStep (mk_mxe_octave_compile_step (nice = nice, jobs = jobs, | 685 factory.addStep (mk_mxe_octave_compile_step (nice = nice, jobs = jobs, |
648 opts = compile_opts)) | 686 opts = compile_opts)) |
649 ## factory.addStep (mk_mxe_octave_test_step (nice = nice)) | 687 ## factory.addStep (mk_mxe_octave_test_step (nice = nice)) |
654 def mk_w32_factory (nice, jobs, branch, compile_opts): | 692 def mk_w32_factory (nice, jobs, branch, compile_opts): |
655 return mk_mxe_octave_factory (nice, jobs, branch, | 693 return mk_mxe_octave_factory (nice, jobs, branch, |
656 ["--enable-qt5", | 694 ["--enable-qt5", |
657 "--enable-devel-tools", | 695 "--enable-devel-tools", |
658 "--disable-windows-64", | 696 "--disable-windows-64", |
697 "--disable-64", | |
698 "--disable-fortran-int64", | |
659 "--disable-system-opengl"], | 699 "--disable-system-opengl"], |
660 compile_opts) | 700 compile_opts) |
661 | 701 |
662 | 702 |
663 def mk_w64_32_factory (nice, jobs, branch, compile_opts): | 703 def mk_w64_32_factory (nice, jobs, branch, compile_opts): |
664 configure_opts = ["--enable-qt5", | |
665 "--enable-devel-tools", | |
666 "--disable-system-opengl"] | |
667 if branch == "stable": | |
668 configure_opts.extend (["--disable-64"]) | |
669 | |
670 return mk_mxe_octave_factory (nice, jobs, branch, | 704 return mk_mxe_octave_factory (nice, jobs, branch, |
671 configure_opts, | 705 ["--enable-qt5", |
706 "--enable-devel-tools", | |
707 "--enable-windows-64", | |
708 "--enable-64", | |
709 "--disable-fortran-int64", | |
710 "--disable-system-opengl"], | |
672 compile_opts) | 711 compile_opts) |
673 | 712 |
674 | 713 |
675 def mk_w64_64_factory (nice, jobs, branch, compile_opts): | 714 def mk_w64_64_factory (nice, jobs, branch, compile_opts): |
676 return mk_mxe_octave_factory (nice, jobs, branch, | 715 return mk_mxe_octave_factory (nice, jobs, branch, |
677 ["--enable-qt5", | 716 ["--enable-qt5", |
678 "--enable-devel-tools", | 717 "--enable-devel-tools", |
718 "--enable-windows-64", | |
719 "--enable-64", | |
679 "--enable-fortran-int64", | 720 "--enable-fortran-int64", |
680 "--disable-system-opengl", | 721 "--disable-system-opengl"], |
681 "--enable-64"], | |
682 compile_opts) | 722 compile_opts) |
683 | 723 |
684 | 724 |
685 def mk_native_factory (nice, jobs, branch, compile_opts): | 725 def mk_native_factory (nice, jobs, branch, compile_opts): |
686 return mk_mxe_octave_factory (nice, jobs, branch, | 726 return mk_mxe_octave_factory (nice, jobs, branch, |
710 "gnu-linux"], | 750 "gnu-linux"], |
711 compile_opts) | 751 compile_opts) |
712 | 752 |
713 | 753 |
714 c["builders"].append (BuilderConfig (name = "w32-on-debian", | 754 c["builders"].append (BuilderConfig (name = "w32-on-debian", |
715 workernames = ["jwe-debian-x86_64-0"], | 755 workernames = ["jwe-debian-x86_64-3"], |
716 factory = mk_w32_factory (19, 8, "default", "nsis-installer"))) | 756 factory = mk_w32_factory (19, 8, "default", "nsis-installer"))) |
717 | 757 |
718 c["builders"].append (BuilderConfig (name = "w64-32-on-debian", | 758 c["builders"].append (BuilderConfig (name = "w64-32-on-debian", |
719 workernames = ["jwe-debian-x86_64-0"], | 759 workernames = ["jwe-debian-x86_64-0"], |
720 factory = mk_w64_32_factory (19, 8, "default", "nsis-installer"))) | 760 factory = mk_w64_32_factory (19, 8, "default", "nsis-installer"))) |
721 | 761 |
722 c["builders"].append (BuilderConfig (name = "w64-64-on-debian", | 762 c["builders"].append (BuilderConfig (name = "w64-64-on-debian", |
763 workernames = ["jwe-debian-x86_64-2"], | |
764 factory = mk_w64_64_factory (19, 8, "default", "nsis-installer"))) | |
765 | |
766 | |
767 c["builders"].append (BuilderConfig (name = "w32-release-on-debian", | |
768 workernames = ["jwe-debian-x86_64-3"], | |
769 factory = mk_w32_factory (19, 8, "release", "nsis-installer"))) | |
770 | |
771 c["builders"].append (BuilderConfig (name = "w64-32-release-on-debian", | |
723 workernames = ["jwe-debian-x86_64-0"], | 772 workernames = ["jwe-debian-x86_64-0"], |
724 factory = mk_w64_64_factory (19, 8, "default", "nsis-installer"))) | 773 factory = mk_w64_32_factory (19, 8, "release", "nsis-installer"))) |
774 | |
775 c["builders"].append (BuilderConfig (name = "w64-64-release-on-debian", | |
776 workernames = ["jwe-debian-x86_64-2"], | |
777 factory = mk_w64_64_factory (19, 8, "release", "nsis-installer"))) | |
778 | |
779 | |
780 c["builders"].append (BuilderConfig (name = "w32-stable-on-debian", | |
781 workernames = ["jwe-debian-x86_64-3"], | |
782 factory = mk_w32_factory (19, 8, "stable", "nsis-installer"))) | |
783 | |
784 c["builders"].append (BuilderConfig (name = "w64-32-stable-on-debian", | |
785 workernames = ["jwe-debian-x86_64-0"], | |
786 factory = mk_w64_32_factory (19, 8, "stable", "nsis-installer"))) | |
787 | |
788 c["builders"].append (BuilderConfig (name = "w64-64-stable-on-debian", | |
789 workernames = ["jwe-debian-x86_64-2"], | |
790 factory = mk_w64_64_factory (19, 8, "stable", "nsis-installer"))) | |
725 | 791 |
726 | 792 |
727 c["builders"].append (BuilderConfig (name = "mxe-native-on-debian", | 793 c["builders"].append (BuilderConfig (name = "mxe-native-on-debian", |
728 workernames = ["jwe-debian-x86_64-0"], | 794 workernames = ["jwe-debian-x86_64-0"], |
729 factory = mk_native_factory (19, 8, "default", "tar-dist"))) | 795 factory = mk_native_factory (19, 8, "default", "tar-dist"))) |
730 | 796 |
731 c["builders"].append (BuilderConfig (name = "mxe-native-all-on-debian", | 797 c["builders"].append (BuilderConfig (name = "mxe-native-all-on-debian", |
732 workernames = ["jwe-debian-x86_64-3"], | 798 workernames = ["jwe-debian-x86_64-2"], |
733 factory = mk_native_all_factory (19, 8, "default", "tar-dist"))) | 799 factory = mk_native_all_factory (19, 8, "default", "tar-dist"))) |
734 | 800 |
735 | |
736 c["builders"].append (BuilderConfig (name = "w32-stable-on-debian", | |
737 workernames = ["jwe-debian-x86_64-3"], | |
738 factory = mk_w32_factory (19, 8, "stable", "nsis-installer"))) | |
739 | |
740 c["builders"].append (BuilderConfig (name = "w64-32-stable-on-debian", | |
741 workernames = ["jwe-debian-x86_64-3"], | |
742 factory = mk_w64_32_factory (19, 8, "stable", "nsis-installer"))) | |
743 | 801 |
744 ## PROJECT IDENTITY | 802 ## PROJECT IDENTITY |
745 | 803 |
746 ## the 'title' string will appear at the top of this buildbot | 804 ## the 'title' string will appear at the top of this buildbot |
747 ## installation's html.WebStatus home page (linked to the 'titleURL') | 805 ## installation's html.WebStatus home page (linked to the 'titleURL') |