Bug 1357867 - Run l10n tasks to completion for OSX cross compile. And report on correct treeherder line. r=dustin draft
authorJustin Wood <Callek@gmail.com>
Wed, 19 Apr 2017 10:40:32 -0400
changeset 565437 355ca99f578f7795c65081f444bc5882754b0c77
parent 565436 fd14b7487c61d3d2684887e16d8289c0eaed6b1e
child 565438 d41b4c05b28425e98b8ac5b95980fb95963a643a
push id54858
push userCallek@gmail.com
push dateWed, 19 Apr 2017 21:19:17 +0000
reviewersdustin
bugs1357867
milestone55.0a1
Bug 1357867 - Run l10n tasks to completion for OSX cross compile. And report on correct treeherder line. r=dustin MozReview-Commit-ID: JZD2xs3WQF6
taskcluster/ci/l10n/kind.yml
taskcluster/ci/nightly-l10n/kind.yml
testing/mozharness/configs/single_locale/tc_macosx64.py
testing/mozharness/scripts/desktop_l10n.py
--- a/taskcluster/ci/l10n/kind.yml
+++ b/taskcluster/ci/l10n/kind.yml
@@ -36,16 +36,17 @@ job-template:
    run-time:
       by-build-platform:
          default: 36000
          android-api-15-l10n: 18000
    tooltool:
       by-build-platform:
          default: public
          android-api-15-l10n: internal
+         macosx64-nightly: internal
    index:
       type: l10n
       product:
          by-build-platform:
             default: firefox
             android-api-15-l10n: mobile
       job-name:
          by-build-platform:
@@ -61,17 +62,17 @@ job-template:
       symbol: tc(L10n)
       tier:
          by-build-platform:
             default: 2
       platform:
          by-build-platform:
             linux64-l10n: linux64/opt
             linux-l10n: linux32/opt
-            macosx64: macosx64/opt
+            macosx64: osx-10-7/opt
             android-api-15-l10n: android-4-0-armv7-api15/opt
    mozharness:
       config:
          by-build-platform:
             linux-l10n:
                - single_locale/tc_linux32.py
             linux64-l10n:
                - single_locale/tc_linux64.py
--- a/taskcluster/ci/nightly-l10n/kind.yml
+++ b/taskcluster/ci/nightly-l10n/kind.yml
@@ -22,17 +22,20 @@ job-template:
    description:
       by-build-platform:
          default: Localization
          android-api-15-nightly: Single Locale Repack
    locales-file:
       by-build-platform:
          default: browser/locales/all-locales
          android-api-15-nightly: mobile/locales/l10n-changesets.json
-   chunks: 6
+   chunks:
+      by-build-platform:
+         macosx64-nightly: 8
+         default: 6
    run-on-projects:
      - mozilla-central
      - mozilla-aurora
      - mozilla-beta
    ignore-locales:
       by-build-platform:
          # OSX has a special locale for japanese
          macosx64.*: [ja]
@@ -40,16 +43,17 @@ job-template:
    run-time:
       by-build-platform:
          default: 36000
          android-api-15-nightly: 18000
    tooltool:
       by-build-platform:
          default: public
          android-api-15-nightly: internal
+         macosx64-nightly: internal
    index:
       type: l10n
       product:
          by-build-platform:
             default: firefox
             android-api-15-nightly: mobile
       job-name:
          by-build-platform:
@@ -67,17 +71,17 @@ job-template:
          by-build-platform:
             linux.*: 1
             android.*: 1
             default: 2
       platform:
          by-build-platform:
             linux64-nightly: linux64/opt
             linux-nightly: linux32/opt
-            macosx64-nightly: macosx64/opt
+            macosx64-nightly: osx-10-7/opt
             android-api-15-nightly: android-4-0-armv7-api15/opt
    env:
       by-build-platform:
          linux.*:   # linux64 and 32 get same treatment here
             EN_US_PACKAGE_NAME: target.tar.bz2
             EN_US_BINARY_URL:
                task-reference: https://queue.taskcluster.net/v1/task/<unsigned-build>/artifacts/public/build
             MAR_TOOLS_URL:
new file mode 100644
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/tc_macosx64.py
@@ -0,0 +1,31 @@
+import os
+
+EN_US_BINARY_URL = "%(en_us_binary_url)s"
+
+config = {
+    "locales_file": "src/browser/locales/all-locales",
+    "tools_repo": "https://hg.mozilla.org/build/tools",
+    "mozconfig": "src/browser/config/mozconfigs/macosx64/l10n-mozconfig",
+    "bootstrap_env": {
+        "NO_MERCURIAL_SETUP_CHECK": "1",
+        "MOZ_OBJDIR": "obj-l10n",
+        "EN_US_BINARY_URL": os.environ.get("EN_US_BINARY_URL", EN_US_BINARY_URL),
+        "LOCALE_MERGEDIR": "%(abs_merge_dir)s/",
+        "MOZ_UPDATE_CHANNEL": "%(update_channel)s",
+        "DIST": "%(abs_objdir)s",
+        "LOCALE_MERGEDIR": "%(abs_merge_dir)s/",
+        "L10NBASEDIR": "../../l10n",
+        "MOZ_MAKE_COMPLETE_MAR": "1",
+        'TOOLTOOL_CACHE': os.environ.get('TOOLTOOL_CACHE'),
+    },
+    "upload_env": {
+        'UPLOAD_HOST': 'localhost',
+        'UPLOAD_PATH': '/home/worker/artifacts/',
+    },
+
+    "tooltool_url": 'http://relengapi/tooltool/',
+    'tooltool_manifest_src': "browser/config/tooltool-manifests/macosx64/cross-releng.manifest",
+    "mozilla_dir": "src/",
+    "simple_name_move": True,
+}
+
--- a/testing/mozharness/scripts/desktop_l10n.py
+++ b/testing/mozharness/scripts/desktop_l10n.py
@@ -813,17 +813,18 @@ class DesktopSingleLocale(LocalesMixin, 
             # Assume an UPLOAD PATH
             upload_target = self.config["upload_env"]["UPLOAD_PATH"]
             target_path = os.path.join(upload_target, locale)
             self.mkdir_p(target_path)
             glob_name = "*.%s.*" % locale
             matches = (glob.glob(os.path.join(upload_target, glob_name)) +
                        glob.glob(os.path.join(upload_target, 'update', glob_name)) +
                        glob.glob(os.path.join(upload_target, '*', 'xpi', glob_name)))
-            targets_exts = ["tar.bz2", "langpack.xpi", "complete.mar", "checksums"]
+            targets_exts = ["tar.bz2", "dmg", "langpack.xpi",
+                            "complete.mar", "checksums"]
             targets = ["target.%s" % ext for ext in targets_exts]
             for f in matches:
                 target_file = next(target_file for target_file in targets
                                     if f.endswith(target_file[6:]))
                 if target_file:
                     # Remove from list of available options for this locale
                     targets.remove(target_file)
                 else: