Bug 1148736 - Mozharness desktop l10n jobs need to free up enough space to run before they run. r=rail
authorMassimo Gervasini <mgervasini@mozilla.com>
Mon, 30 Mar 2015 17:31:08 +0200 (2015-03-30)
changeset 3834 7e4c5e72d47ff3917666069df77f950275142dd5
parent 3833 9965bd9440cd226321929d37aaf537b00ba6843c
child 3836 87da3e48572d0788fcecd17ca84bc1d6a6ecc141
child 3837 6b851eccfb6807aa8d5c2550f3a85f264f98828b
push id3028
push usermgervasini@mozilla.com
push dateMon, 30 Mar 2015 15:31:27 +0000 (2015-03-30)
reviewersrail
bugs1148736
Bug 1148736 - Mozharness desktop l10n jobs need to free up enough space to run before they run. r=rail
configs/single_locale/ash.py
configs/single_locale/mozilla-central.py
scripts/desktop_l10n.py
--- a/configs/single_locale/ash.py
+++ b/configs/single_locale/ash.py
@@ -43,9 +43,12 @@ config = {
         "repo": "https://hg.mozilla.org/build/tools",
         "revision": "default",
         "dest": "tools",
     }, {
         "vcs": "hg",
         "repo": "https://hg.mozilla.org/build/compare-locales",
         "revision": "RELEASE_AUTOMATION"
     }],
+    # purge options
+    'is_automation': True,
+    'purge_minsize': 12,
 }
--- a/configs/single_locale/mozilla-central.py
+++ b/configs/single_locale/mozilla-central.py
@@ -25,9 +25,12 @@ config = {
         "repo": "https://hg.mozilla.org/build/tools",
         "revision": "default",
         "dest": "tools",
     }, {
         "vcs": "hg",
         "repo": "https://hg.mozilla.org/build/compare-locales",
         "revision": "RELEASE_AUTOMATION"
     }],
+    # purge options
+    'is_automation': True,
+    'purge_minsize': 12,
 }
--- a/scripts/desktop_l10n.py
+++ b/scripts/desktop_l10n.py
@@ -17,16 +17,17 @@ import subprocess
 
 # load modules from parent dir
 sys.path.insert(1, os.path.dirname(sys.path[0]))
 
 from mozharness.base.errors import BaseErrorList, MakefileErrorList
 from mozharness.base.script import BaseScript
 from mozharness.base.vcs.vcsbase import VCSMixin
 from mozharness.mozilla.buildbot import BuildbotMixin
+from mozharness.mozilla.purge import PurgeMixin
 from mozharness.mozilla.building.buildbase import MakeUploadOutputParser
 from mozharness.mozilla.l10n.locales import LocalesMixin
 from mozharness.mozilla.mar import MarMixin
 from mozharness.mozilla.mock import MockMixin
 from mozharness.mozilla.release import ReleaseMixin
 from mozharness.mozilla.signing import SigningMixin
 from mozharness.mozilla.updates.balrog import BalrogMixin
 from mozharness.mozilla.mock import ERROR_MSGS
@@ -63,17 +64,17 @@ configuration_tokens = ('branch',
 # are defined at run time and they cannot be enforced in the _pre_config_lock
 # phase
 runtime_config_tokens = ('buildid', 'version', 'locale', 'from_buildid',
                          'abs_objdir', 'abs_merge_dir', 'version', 'to_buildid')
 
 
 # DesktopSingleLocale {{{1
 class DesktopSingleLocale(LocalesMixin, ReleaseMixin, MockMixin, BuildbotMixin,
-                          VCSMixin, SigningMixin, BaseScript,
+                          VCSMixin, SigningMixin, PurgeMixin, BaseScript,
                           BalrogMixin, MarMixin):
     """Manages desktop repacks"""
     config_options = [[
         ['--balrog-config', ],
         {"action": "extend",
          "dest": "config_files",
          "type": "string",
          "help": "Specify the balrog configuration file"}
@@ -511,18 +512,17 @@ class DesktopSingleLocale(LocalesMixin, 
                                    write_to_file=True)
 
     # Actions {{{2
     def clobber(self):
         """clobber"""
         dirs = self.query_abs_dirs()
         clobber_dirs = (dirs['abs_objdir'], dirs['abs_compare_locales_dir'],
                         dirs['abs_upload_dir'])
-        for directory in clobber_dirs:
-            self.rmtree(directory)
+        PurgeMixin.clobber(self, always_clobber_dirs=clobber_dirs)
 
     def pull(self):
         """pulls source code"""
         config = self.config
         dirs = self.query_abs_dirs()
         repos = []
         # replace dictionary for repos
         # we need to interpolate some values:
@@ -1272,17 +1272,16 @@ class DesktopSingleLocale(LocalesMixin, 
 
     def _create_base_dirs(self):
         config = self.config
         dirs = self.query_abs_dirs()
         for make_dir in config.get('make_dirs', []):
             dirname = os.path.join(dirs['abs_objdir'], make_dir)
             self.mkdir_p(dirname)
 
-
     def funsize_props(self):
         """writes funsize info into buildprops.json"""
         # see bug
         funsize_info = {
             'locales': self.query_locales(),
             'branch': self.config['branch'],
             'appName': self.config['appName'],
             'platform': self.config['platform'],