Advertisement
Guest User

Untitled

a guest
Nov 26th, 2014
222
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.61 KB | None | 0 0
  1. allrepocodebase = {
  2.   "lib":  { 'repository':libGitUrl,  'branch' : 'master', 'revision':None },.
  3.   "apps": { 'repository':appsGitUrl", 'branch' : 'master', 'revision':None },
  4.  "deps": { 'repository':depsGitUrl, 'branch' : 'master', 'revision':None },
  5. }
  6.  
  7. scheduled_branches = ["master","studio-2.0.0"]
  8.  
  9. def getallrepocodebase(branch):
  10.  repocodebase_tmp=allrepocodebase
  11.  repocodebase_tmp["lib"]["branch"]=branch
  12.  repocodebase_tmp["apps"]["branch"]=branch
  13.  return repocodebase_tmp
  14.  
  15. c['schedulers'] = []
  16. buildbot_os=["windows","linux","mac"]
  17. # Map containing Repo triggers build of repo
  18. repos=dict()
  19. repos["lib"]="apps"
  20. repos["apps"]="tests"
  21. for repo,triggered in repos.iteritems():
  22.  for branch in scheduled_branches:
  23.    c['schedulers'].append(SingleBranchScheduler(
  24.                             name="-".join(["post-commit",repo,branch]),
  25.                             treeStableTimer=1,
  26.                             codebases = getallrepocodebase(branch),
  27.                       change_filter=ChangeFilter(codebase = repo, branch=branch),
  28.                             builderNames= ["_".join([os,repo]) for os in buildbot_os]))
  29.    for os in buildbot_os:
  30.      # Thoses tests are not ready for mac
  31.      if not (os == "mac" and triggered=="tests"):
  32.        c['schedulers'].append(Triggerable(
  33.          name = os + " " + "-".join(["post",repo,"build",branch]),
  34.          builderNames = [ "_".join([os,triggered])],
  35.          codebases = getallrepocodebase(branch)))
  36.  
  37. def getGitRepo(name, url, master=False, timeout=240):
  38.  repo = Git(
  39.    repourl = url,
  40.    codebase= name,
  41.    mode = 'full',
  42.    method = 'fresh',
  43.    workdir= name,
  44.    retry = (60, 5),
  45.    logEnviron = False,
  46.    descriptionDone="Update " + url,
  47.  )
  48.  if (master == True):
  49.    repo.branch = 'master'
  50.    repo.alwaysUseLatest = True
  51.  return repo
  52.  
  53. s_git_lib = getGitRepo("lib", libGitUrl)
  54. s_git_apps = getGitRepo("apps", appsGitUrl)
  55. s_git_deps = getGitRepo("deps", depsGitUrl)
  56.  
  57. windows_lib = BuildFactory()
  58. windows_lib.addStep(s_git_deps)
  59. windows_lib.addStep(s_git_lib)
  60. windows_lib.addStep(ShellCommand(command=["cmd.exe","/c","call","VideoStitch-deps\\CopyToExternalDeps.bat","VideoStitch-lib"], descriptionDone=["Copy Windows deps binaries"], workdir="."))
  61. scons_lib(windows_lib,"windows")
  62.  
  63. windows_apps = BuildFactory()
  64. windows_apps.addStep(s_git_apps)
  65. windows_apps.addStep(s_git_deps)
  66. windows_apps.addStep(ShellCommand(command=["cmd.exe", "/c", "call", "updatelib.bat","release" , Interpolate("%(src:lib:branch:~master)s")], descriptionDone=["retrieve " + "release" + " " + "x64" + " l>
  67. set_version_and_branch(windows_apps)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement