Advertisement
Guest User

Untitled

a guest
Feb 29th, 2016
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.52 KB | None | 0 0
  1. diff --git a/buildfarm/release/release-runner.py b/buildfarm/release/release-runner.py
  2. index d25e5c6..18640ea 100755
  3. --- a/buildfarm/release/release-runner.py
  4. +++ b/buildfarm/release/release-runner.py
  5. @@ -5,6 +5,7 @@ import time
  6. import logging
  7. import sys
  8. import os
  9. +import re
  10. import subprocess
  11. import hashlib
  12. import functools
  13. @@ -69,9 +70,12 @@ def bump_version(version):
  14. return split_by.join(v)
  15.  
  16.  
  17. +def matches(name, patterns):
  18. + return any([re.search(p, name) for p in patterns])
  19. +
  20. class ReleaseRunner(object):
  21. def __init__(self, api_root=None, username=None, password=None,
  22. - timeout=60):
  23. + timeout=60, release_patterns=None):
  24. self.new_releases = []
  25. self.releases_api = Releases((username, password), api_root=api_root,
  26. timeout=timeout)
  27. @@ -79,13 +83,22 @@ class ReleaseRunner(object):
  28. timeout=timeout)
  29. self.release_l10n_api = ReleaseL10n((username, password),
  30. api_root=api_root, timeout=timeout)
  31. + self.release_patterns = release_patterns
  32.  
  33. def get_release_requests(self):
  34. new_releases = self.releases_api.getReleases()
  35. if new_releases['releases']:
  36. - self.new_releases = [self.release_api.getRelease(name) for name in
  37. - new_releases['releases']]
  38. - return True
  39. +
  40. + new_releases = [self.release_api.getRelease(name) for name in
  41. + new_releases['releases']]
  42. + our_releases = [r for r in new_releases if
  43. + matches(r, self.release_patterns)]
  44. + if our_releases
  45. + self.new_releases = new_releases
  46. + return True
  47. + else:
  48. + log.info("No releases to handle in %s", new_releases)
  49. + return False
  50. else:
  51. log.info("No new releases: %s" % new_releases)
  52. return False
  53. @@ -412,7 +425,11 @@ def main(options):
  54.  
  55. # TODO: replace release sanity with direct checks of en-US and l10n revisions (and other things if needed)
  56.  
  57. - rr = ReleaseRunner(api_root=api_root, username=username, password=password)
  58. + release_patterns = [
  59. + r"Firefox-\d+\.0b\d+-build\d+"
  60. + ]
  61. + rr = ReleaseRunner(api_root=api_root, username=username, password=password,
  62. + release_patterns=release_patterns)
  63. scheduler = Scheduler(tc_config)
  64. index = Index(tc_config)
  65. queue = Queue(tc_config)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement