change repo
[vuplus_openembedded] / contrib / buildbot / master.cfg
1 import copy
2
3 from buildbot.buildslave           import BuildSlave
4 from buildbot.scheduler            import Nightly
5 from buildbot.process              import factory
6 from buildbot.steps.shell          import Compile, ShellCommand 
7 from buildbot.steps                import source
8 from buildbot.status               import html
9
10 # ------------------------------------------------------------------------------------------------------------------------------------------------
11
12 def bbot_build_oe_target(factory, target):
13     factory.addStep(ShellCommand, description=["Building", defaultenv['MACHINE'], target], command=["/home/buildbot/scripts/full-oe-autobuild", target], env=copy.copy(defaultenv), timeout=10000)
14
15 def bbot_initialize_factory(factory, clean_tmp=False, repository="git://git.openembedded.net/openembedded", branch="stable/2009"):
16     factory.addStep(source.Git(repourl=repository, branch=branch, mode='update'))
17
18     if clean_tmp:
19             factory.addStep(ShellCommand, description=["Cleaning", "tmp"],  command="/bin/rm tmp || /bin/true", timeout=600)
20     else:
21             factory.addStep(ShellCommand, description=["Cleaning", "previous", "targets"],  command="/bin/rm tmp/deploy/*/images/*/*rootfs* || /bin/true", timeout=600)
22             factory.addStep(ShellCommand, description=["Cleaning", "previous", "targets", "step 2"],  command="/bin/rm -rf tmp/deploy/*/images/*/*testlab* || /bin/true", timeout=600)
23
24 # ------------------------------------------------------------------------------------------------------------------------------------------------
25
26 defaultenv = {}
27
28 machines_glibc  = ['at91sam9263ek', 'beagleboard', 'qemux86', 'vortex86sx', 'bug']
29 machines_uclibc = ['at91sam9263ek', 'beagleboard', 'qemux86', 'atngw100', 'bug']
30
31 targets_glibc  = ['console-image', 'x11-image']
32 targets_uclibc = ['console-image', 'x11-image']
33
34 angstrom_glibc_incremental_build = factory.BuildFactory()
35 bbot_initialize_factory(angstrom_glibc_incremental_build)
36 defaultenv['ANGSTROMLIBC'] = 'glibc'
37
38 for machine in machines_glibc:
39         defaultenv['MACHINE'] = machine
40         for target in targets_glibc:
41                 bbot_build_oe_target(angstrom_glibc_incremental_build, target)
42
43 angstrom_glibc_full_build = factory.BuildFactory()
44 bbot_initialize_factory(angstrom_glibc_full_build, True)
45 defaultenv['ANGSTROMLIBC'] = 'glibc'
46
47 for machine in machines_glibc:
48         defaultenv['MACHINE'] = machine
49         for target in targets_glibc:
50                 bbot_build_oe_target(angstrom_glibc_full_build, target)
51
52 angstrom_uclibc_incremental_build = factory.BuildFactory()
53 bbot_initialize_factory(angstrom_uclibc_incremental_build)
54 defaultenv['ANGSTROMLIBC'] = 'uclibc'
55
56 for machine in machines_uclibc:
57         defaultenv['MACHINE'] = machine
58         for target in targets_uclibc:
59                 bbot_build_oe_target(angstrom_uclibc_incremental_build, target)
60
61 angstrom_uclibc_full_build = factory.BuildFactory()
62 bbot_initialize_factory(angstrom_uclibc_full_build, True)
63 defaultenv['ANGSTROMLIBC'] = 'uclibc'
64
65 for machine in machines_uclibc:
66         defaultenv['MACHINE'] = machine
67         for target in targets_uclibc:
68                 bbot_build_oe_target(angstrom_uclibc_full_build, target)
69
70 # ------------------------------------------------------------------------------------------------------------------------------------------------
71
72 config = BuildmasterConfig = {}
73
74 config['projectName'] = "HaeRWu buildbot"
75 config['buildbotURL'] = "http://localhost:8010/"
76
77 config['slaves'] = [BuildSlave("homeQuad", "BOT-PASSWORD")]
78 Config['slavePortnum'] = 9989
79
80 config['schedulers'] = []
81
82 config['schedulers'].append(Nightly(name="Angstrom glibc full build",
83                                  hour=23, minute=0, dayOfWeek=[0,2,4],
84                                  builderNames=["angstrom_glibc_full_build"]))
85
86 config['schedulers'].append(Nightly(name="Angstrom glibc incremental build",
87                                  hour=5, minute=0, dayOfWeek=[0,2,4],
88                                  builderNames=["angstrom_glibc_incremental_build"]))
89
90 config['schedulers'].append(Nightly(name="Angstrom uclibc full build",
91                                  hour=23, minute=0, dayOfWeek=[1,3,5],
92                                  builderNames=["angstrom_uclibc_full_build"]))
93
94 config['schedulers'].append(Nightly(name="Angstrom uclibc incremental build",
95                                  hour=5, minute=0, dayOfWeek=[1,3,5],
96                                  builderNames=["angstrom_uclibc_incremental_build"]))
97
98
99 #---------------------------------------------------------------------
100
101 build_agf = {
102         'name':      "angstrom_glibc_full_build",
103         'slavename': "homeQuad",
104         'builddir':  "angstrom_glibc_full_build",
105         'factory':    angstrom_glibc_full_build,
106 }
107
108 build_agi = {
109         'name':      "angstrom_glibc_incremental_build",
110         'slavename': "homeQuad",
111         'builddir':  "angstrom_glibc_incremental_build",
112         'factory':    angstrom_glibc_incremental_build,
113 }
114 build_auf = {
115         'name':      "angstrom_uclibc_full_build",
116         'slavename': "homeQuad",
117         'builddir':  "angstrom_uclibc_full_build",
118         'factory':    angstrom_uclibc_full_build,
119 }
120
121 build_aui = {
122         'name':      "angstrom_uclibc_incremental_build",
123         'slavename': "homeQuad",
124         'builddir':  "angstrom_uclibc_incremental_build",
125         'factory':    angstrom_uclibc_incremental_build,
126 }
127
128 config['builders'] = [build_agf, build_agi, build_auf, build_aui ]
129 config['status'] = []
130 config['debugPassword'] = ""
131
132 config['status'].append(html.WebStatus(http_port=8010, allowForce=True))
133 config['status'].append(html.WebStatus(http_port=8011, allowForce=False))