summaryrefslogtreecommitdiffstats
path: root/testing/mozharness/configs/single_locale
diff options
context:
space:
mode:
authorMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
committerMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
commit5f8de423f190bbb79a62f804151bc24824fa32d8 (patch)
tree10027f336435511475e392454359edea8e25895d /testing/mozharness/configs/single_locale
parent49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff)
downloadUXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip
Add m-esr52 at 52.6.0
Diffstat (limited to 'testing/mozharness/configs/single_locale')
-rw-r--r--testing/mozharness/configs/single_locale/alder.py46
-rw-r--r--testing/mozharness/configs/single_locale/ash.py46
-rw-r--r--testing/mozharness/configs/single_locale/ash_android-api-15.py97
-rw-r--r--testing/mozharness/configs/single_locale/dev-mozilla-beta.py37
-rw-r--r--testing/mozharness/configs/single_locale/dev-mozilla-release.py37
-rw-r--r--testing/mozharness/configs/single_locale/linux.py123
l---------testing/mozharness/configs/single_locale/linux32.py1
-rw-r--r--testing/mozharness/configs/single_locale/linux64.py103
-rw-r--r--testing/mozharness/configs/single_locale/macosx64.py72
-rw-r--r--testing/mozharness/configs/single_locale/mozilla-aurora.py29
-rw-r--r--testing/mozharness/configs/single_locale/mozilla-aurora_android-api-15.py97
-rw-r--r--testing/mozharness/configs/single_locale/mozilla-beta.py37
-rw-r--r--testing/mozharness/configs/single_locale/mozilla-central.py29
-rw-r--r--testing/mozharness/configs/single_locale/mozilla-central_android-api-15.py97
-rw-r--r--testing/mozharness/configs/single_locale/mozilla-esr52.py37
-rw-r--r--testing/mozharness/configs/single_locale/mozilla-release.py37
-rw-r--r--testing/mozharness/configs/single_locale/production.py14
-rw-r--r--testing/mozharness/configs/single_locale/release_mozilla-beta_android_api_15.py97
-rw-r--r--testing/mozharness/configs/single_locale/release_mozilla-release_android_api_15.py97
-rw-r--r--testing/mozharness/configs/single_locale/staging.py17
-rw-r--r--testing/mozharness/configs/single_locale/staging_release_mozilla-beta_android_api_15.py97
-rw-r--r--testing/mozharness/configs/single_locale/staging_release_mozilla-release_android_api_15.py97
-rw-r--r--testing/mozharness/configs/single_locale/tc_android-api-15.py18
-rw-r--r--testing/mozharness/configs/single_locale/tc_linux32.py24
-rw-r--r--testing/mozharness/configs/single_locale/tc_linux64.py24
-rw-r--r--testing/mozharness/configs/single_locale/try.py42
-rw-r--r--testing/mozharness/configs/single_locale/try_android-api-15.py97
-rw-r--r--testing/mozharness/configs/single_locale/win32.py77
-rw-r--r--testing/mozharness/configs/single_locale/win64.py77
29 files changed, 1703 insertions, 0 deletions
diff --git a/testing/mozharness/configs/single_locale/alder.py b/testing/mozharness/configs/single_locale/alder.py
new file mode 100644
index 000000000..e2fc0e6a3
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/alder.py
@@ -0,0 +1,46 @@
+# This configuration uses mozilla-central binaries (en-US, localized complete
+# mars) and urls but it generates 'alder' artifacts. With this setup, binaries
+# generated on alder are NOT overwriting mozilla-central files.
+# Using this configuration, on a successful build, artifacts will be uploaded
+# here:
+#
+# * http://dev-stage01.srv.releng.scl3.mozilla.com/pub/mozilla.org/firefox/nightly/latest-alder-l10n/
+# (in staging environment)
+# * https://ftp.mozilla.org/pub/firefox/nightly/latest-alder-l10n/
+# (in production environment)
+#
+# If you really want to have localized alder builds, use the use the following
+# values:
+# * "en_us_binary_url": "http://ftp.mozilla.org/pub/mozilla.org/firefox/tinderbox-builds/alder-%(platform)s/latest/",
+# * "mar_tools_url": "http://ftp.mozilla.org/pub/mozilla.org/firefox/tinderbox-builds/alder-%(platform)s/latest/",
+# * "repo": "https://hg.mozilla.org/projects/alder",
+#
+
+config = {
+ "nightly_build": True,
+ "branch": "alder",
+ "en_us_binary_url": "http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-central/",
+ "update_channel": "nightly",
+
+ # l10n
+ "hg_l10n_base": "https://hg.mozilla.org/l10n-central",
+
+ # mar
+ "mar_tools_url": "http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-central/mar-tools/%(platform)s",
+
+ # repositories
+ "mozilla_dir": "alder",
+ "repos": [{
+ "vcs": "hg",
+ "repo": "https://hg.mozilla.org/build/tools",
+ "branch": "default",
+ "dest": "tools",
+ }, {
+ "vcs": "hg",
+ "repo": "https://hg.mozilla.org/mozilla-central",
+ "branch": "default",
+ "dest": "alder",
+ }],
+ # purge options
+ 'is_automation': True,
+}
diff --git a/testing/mozharness/configs/single_locale/ash.py b/testing/mozharness/configs/single_locale/ash.py
new file mode 100644
index 000000000..3036d4fba
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/ash.py
@@ -0,0 +1,46 @@
+# This configuration uses mozilla-central binaries (en-US, localized complete
+# mars) and urls but it generates 'ash' artifacts. With this setup, binaries
+# generated on ash are NOT overwriting mozilla-central files.
+# Using this configuration, on a successful build, artifacts will be uploaded
+# here:
+#
+# * http://dev-stage01.srv.releng.scl3.mozilla.com/pub/mozilla.org/firefox/nightly/latest-ash-l10n/
+# (in staging environment)
+# * https://ftp.mozilla.org/pub/firefox/nightly/latest-ash-l10n/
+# (in production environment)
+#
+# If you really want to have localized ash builds, use the use the following
+# values:
+# * "en_us_binary_url": "http://ftp.mozilla.org/pub/mozilla.org/firefox/tinderbox-builds/ash-%(platform)s/latest/",
+# * "mar_tools_url": "http://ftp.mozilla.org/pub/mozilla.org/firefox/tinderbox-builds/ash-%(platform)s/latest/",
+# * "repo": "https://hg.mozilla.org/projects/ash",
+#
+
+config = {
+ "nightly_build": True,
+ "branch": "ash",
+ "en_us_binary_url": "http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-central/",
+ "update_channel": "nightly",
+
+ # l10n
+ "hg_l10n_base": "https://hg.mozilla.org/l10n-central",
+
+ # mar
+ "mar_tools_url": "http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-central/mar-tools/%(platform)s",
+
+ # repositories
+ "mozilla_dir": "ash",
+ "repos": [{
+ "vcs": "hg",
+ "repo": "https://hg.mozilla.org/build/tools",
+ "branch": "default",
+ "dest": "tools",
+ }, {
+ "vcs": "hg",
+ "repo": "https://hg.mozilla.org/mozilla-central",
+ "branch": "default",
+ "dest": "ash",
+ }],
+ # purge options
+ 'is_automation': True,
+}
diff --git a/testing/mozharness/configs/single_locale/ash_android-api-15.py b/testing/mozharness/configs/single_locale/ash_android-api-15.py
new file mode 100644
index 000000000..d3cae75b7
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/ash_android-api-15.py
@@ -0,0 +1,97 @@
+BRANCH = "ash"
+MOZ_UPDATE_CHANNEL = "nightly"
+MOZILLA_DIR = BRANCH
+OBJDIR = "obj-l10n"
+EN_US_BINARY_URL = "http://archive.mozilla.org/pub/mobile/nightly/latest-%s-android-api-15/en-US" % BRANCH
+HG_SHARE_BASE_DIR = "/builds/hg-shared"
+
+config = {
+ "branch": BRANCH,
+ "log_name": "single_locale",
+ "objdir": OBJDIR,
+ "is_automation": True,
+ "buildbot_json_path": "buildprops.json",
+ "force_clobber": True,
+ "clobberer_url": "https://api.pub.build.mozilla.org/clobberer/lastclobber",
+ "locales_file": "%s/mobile/android/locales/all-locales" % MOZILLA_DIR,
+ "locales_dir": "mobile/android/locales",
+ "ignore_locales": ["en-US"],
+ "nightly_build": True,
+ 'balrog_credentials_file': 'oauth.txt',
+ "tools_repo": "https://hg.mozilla.org/build/tools",
+ "tooltool_config": {
+ "manifest": "mobile/android/config/tooltool-manifests/android/releng.manifest",
+ "output_dir": "%(abs_work_dir)s/" + MOZILLA_DIR,
+ },
+ "exes": {
+ 'tooltool.py': '/builds/tooltool.py',
+ },
+ "repos": [{
+ "repo": "https://hg.mozilla.org/projects/ash",
+ "branch": "default",
+ "dest": MOZILLA_DIR,
+ }, {
+ "repo": "https://hg.mozilla.org/build/buildbot-configs",
+ "branch": "default",
+ "dest": "buildbot-configs"
+ }, {
+ "repo": "https://hg.mozilla.org/build/tools",
+ "branch": "default",
+ "dest": "tools"
+ }],
+ "hg_l10n_base": "https://hg.mozilla.org/l10n-central",
+ "hg_l10n_tag": "default",
+ 'vcs_share_base': HG_SHARE_BASE_DIR,
+
+ "l10n_dir": "l10n-central",
+ "repack_env": {
+ # so ugly, bug 951238
+ "LD_LIBRARY_PATH": "/lib:/tools/gcc-4.7.2-0moz1/lib:/tools/gcc-4.7.2-0moz1/lib64",
+ "MOZ_OBJDIR": OBJDIR,
+ "EN_US_BINARY_URL": EN_US_BINARY_URL,
+ "LOCALE_MERGEDIR": "%(abs_merge_dir)s/",
+ "MOZ_UPDATE_CHANNEL": MOZ_UPDATE_CHANNEL,
+ },
+ "upload_branch": "%s-android-api-15" % BRANCH,
+ "ssh_key_dir": "~/.ssh",
+ "merge_locales": True,
+ "mozilla_dir": MOZILLA_DIR,
+ "mozconfig": "%s/mobile/android/config/mozconfigs/android-api-15/l10n-nightly" % MOZILLA_DIR,
+ "signature_verification_script": "tools/release/signing/verify-android-signature.sh",
+ "stage_product": "mobile",
+ "platform": "android",
+ "build_type": "api-15-opt",
+
+ # Balrog
+ "build_target": "Android_arm-eabi-gcc3",
+
+ # Mock
+ "mock_target": "mozilla-centos6-x86_64-android",
+ "mock_packages": ['autoconf213', 'python', 'zip', 'mozilla-python27-mercurial', 'git', 'ccache',
+ 'glibc-static', 'libstdc++-static', 'perl-Test-Simple', 'perl-Config-General',
+ 'gtk2-devel', 'libnotify-devel', 'yasm',
+ 'alsa-lib-devel', 'libcurl-devel',
+ 'wireless-tools-devel', 'libX11-devel',
+ 'libXt-devel', 'mesa-libGL-devel',
+ 'gnome-vfs2-devel', 'GConf2-devel', 'wget',
+ 'mpfr', # required for system compiler
+ 'xorg-x11-font*', # fonts required for PGO
+ 'imake', # required for makedepend!?!
+ 'gcc45_0moz3', 'gcc454_0moz1', 'gcc472_0moz1', 'gcc473_0moz1', 'yasm', 'ccache', # <-- from releng repo
+ 'valgrind', 'dbus-x11',
+ 'pulseaudio-libs-devel',
+ 'gstreamer-devel', 'gstreamer-plugins-base-devel',
+ 'freetype-2.3.11-6.el6_1.8.x86_64',
+ 'freetype-devel-2.3.11-6.el6_1.8.x86_64',
+ 'java-1.7.0-openjdk-devel',
+ 'openssh-clients',
+ 'zlib-devel-1.2.3-27.el6.i686',
+ ],
+ "mock_files": [
+ ("/home/cltbld/.ssh", "/home/mock_mozilla/.ssh"),
+ ('/home/cltbld/.hgrc', '/builds/.hgrc'),
+ ('/builds/relengapi.tok', '/builds/relengapi.tok'),
+ ('/tools/tooltool.py', '/builds/tooltool.py'),
+ ('/usr/local/lib/hgext', '/usr/local/lib/hgext'),
+ ],
+}
diff --git a/testing/mozharness/configs/single_locale/dev-mozilla-beta.py b/testing/mozharness/configs/single_locale/dev-mozilla-beta.py
new file mode 100644
index 000000000..ef96b9b7c
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/dev-mozilla-beta.py
@@ -0,0 +1,37 @@
+config = {
+ "branch": "date",
+ "nightly_build": True,
+ "update_channel": "beta-dev",
+
+ # l10n
+ "hg_l10n_base": "https://hg.mozilla.org/releases/l10n/mozilla-beta",
+
+ # repositories
+ # staging beta dev releases use date repo for now
+ "mozilla_dir": "date",
+ "repos": [{
+ "vcs": "hg",
+ "repo": "https://hg.mozilla.org/build/tools",
+ "branch": "default",
+ "dest": "tools",
+ }, {
+ "vcs": "hg",
+ "repo": "https://hg.mozilla.org/projects/date",
+ "branch": "%(revision)s",
+ "dest": "date",
+ "clone_upstream_url": "https://hg.mozilla.org/mozilla-unified",
+ }],
+ # purge options
+ 'is_automation': True,
+ 'purge_minsize': 12,
+ 'default_actions': [
+ "clobber",
+ "pull",
+ "clone-locales",
+ "list-locales",
+ "setup",
+ "repack",
+ "taskcluster-upload",
+ "summary",
+ ],
+}
diff --git a/testing/mozharness/configs/single_locale/dev-mozilla-release.py b/testing/mozharness/configs/single_locale/dev-mozilla-release.py
new file mode 100644
index 000000000..09048310b
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/dev-mozilla-release.py
@@ -0,0 +1,37 @@
+config = {
+ "branch": "jamun",
+ "nightly_build": True,
+ "update_channel": "release-dev",
+
+ # l10n
+ "hg_l10n_base": "https://hg.mozilla.org/releases/l10n/mozilla-release",
+
+ # repositories
+ # staging release uses jamun
+ "mozilla_dir": "jamun",
+ "repos": [{
+ "vcs": "hg",
+ "repo": "https://hg.mozilla.org/build/tools",
+ "branch": "default",
+ "dest": "tools",
+ }, {
+ "vcs": "hg",
+ "repo": "https://hg.mozilla.org/projects/jamun",
+ "branch": "%(revision)s",
+ "dest": "jamun",
+ "clone_upstream_url": "https://hg.mozilla.org/mozilla-unified",
+ }],
+ # purge options
+ 'purge_minsize': 12,
+ 'is_automation': True,
+ 'default_actions': [
+ "clobber",
+ "pull",
+ "clone-locales",
+ "list-locales",
+ "setup",
+ "repack",
+ "taskcluster-upload",
+ "summary",
+ ],
+}
diff --git a/testing/mozharness/configs/single_locale/linux.py b/testing/mozharness/configs/single_locale/linux.py
new file mode 100644
index 000000000..3aa2c0349
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/linux.py
@@ -0,0 +1,123 @@
+import os
+
+config = {
+ "platform": "linux",
+ "stage_product": "firefox",
+ "update_platform": "Linux_x86-gcc3",
+ "mozconfig": "%(branch)s/browser/config/mozconfigs/linux32/l10n-mozconfig",
+ "bootstrap_env": {
+ "MOZ_OBJDIR": "obj-l10n",
+ "EN_US_BINARY_URL": "%(en_us_binary_url)s",
+ "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': '/builds/tooltool_cache',
+ 'TOOLTOOL_HOME': '/builds',
+ },
+ "ssh_key_dir": "/home/mock_mozilla/.ssh",
+ "log_name": "single_locale",
+ "objdir": "obj-l10n",
+ "js_src_dir": "js/src",
+ "vcs_share_base": "/builds/hg-shared",
+
+ # tooltool
+ 'tooltool_url': 'https://api.pub.build.mozilla.org/tooltool/',
+ 'tooltool_script': ["/builds/tooltool.py"],
+ 'tooltool_bootstrap': "setup.sh",
+ 'tooltool_manifest_src': 'browser/config/tooltool-manifests/linux32/releng.manifest',
+ # balrog credential file:
+ 'balrog_credentials_file': 'oauth.txt',
+
+ # l10n
+ "ignore_locales": ["en-US", "ja-JP-mac"],
+ "l10n_dir": "l10n",
+ "locales_file": "%(branch)s/browser/locales/all-locales",
+ "locales_dir": "browser/locales",
+ "hg_l10n_tag": "default",
+ "merge_locales": True,
+
+ # MAR
+ "previous_mar_dir": "dist/previous",
+ "current_mar_dir": "dist/current",
+ "update_mar_dir": "dist/update", # sure?
+ "previous_mar_filename": "previous.mar",
+ "current_work_mar_dir": "current.work",
+ "package_base_dir": "dist/l10n-stage",
+ "application_ini": "application.ini",
+ "buildid_section": 'App',
+ "buildid_option": "BuildID",
+ "unpack_script": "tools/update-packaging/unwrap_full_update.pl",
+ "incremental_update_script": "tools/update-packaging/make_incremental_update.sh",
+ "balrog_release_pusher_script": "scripts/updates/balrog-release-pusher.py",
+ "update_packaging_dir": "tools/update-packaging",
+ "local_mar_tool_dir": "dist/host/bin",
+ "mar": "mar",
+ "mbsdiff": "mbsdiff",
+ "current_mar_filename": "firefox-%(version)s.%(locale)s.linux-i686.complete.mar",
+ "complete_mar": "firefox-%(version)s.en-US.linux-i686.complete.mar",
+ "localized_mar": "firefox-%(version)s.%(locale)s.linux-i686.complete.mar",
+ "partial_mar": "firefox-%(version)s.%(locale)s.linux-i686.partial.%(from_buildid)s-%(to_buildid)s.mar",
+ 'installer_file': "firefox-%(version)s.en-US.linux-i686.tar.bz2",
+
+ # Mock
+ 'mock_target': 'mozilla-centos6-x86_64',
+ 'mock_packages': [
+ 'autoconf213', 'python', 'mozilla-python27', 'zip', 'mozilla-python27-mercurial',
+ 'git', 'ccache', 'perl-Test-Simple', 'perl-Config-General',
+ 'yasm', 'wget',
+ 'mpfr', # required for system compiler
+ 'xorg-x11-font*', # fonts required for PGO
+ 'imake', # required for makedepend!?!
+ ### <-- from releng repo
+ 'gcc45_0moz3', 'gcc454_0moz1', 'gcc472_0moz1', 'gcc473_0moz1',
+ 'yasm', 'ccache',
+ ###
+ 'valgrind',
+ ######## 32 bit specific ###########
+ 'glibc-static.i686', 'libstdc++-static.i686',
+ 'gtk2-devel.i686', 'libnotify-devel.i686',
+ 'alsa-lib-devel.i686', 'libcurl-devel.i686',
+ 'wireless-tools-devel.i686', 'libX11-devel.i686',
+ 'libXt-devel.i686', 'mesa-libGL-devel.i686',
+ 'gnome-vfs2-devel.i686', 'GConf2-devel.i686',
+ 'pulseaudio-libs-devel.i686',
+ 'gstreamer-devel.i686', 'gstreamer-plugins-base-devel.i686',
+ # Packages already installed in the mock environment, as x86_64
+ # packages.
+ 'glibc-devel.i686', 'libgcc.i686', 'libstdc++-devel.i686',
+ # yum likes to install .x86_64 -devel packages that satisfy .i686
+ # -devel packages dependencies. So manually install the dependencies
+ # of the above packages.
+ 'ORBit2-devel.i686', 'atk-devel.i686', 'cairo-devel.i686',
+ 'check-devel.i686', 'dbus-devel.i686', 'dbus-glib-devel.i686',
+ 'fontconfig-devel.i686', 'glib2-devel.i686',
+ 'hal-devel.i686', 'libICE-devel.i686', 'libIDL-devel.i686',
+ 'libSM-devel.i686', 'libXau-devel.i686', 'libXcomposite-devel.i686',
+ 'libXcursor-devel.i686', 'libXdamage-devel.i686',
+ 'libXdmcp-devel.i686', 'libXext-devel.i686', 'libXfixes-devel.i686',
+ 'libXft-devel.i686', 'libXi-devel.i686', 'libXinerama-devel.i686',
+ 'libXrandr-devel.i686', 'libXrender-devel.i686',
+ 'libXxf86vm-devel.i686', 'libdrm-devel.i686', 'libidn-devel.i686',
+ 'libpng-devel.i686', 'libxcb-devel.i686', 'libxml2-devel.i686',
+ 'pango-devel.i686', 'perl-devel.i686', 'pixman-devel.i686',
+ 'zlib-devel.i686',
+ # Freetype packages need to be installed be version, because a newer
+ # version is available, but we don't want it for Firefox builds.
+ 'freetype-2.3.11-6.el6_1.8.i686',
+ 'freetype-devel-2.3.11-6.el6_1.8.i686',
+ 'freetype-2.3.11-6.el6_1.8.x86_64',
+ ######## 32 bit specific ###########
+ ],
+ 'mock_files': [
+ ('/home/cltbld/.ssh', '/home/mock_mozilla/.ssh'),
+ ('/home/cltbld/.hgrc', '/builds/.hgrc'),
+ ('/home/cltbld/.boto', '/builds/.boto'),
+ ('/builds/gapi.data', '/builds/gapi.data'),
+ ('/builds/relengapi.tok', '/builds/relengapi.tok'),
+ ('/tools/tooltool.py', '/builds/tooltool.py'),
+ ('/usr/local/lib/hgext', '/usr/local/lib/hgext'),
+ ],
+}
diff --git a/testing/mozharness/configs/single_locale/linux32.py b/testing/mozharness/configs/single_locale/linux32.py
new file mode 120000
index 000000000..e9866bbbf
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/linux32.py
@@ -0,0 +1 @@
+linux.py \ No newline at end of file
diff --git a/testing/mozharness/configs/single_locale/linux64.py b/testing/mozharness/configs/single_locale/linux64.py
new file mode 100644
index 000000000..8a511e56d
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/linux64.py
@@ -0,0 +1,103 @@
+import os
+
+config = {
+ "platform": "linux64",
+ "stage_product": "firefox",
+ "update_platform": "Linux_x86_64-gcc3",
+ "mozconfig": "%(branch)s/browser/config/mozconfigs/linux64/l10n-mozconfig",
+ "bootstrap_env": {
+ "MOZ_OBJDIR": "obj-l10n",
+ "EN_US_BINARY_URL": "%(en_us_binary_url)s",
+ "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': '/builds/tooltool_cache',
+ 'TOOLTOOL_HOME': '/builds',
+ },
+ "ssh_key_dir": "/home/mock_mozilla/.ssh",
+ "log_name": "single_locale",
+ "objdir": "obj-l10n",
+ "js_src_dir": "js/src",
+ "vcs_share_base": "/builds/hg-shared",
+
+ # tooltool
+ 'tooltool_url': 'https://api.pub.build.mozilla.org/tooltool/',
+ 'tooltool_script': ["/builds/tooltool.py"],
+ 'tooltool_bootstrap': "setup.sh",
+ 'tooltool_manifest_src': 'browser/config/tooltool-manifests/linux64/releng.manifest',
+ # balrog credential file:
+ 'balrog_credentials_file': 'oauth.txt',
+
+ # l10n
+ "ignore_locales": ["en-US", "ja-JP-mac"],
+ "l10n_dir": "l10n",
+ "locales_file": "%(branch)s/browser/locales/all-locales",
+ "locales_dir": "browser/locales",
+ "hg_l10n_tag": "default",
+ "merge_locales": True,
+
+ # MAR
+ "previous_mar_dir": "dist/previous",
+ "current_mar_dir": "dist/current",
+ "update_mar_dir": "dist/update", # sure?
+ "previous_mar_filename": "previous.mar",
+ "current_work_mar_dir": "current.work",
+ "package_base_dir": "dist/l10n-stage",
+ "application_ini": "application.ini",
+ "buildid_section": 'App',
+ "buildid_option": "BuildID",
+ "unpack_script": "tools/update-packaging/unwrap_full_update.pl",
+ "incremental_update_script": "tools/update-packaging/make_incremental_update.sh",
+ "balrog_release_pusher_script": "scripts/updates/balrog-release-pusher.py",
+ "update_packaging_dir": "tools/update-packaging",
+ "local_mar_tool_dir": "dist/host/bin",
+ "mar": "mar",
+ "mbsdiff": "mbsdiff",
+ "current_mar_filename": "firefox-%(version)s.%(locale)s.linux-x86_64.complete.mar",
+ "complete_mar": "firefox-%(version)s.en-US.linux-x86_64.complete.mar",
+ "localized_mar": "firefox-%(version)s.%(locale)s.linux-x86_64.complete.mar",
+ "partial_mar": "firefox-%(version)s.%(locale)s.linux-x86_64.partial.%(from_buildid)s-%(to_buildid)s.mar",
+ "installer_file": "firefox-%(version)s.en-US.linux-x86_64.tar.bz2",
+
+ # Mock
+ 'mock_target': 'mozilla-centos6-x86_64',
+
+ 'mock_packages': [
+ 'autoconf213', 'python', 'mozilla-python27', 'zip', 'mozilla-python27-mercurial',
+ 'git', 'ccache', 'perl-Test-Simple', 'perl-Config-General',
+ 'yasm', 'wget',
+ 'mpfr', # required for system compiler
+ 'xorg-x11-font*', # fonts required for PGO
+ 'imake', # required for makedepend!?!
+ ### <-- from releng repo
+ 'gcc45_0moz3', 'gcc454_0moz1', 'gcc472_0moz1', 'gcc473_0moz1',
+ 'yasm', 'ccache',
+ ###
+ 'valgrind', 'dbus-x11',
+ ######## 64 bit specific ###########
+ 'glibc-static', 'libstdc++-static',
+ 'gtk2-devel', 'libnotify-devel',
+ 'alsa-lib-devel', 'libcurl-devel', 'wireless-tools-devel',
+ 'libX11-devel', 'libXt-devel', 'mesa-libGL-devel', 'gnome-vfs2-devel',
+ 'GConf2-devel',
+ ### from releng repo
+ 'gcc45_0moz3', 'gcc454_0moz1', 'gcc472_0moz1', 'gcc473_0moz1',
+ 'yasm', 'ccache',
+ ###
+ 'pulseaudio-libs-devel', 'gstreamer-devel',
+ 'gstreamer-plugins-base-devel', 'freetype-2.3.11-6.el6_1.8.x86_64',
+ 'freetype-devel-2.3.11-6.el6_1.8.x86_64'
+ ],
+ 'mock_files': [
+ ('/home/cltbld/.ssh', '/home/mock_mozilla/.ssh'),
+ ('/home/cltbld/.hgrc', '/builds/.hgrc'),
+ ('/home/cltbld/.boto', '/builds/.boto'),
+ ('/builds/gapi.data', '/builds/gapi.data'),
+ ('/builds/relengapi.tok', '/builds/relengapi.tok'),
+ ('/tools/tooltool.py', '/builds/tooltool.py'),
+ ('/usr/local/lib/hgext', '/usr/local/lib/hgext'),
+ ],
+}
diff --git a/testing/mozharness/configs/single_locale/macosx64.py b/testing/mozharness/configs/single_locale/macosx64.py
new file mode 100644
index 000000000..c2ee47674
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/macosx64.py
@@ -0,0 +1,72 @@
+import os
+
+config = {
+ # mozconfig file to use, it depends on branch and platform names
+ "platform": "macosx64",
+ "stage_product": "firefox",
+ "update_platform": "Darwin_x86_64-gcc3",
+ "mozconfig": "%(branch)s/browser/config/mozconfigs/macosx-universal/l10n-mozconfig",
+ "bootstrap_env": {
+ "SHELL": '/bin/bash',
+ "MOZ_OBJDIR": "obj-l10n",
+ "EN_US_BINARY_URL": "%(en_us_binary_url)s",
+ "MOZ_UPDATE_CHANNEL": "%(update_channel)s",
+ "MOZ_PKG_PLATFORM": "mac",
+ # "IS_NIGHTLY": "yes",
+ "DIST": "%(abs_objdir)s",
+ "LOCALE_MERGEDIR": "%(abs_merge_dir)s/",
+ "L10NBASEDIR": "../../l10n",
+ "MOZ_MAKE_COMPLETE_MAR": "1",
+ "LOCALE_MERGEDIR": "%(abs_merge_dir)s/",
+ 'TOOLTOOL_CACHE': '/builds/tooltool_cache',
+ 'TOOLTOOL_HOME': '/builds',
+ },
+ "ssh_key_dir": "~/.ssh",
+ "log_name": "single_locale",
+ "objdir": "obj-l10n",
+ "js_src_dir": "js/src",
+ "vcs_share_base": "/builds/hg-shared",
+
+ "upload_env_extra": {
+ "MOZ_PKG_PLATFORM": "mac",
+ },
+
+ # tooltool
+ 'tooltool_url': 'https://api.pub.build.mozilla.org/tooltool/',
+ 'tooltool_script': ["/builds/tooltool.py"],
+ 'tooltool_bootstrap': "setup.sh",
+ 'tooltool_manifest_src': 'browser/config/tooltool-manifests/macosx64/releng.manifest',
+ # balrog credential file:
+ 'balrog_credentials_file': 'oauth.txt',
+
+ # l10n
+ "ignore_locales": ["en-US", "ja"],
+ "l10n_dir": "l10n",
+ "locales_file": "%(branch)s/browser/locales/all-locales",
+ "locales_dir": "browser/locales",
+ "hg_l10n_tag": "default",
+ "merge_locales": True,
+
+ # MAR
+ "previous_mar_dir": "dist/previous",
+ "current_mar_dir": "dist/current",
+ "update_mar_dir": "dist/update", # sure?
+ "previous_mar_filename": "previous.mar",
+ "current_work_mar_dir": "current.work",
+ "package_base_dir": "dist/l10n-stage",
+ "application_ini": "Contents/Resources/application.ini",
+ "buildid_section": 'App',
+ "buildid_option": "BuildID",
+ "unpack_script": "tools/update-packaging/unwrap_full_update.pl",
+ "incremental_update_script": "tools/update-packaging/make_incremental_update.sh",
+ "balrog_release_pusher_script": "scripts/updates/balrog-release-pusher.py",
+ "update_packaging_dir": "tools/update-packaging",
+ "local_mar_tool_dir": "dist/host/bin",
+ "mar": "mar",
+ "mbsdiff": "mbsdiff",
+ "current_mar_filename": "firefox-%(version)s.%(locale)s.mac.complete.mar",
+ "complete_mar": "firefox-%(version)s.en-US.mac.complete.mar",
+ "localized_mar": "firefox-%(version)s.%(locale)s.mac.complete.mar",
+ "partial_mar": "firefox-%(version)s.%(locale)s.mac.partial.%(from_buildid)s-%(to_buildid)s.mar",
+ 'installer_file': "firefox-%(version)s.en-US.mac.dmg",
+}
diff --git a/testing/mozharness/configs/single_locale/mozilla-aurora.py b/testing/mozharness/configs/single_locale/mozilla-aurora.py
new file mode 100644
index 000000000..1ce85f726
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/mozilla-aurora.py
@@ -0,0 +1,29 @@
+config = {
+ "nightly_build": True,
+ "branch": "mozilla-aurora",
+ "en_us_binary_url": "http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-aurora/",
+ "update_channel": "aurora",
+
+ # l10n
+ "hg_l10n_base": "https://hg.mozilla.org/releases/l10n/mozilla-aurora",
+
+ # mar
+ "mar_tools_url": "http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-aurora/mar-tools/%(platform)s",
+
+ # repositories
+ "mozilla_dir": "mozilla-aurora",
+ "repos": [{
+ "vcs": "hg",
+ "repo": "https://hg.mozilla.org/build/tools",
+ "branch": "default",
+ "dest": "tools",
+ }, {
+ "vcs": "hg",
+ "repo": "https://hg.mozilla.org/releases/mozilla-aurora",
+ "branch": "default",
+ "dest": "mozilla-aurora",
+ "clone_upstream_url": "https://hg.mozilla.org/mozilla-unified",
+ }],
+ # purge options
+ 'is_automation': True,
+}
diff --git a/testing/mozharness/configs/single_locale/mozilla-aurora_android-api-15.py b/testing/mozharness/configs/single_locale/mozilla-aurora_android-api-15.py
new file mode 100644
index 000000000..103922a78
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/mozilla-aurora_android-api-15.py
@@ -0,0 +1,97 @@
+BRANCH = "mozilla-aurora"
+MOZ_UPDATE_CHANNEL = "aurora"
+MOZILLA_DIR = BRANCH
+OBJDIR = "obj-l10n"
+EN_US_BINARY_URL = "http://archive.mozilla.org/pub/mobile/nightly/latest-%s-android-api-15/en-US" % BRANCH
+HG_SHARE_BASE_DIR = "/builds/hg-shared"
+
+config = {
+ "branch": BRANCH,
+ "log_name": "single_locale",
+ "objdir": OBJDIR,
+ "is_automation": True,
+ "buildbot_json_path": "buildprops.json",
+ "force_clobber": True,
+ "clobberer_url": "https://api.pub.build.mozilla.org/clobberer/lastclobber",
+ "locales_file": "%s/mobile/android/locales/all-locales" % MOZILLA_DIR,
+ "locales_dir": "mobile/android/locales",
+ "ignore_locales": ["en-US"],
+ "nightly_build": True,
+ 'balrog_credentials_file': 'oauth.txt',
+ "tools_repo": "https://hg.mozilla.org/build/tools",
+ "tooltool_config": {
+ "manifest": "mobile/android/config/tooltool-manifests/android/releng.manifest",
+ "output_dir": "%(abs_work_dir)s/" + MOZILLA_DIR,
+ },
+ "exes": {
+ 'tooltool.py': '/builds/tooltool.py',
+ },
+ "repos": [{
+ "repo": "https://hg.mozilla.org/releases/mozilla-aurora",
+ "branch": "default",
+ "dest": MOZILLA_DIR,
+ }, {
+ "repo": "https://hg.mozilla.org/build/buildbot-configs",
+ "branch": "default",
+ "dest": "buildbot-configs"
+ }, {
+ "repo": "https://hg.mozilla.org/build/tools",
+ "branch": "default",
+ "dest": "tools"
+ }],
+ "hg_l10n_base": "https://hg.mozilla.org/releases/l10n/%s" % BRANCH,
+ "hg_l10n_tag": "default",
+ 'vcs_share_base': HG_SHARE_BASE_DIR,
+
+ "l10n_dir": MOZILLA_DIR,
+ "repack_env": {
+ # so ugly, bug 951238
+ "LD_LIBRARY_PATH": "/lib:/tools/gcc-4.7.2-0moz1/lib:/tools/gcc-4.7.2-0moz1/lib64",
+ "MOZ_OBJDIR": OBJDIR,
+ "EN_US_BINARY_URL": EN_US_BINARY_URL,
+ "LOCALE_MERGEDIR": "%(abs_merge_dir)s/",
+ "MOZ_UPDATE_CHANNEL": MOZ_UPDATE_CHANNEL,
+ },
+ "upload_branch": "%s-android-api-15" % BRANCH,
+ "ssh_key_dir": "~/.ssh",
+ "merge_locales": True,
+ "mozilla_dir": MOZILLA_DIR,
+ "mozconfig": "%s/mobile/android/config/mozconfigs/android-api-15/l10n-nightly" % MOZILLA_DIR,
+ "signature_verification_script": "tools/release/signing/verify-android-signature.sh",
+ "stage_product": "mobile",
+ "platform": "android",
+ "build_type": "api-15-opt",
+
+ # Balrog
+ "build_target": "Android_arm-eabi-gcc3",
+
+ # Mock
+ "mock_target": "mozilla-centos6-x86_64-android",
+ "mock_packages": ['autoconf213', 'python', 'zip', 'mozilla-python27-mercurial', 'git', 'ccache',
+ 'glibc-static', 'libstdc++-static', 'perl-Test-Simple', 'perl-Config-General',
+ 'gtk2-devel', 'libnotify-devel', 'yasm',
+ 'alsa-lib-devel', 'libcurl-devel',
+ 'wireless-tools-devel', 'libX11-devel',
+ 'libXt-devel', 'mesa-libGL-devel',
+ 'gnome-vfs2-devel', 'GConf2-devel', 'wget',
+ 'mpfr', # required for system compiler
+ 'xorg-x11-font*', # fonts required for PGO
+ 'imake', # required for makedepend!?!
+ 'gcc45_0moz3', 'gcc454_0moz1', 'gcc472_0moz1', 'gcc473_0moz1', 'yasm', 'ccache', # <-- from releng repo
+ 'valgrind', 'dbus-x11',
+ 'pulseaudio-libs-devel',
+ 'gstreamer-devel', 'gstreamer-plugins-base-devel',
+ 'freetype-2.3.11-6.el6_1.8.x86_64',
+ 'freetype-devel-2.3.11-6.el6_1.8.x86_64',
+ 'java-1.7.0-openjdk-devel',
+ 'openssh-clients',
+ 'zlib-devel-1.2.3-27.el6.i686',
+ ],
+ "mock_files": [
+ ("/home/cltbld/.ssh", "/home/mock_mozilla/.ssh"),
+ ('/home/cltbld/.hgrc', '/builds/.hgrc'),
+ ('/builds/relengapi.tok', '/builds/relengapi.tok'),
+ ('/tools/tooltool.py', '/builds/tooltool.py'),
+ ('/usr/local/lib/hgext', '/usr/local/lib/hgext'),
+ ],
+}
diff --git a/testing/mozharness/configs/single_locale/mozilla-beta.py b/testing/mozharness/configs/single_locale/mozilla-beta.py
new file mode 100644
index 000000000..90ff23027
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/mozilla-beta.py
@@ -0,0 +1,37 @@
+config = {
+ "nightly_build": True,
+ "branch": "mozilla-beta",
+ "en_us_binary_url": "http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-beta/",
+ "update_channel": "beta",
+
+ # l10n
+ "hg_l10n_base": "https://hg.mozilla.org/releases/l10n/mozilla-beta",
+
+ # repositories
+ "mozilla_dir": "mozilla-beta",
+ "repos": [{
+ "vcs": "hg",
+ "repo": "https://hg.mozilla.org/build/tools",
+ "branch": "default",
+ "dest": "tools",
+ }, {
+ "vcs": "hg",
+ "repo": "https://hg.mozilla.org/releases/mozilla-beta",
+ "revision": "%(revision)s",
+ "dest": "mozilla-beta",
+ "clone_upstream_url": "https://hg.mozilla.org/mozilla-unified",
+ }],
+ # purge options
+ 'purge_minsize': 12,
+ 'is_automation': True,
+ 'default_actions': [
+ "clobber",
+ "pull",
+ "clone-locales",
+ "list-locales",
+ "setup",
+ "repack",
+ "taskcluster-upload",
+ "summary",
+ ],
+}
diff --git a/testing/mozharness/configs/single_locale/mozilla-central.py b/testing/mozharness/configs/single_locale/mozilla-central.py
new file mode 100644
index 000000000..c2bf974d6
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/mozilla-central.py
@@ -0,0 +1,29 @@
+config = {
+ "nightly_build": True,
+ "branch": "mozilla-central",
+ "en_us_binary_url": "http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-central/",
+ "update_channel": "nightly",
+
+ # l10n
+ "hg_l10n_base": "https://hg.mozilla.org/l10n-central",
+
+ # mar
+ "mar_tools_url": "http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-central/mar-tools/%(platform)s",
+
+ # repositories
+ "mozilla_dir": "mozilla-central",
+ "repos": [{
+ "vcs": "hg",
+ "repo": "https://hg.mozilla.org/build/tools",
+ "branch": "default",
+ "dest": "tools",
+ }, {
+ "vcs": "hg",
+ "repo": "https://hg.mozilla.org/mozilla-central",
+ "revision": "%(revision)s",
+ "dest": "mozilla-central",
+ "clone_upstream_url": "https://hg.mozilla.org/mozilla-unified",
+ }],
+ # purge options
+ 'is_automation': True,
+}
diff --git a/testing/mozharness/configs/single_locale/mozilla-central_android-api-15.py b/testing/mozharness/configs/single_locale/mozilla-central_android-api-15.py
new file mode 100644
index 000000000..d2b6623c3
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/mozilla-central_android-api-15.py
@@ -0,0 +1,97 @@
+BRANCH = "mozilla-central"
+MOZ_UPDATE_CHANNEL = "nightly"
+MOZILLA_DIR = BRANCH
+OBJDIR = "obj-l10n"
+EN_US_BINARY_URL = "http://archive.mozilla.org/pub/mobile/nightly/latest-%s-android-api-15/en-US" % BRANCH
+HG_SHARE_BASE_DIR = "/builds/hg-shared"
+
+config = {
+ "branch": BRANCH,
+ "log_name": "single_locale",
+ "objdir": OBJDIR,
+ "is_automation": True,
+ "buildbot_json_path": "buildprops.json",
+ "force_clobber": True,
+ "clobberer_url": "https://api.pub.build.mozilla.org/clobberer/lastclobber",
+ "locales_file": "%s/mobile/android/locales/all-locales" % MOZILLA_DIR,
+ "locales_dir": "mobile/android/locales",
+ "ignore_locales": ["en-US"],
+ "nightly_build": True,
+ 'balrog_credentials_file': 'oauth.txt',
+ "tools_repo": "https://hg.mozilla.org/build/tools",
+ "tooltool_config": {
+ "manifest": "mobile/android/config/tooltool-manifests/android/releng.manifest",
+ "output_dir": "%(abs_work_dir)s/" + MOZILLA_DIR,
+ },
+ "exes": {
+ 'tooltool.py': '/builds/tooltool.py',
+ },
+ "repos": [{
+ "repo": "https://hg.mozilla.org/mozilla-central",
+ "branch": "default",
+ "dest": MOZILLA_DIR,
+ }, {
+ "repo": "https://hg.mozilla.org/build/buildbot-configs",
+ "branch": "default",
+ "dest": "buildbot-configs"
+ }, {
+ "repo": "https://hg.mozilla.org/build/tools",
+ "branch": "default",
+ "dest": "tools"
+ }],
+ "hg_l10n_base": "https://hg.mozilla.org/l10n-central",
+ "hg_l10n_tag": "default",
+ 'vcs_share_base': HG_SHARE_BASE_DIR,
+
+ "l10n_dir": "l10n-central",
+ "repack_env": {
+ # so ugly, bug 951238
+ "LD_LIBRARY_PATH": "/lib:/tools/gcc-4.7.2-0moz1/lib:/tools/gcc-4.7.2-0moz1/lib64",
+ "MOZ_OBJDIR": OBJDIR,
+ "EN_US_BINARY_URL": EN_US_BINARY_URL,
+ "LOCALE_MERGEDIR": "%(abs_merge_dir)s/",
+ "MOZ_UPDATE_CHANNEL": MOZ_UPDATE_CHANNEL,
+ },
+ "upload_branch": "%s-android-api-15" % BRANCH,
+ "ssh_key_dir": "~/.ssh",
+ "merge_locales": True,
+ "mozilla_dir": MOZILLA_DIR,
+ "mozconfig": "%s/mobile/android/config/mozconfigs/android-api-15/l10n-nightly" % MOZILLA_DIR,
+ "signature_verification_script": "tools/release/signing/verify-android-signature.sh",
+ "stage_product": "mobile",
+ "platform": "android",
+ "build_type": "api-15-opt",
+
+ # Balrog
+ "build_target": "Android_arm-eabi-gcc3",
+
+ # Mock
+ "mock_target": "mozilla-centos6-x86_64-android",
+ "mock_packages": ['autoconf213', 'python', 'zip', 'mozilla-python27-mercurial', 'git', 'ccache',
+ 'glibc-static', 'libstdc++-static', 'perl-Test-Simple', 'perl-Config-General',
+ 'gtk2-devel', 'libnotify-devel', 'yasm',
+ 'alsa-lib-devel', 'libcurl-devel',
+ 'wireless-tools-devel', 'libX11-devel',
+ 'libXt-devel', 'mesa-libGL-devel',
+ 'gnome-vfs2-devel', 'GConf2-devel', 'wget',
+ 'mpfr', # required for system compiler
+ 'xorg-x11-font*', # fonts required for PGO
+ 'imake', # required for makedepend!?!
+ 'gcc45_0moz3', 'gcc454_0moz1', 'gcc472_0moz1', 'gcc473_0moz1', 'yasm', 'ccache', # <-- from releng repo
+ 'valgrind', 'dbus-x11',
+ 'pulseaudio-libs-devel',
+ 'gstreamer-devel', 'gstreamer-plugins-base-devel',
+ 'freetype-2.3.11-6.el6_1.8.x86_64',
+ 'freetype-devel-2.3.11-6.el6_1.8.x86_64',
+ 'java-1.7.0-openjdk-devel',
+ 'openssh-clients',
+ 'zlib-devel-1.2.3-27.el6.i686',
+ ],
+ "mock_files": [
+ ("/home/cltbld/.ssh", "/home/mock_mozilla/.ssh"),
+ ('/home/cltbld/.hgrc', '/builds/.hgrc'),
+ ('/builds/relengapi.tok', '/builds/relengapi.tok'),
+ ('/tools/tooltool.py', '/builds/tooltool.py'),
+ ('/usr/local/lib/hgext', '/usr/local/lib/hgext'),
+ ],
+}
diff --git a/testing/mozharness/configs/single_locale/mozilla-esr52.py b/testing/mozharness/configs/single_locale/mozilla-esr52.py
new file mode 100644
index 000000000..0d01f1340
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/mozilla-esr52.py
@@ -0,0 +1,37 @@
+config = {
+ "nightly_build": True,
+ "branch": "mozilla-esr52",
+ "en_us_binary_url": "https://archive.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-esr52/",
+ "update_channel": "esr",
+
+ # l10n
+ "hg_l10n_base": "https://hg.mozilla.org/releases/l10n/mozilla-release",
+
+ # repositories
+ "mozilla_dir": "mozilla-esr52",
+ "repos": [{
+ "vcs": "hg",
+ "repo": "https://hg.mozilla.org/build/tools",
+ "branch": "default",
+ "dest": "tools",
+ }, {
+ "vcs": "hg",
+ "repo": "https://hg.mozilla.org/releases/mozilla-esr52",
+ "revision": "%(revision)s",
+ "dest": "mozilla-esr52",
+ "clone_upstream_url": "https://hg.mozilla.org/mozilla-unified",
+ }],
+ # purge options
+ 'purge_minsize': 12,
+ 'is_automation': True,
+ 'default_actions': [
+ "clobber",
+ "pull",
+ "clone-locales",
+ "list-locales",
+ "setup",
+ "repack",
+ "taskcluster-upload",
+ "summary",
+ ],
+}
diff --git a/testing/mozharness/configs/single_locale/mozilla-release.py b/testing/mozharness/configs/single_locale/mozilla-release.py
new file mode 100644
index 000000000..f02ea2ca9
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/mozilla-release.py
@@ -0,0 +1,37 @@
+config = {
+ "nightly_build": True,
+ "branch": "mozilla-release",
+ "en_us_binary_url": "http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-release/",
+ "update_channel": "release",
+
+ # l10n
+ "hg_l10n_base": "https://hg.mozilla.org/releases/l10n/mozilla-release",
+
+ # repositories
+ "mozilla_dir": "mozilla-release",
+ "repos": [{
+ "vcs": "hg",
+ "repo": "https://hg.mozilla.org/build/tools",
+ "branch": "default",
+ "dest": "tools",
+ }, {
+ "vcs": "hg",
+ "repo": "https://hg.mozilla.org/releases/mozilla-release",
+ "revision": "%(revision)s",
+ "dest": "mozilla-release",
+ "clone_upstream_url": "https://hg.mozilla.org/mozilla-unified",
+ }],
+ # purge options
+ 'purge_minsize': 12,
+ 'is_automation': True,
+ 'default_actions': [
+ "clobber",
+ "pull",
+ "clone-locales",
+ "list-locales",
+ "setup",
+ "repack",
+ "taskcluster-upload",
+ "summary",
+ ],
+}
diff --git a/testing/mozharness/configs/single_locale/production.py b/testing/mozharness/configs/single_locale/production.py
new file mode 100644
index 000000000..fe97fe361
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/production.py
@@ -0,0 +1,14 @@
+config = {
+ "upload_environment": "prod",
+ "upload_env": {
+ "UPLOAD_USER": "ffxbld",
+ # ssh_key_dir is defined per platform: it is "~/.ssh" for every platform
+ # except when mock is in use, in this case, ssh_key_dir is
+ # /home/mock_mozilla/.ssh
+ "UPLOAD_SSH_KEY": "%(ssh_key_dir)s/ffxbld_rsa",
+ "UPLOAD_HOST": "upload.ffxbld.productdelivery.prod.mozaws.net",
+ "POST_UPLOAD_CMD": "post_upload.py -b %(branch)s-l10n -p %(stage_product)s -i %(buildid)s --release-to-latest --release-to-dated",
+ "UPLOAD_TO_TEMP": "1"
+ },
+ 'taskcluster_index': 'index',
+}
diff --git a/testing/mozharness/configs/single_locale/release_mozilla-beta_android_api_15.py b/testing/mozharness/configs/single_locale/release_mozilla-beta_android_api_15.py
new file mode 100644
index 000000000..976f21f44
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/release_mozilla-beta_android_api_15.py
@@ -0,0 +1,97 @@
+BRANCH = "mozilla-beta"
+MOZ_UPDATE_CHANNEL = "beta"
+MOZILLA_DIR = BRANCH
+OBJDIR = "obj-l10n"
+EN_US_BINARY_URL = "http://archive.mozilla.org/pub/mobile/candidates/%(version)s-candidates/build%(buildnum)d/android-api-15/en-US"
+HG_SHARE_BASE_DIR = "/builds/hg-shared"
+
+config = {
+ "stage_product": "mobile",
+ "log_name": "single_locale",
+ "objdir": OBJDIR,
+ "is_automation": True,
+ "buildbot_json_path": "buildprops.json",
+ "force_clobber": True,
+ "clobberer_url": "https://api.pub.build.mozilla.org/clobberer/lastclobber",
+ "locales_file": "buildbot-configs/mozilla/l10n-changesets_mobile-beta.json",
+ "locales_dir": "mobile/android/locales",
+ "locales_platform": "android",
+ "ignore_locales": ["en-US"],
+ "balrog_credentials_file": "oauth.txt",
+ "tools_repo": "https://hg.mozilla.org/build/tools",
+ "is_release_or_beta": True,
+ "tooltool_config": {
+ "manifest": "mobile/android/config/tooltool-manifests/android/releng.manifest",
+ "output_dir": "%(abs_work_dir)s/" + MOZILLA_DIR,
+ },
+ "exes": {
+ 'tooltool.py': '/builds/tooltool.py',
+ },
+ "repos": [{
+ "repo": "https://hg.mozilla.org/releases/mozilla-beta",
+ "branch": "default",
+ "dest": MOZILLA_DIR,
+ }, {
+ "repo": "https://hg.mozilla.org/build/buildbot-configs",
+ "branch": "default",
+ "dest": "buildbot-configs"
+ }, {
+ "repo": "https://hg.mozilla.org/build/tools",
+ "branch": "default",
+ "dest": "tools"
+ }],
+ "hg_l10n_base": "https://hg.mozilla.org/releases/l10n/%s" % BRANCH,
+ "hg_l10n_tag": "default",
+ 'vcs_share_base': HG_SHARE_BASE_DIR,
+ "l10n_dir": MOZILLA_DIR,
+
+ "release_config_file": "buildbot-configs/mozilla/release-fennec-mozilla-beta.py",
+ "repack_env": {
+ # so ugly, bug 951238
+ "LD_LIBRARY_PATH": "/lib:/tools/gcc-4.7.2-0moz1/lib:/tools/gcc-4.7.2-0moz1/lib64",
+ "MOZ_PKG_VERSION": "%(version)s",
+ "MOZ_OBJDIR": OBJDIR,
+ "LOCALE_MERGEDIR": "%(abs_merge_dir)s/",
+ "MOZ_UPDATE_CHANNEL": MOZ_UPDATE_CHANNEL,
+ },
+ "base_en_us_binary_url": EN_US_BINARY_URL,
+ "upload_branch": "%s-android-api-15" % BRANCH,
+ "ssh_key_dir": "~/.ssh",
+ "base_post_upload_cmd": "post_upload.py -p mobile -n %(buildnum)s -v %(version)s --builddir android-api-15/%(locale)s --release-to-mobile-candidates-dir --nightly-dir=candidates %(post_upload_extra)s",
+ "merge_locales": True,
+ "mozilla_dir": MOZILLA_DIR,
+ "mozconfig": "%s/mobile/android/config/mozconfigs/android-api-15/l10n-release" % MOZILLA_DIR,
+ "signature_verification_script": "tools/release/signing/verify-android-signature.sh",
+ "key_alias": "release",
+ # Mock
+ "mock_target": "mozilla-centos6-x86_64-android",
+ "mock_packages": ['autoconf213', 'python', 'zip', 'mozilla-python27-mercurial', 'git', 'ccache',
+ 'glibc-static', 'libstdc++-static', 'perl-Test-Simple', 'perl-Config-General',
+ 'gtk2-devel', 'libnotify-devel', 'yasm',
+ 'alsa-lib-devel', 'libcurl-devel',
+ 'wireless-tools-devel', 'libX11-devel',
+ 'libXt-devel', 'mesa-libGL-devel',
+ 'gnome-vfs2-devel', 'GConf2-devel', 'wget',
+ 'mpfr', # required for system compiler
+ 'xorg-x11-font*', # fonts required for PGO
+ 'imake', # required for makedepend!?!
+ 'gcc45_0moz3', 'gcc454_0moz1', 'gcc472_0moz1', 'gcc473_0moz1', 'yasm', 'ccache', # <-- from releng repo
+ 'valgrind', 'dbus-x11',
+ 'pulseaudio-libs-devel',
+ 'gstreamer-devel', 'gstreamer-plugins-base-devel',
+ 'freetype-2.3.11-6.el6_1.8.x86_64',
+ 'freetype-devel-2.3.11-6.el6_1.8.x86_64',
+ 'java-1.7.0-openjdk-devel',
+ 'openssh-clients',
+ 'zlib-devel-1.2.3-27.el6.i686',
+ ],
+ "mock_files": [
+ ("/home/cltbld/.ssh", "/home/mock_mozilla/.ssh"),
+ ('/home/cltbld/.hgrc', '/builds/.hgrc'),
+ ('/builds/relengapi.tok', '/builds/relengapi.tok'),
+ ('/tools/tooltool.py', '/builds/tooltool.py'),
+ ('/usr/local/lib/hgext', '/usr/local/lib/hgext'),
+ ('/builds/mozilla-fennec-geoloc-api.key', '/builds/mozilla-fennec-geoloc-api.key'),
+ ('/builds/adjust-sdk-beta.token', '/builds/adjust-sdk-beta.token'),
+ ],
+}
diff --git a/testing/mozharness/configs/single_locale/release_mozilla-release_android_api_15.py b/testing/mozharness/configs/single_locale/release_mozilla-release_android_api_15.py
new file mode 100644
index 000000000..22d0074bb
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/release_mozilla-release_android_api_15.py
@@ -0,0 +1,97 @@
+BRANCH = "mozilla-release"
+MOZ_UPDATE_CHANNEL = "release"
+MOZILLA_DIR = BRANCH
+OBJDIR = "obj-l10n"
+EN_US_BINARY_URL = "http://archive.mozilla.org/pub/mobile/candidates/%(version)s-candidates/build%(buildnum)d/android-api-15/en-US"
+HG_SHARE_BASE_DIR = "/builds/hg-shared"
+
+config = {
+ "stage_product": "mobile",
+ "log_name": "single_locale",
+ "objdir": OBJDIR,
+ "is_automation": True,
+ "buildbot_json_path": "buildprops.json",
+ "force_clobber": True,
+ "clobberer_url": "https://api.pub.build.mozilla.org/clobberer/lastclobber",
+ "locales_file": "buildbot-configs/mozilla/l10n-changesets_mobile-release.json",
+ "locales_dir": "mobile/android/locales",
+ "locales_platform": "android",
+ "ignore_locales": ["en-US"],
+ "balrog_credentials_file": "oauth.txt",
+ "tools_repo": "https://hg.mozilla.org/build/tools",
+ "is_release_or_beta": True,
+ "tooltool_config": {
+ "manifest": "mobile/android/config/tooltool-manifests/android/releng.manifest",
+ "output_dir": "%(abs_work_dir)s/" + MOZILLA_DIR,
+ },
+ "exes": {
+ 'tooltool.py': '/builds/tooltool.py',
+ },
+ "repos": [{
+ "repo": "https://hg.mozilla.org/releases/mozilla-release",
+ "branch": "default",
+ "dest": MOZILLA_DIR,
+ }, {
+ "repo": "https://hg.mozilla.org/build/buildbot-configs",
+ "branch": "default",
+ "dest": "buildbot-configs"
+ }, {
+ "repo": "https://hg.mozilla.org/build/tools",
+ "branch": "default",
+ "dest": "tools"
+ }],
+ "hg_l10n_base": "https://hg.mozilla.org/releases/l10n/%s" % BRANCH,
+ "hg_l10n_tag": "default",
+ 'vcs_share_base': HG_SHARE_BASE_DIR,
+ "l10n_dir": MOZILLA_DIR,
+
+ "release_config_file": "buildbot-configs/mozilla/release-fennec-mozilla-release.py",
+ "repack_env": {
+ # so ugly, bug 951238
+ "LD_LIBRARY_PATH": "/lib:/tools/gcc-4.7.2-0moz1/lib:/tools/gcc-4.7.2-0moz1/lib64",
+ "MOZ_PKG_VERSION": "%(version)s",
+ "MOZ_OBJDIR": OBJDIR,
+ "LOCALE_MERGEDIR": "%(abs_merge_dir)s/",
+ "MOZ_UPDATE_CHANNEL": MOZ_UPDATE_CHANNEL,
+ },
+ "base_en_us_binary_url": EN_US_BINARY_URL,
+ "upload_branch": "%s-android-api-15" % BRANCH,
+ "ssh_key_dir": "~/.ssh",
+ "base_post_upload_cmd": "post_upload.py -p mobile -n %(buildnum)s -v %(version)s --builddir android-api-15/%(locale)s --release-to-mobile-candidates-dir --nightly-dir=candidates %(post_upload_extra)s",
+ "merge_locales": True,
+ "mozilla_dir": MOZILLA_DIR,
+ "mozconfig": "%s/mobile/android/config/mozconfigs/android-api-15/l10n-release" % MOZILLA_DIR,
+ "signature_verification_script": "tools/release/signing/verify-android-signature.sh",
+ "key_alias": "release",
+ # Mock
+ "mock_target": "mozilla-centos6-x86_64-android",
+ "mock_packages": ['autoconf213', 'python', 'zip', 'mozilla-python27-mercurial', 'git', 'ccache',
+ 'glibc-static', 'libstdc++-static', 'perl-Test-Simple', 'perl-Config-General',
+ 'gtk2-devel', 'libnotify-devel', 'yasm',
+ 'alsa-lib-devel', 'libcurl-devel',
+ 'wireless-tools-devel', 'libX11-devel',
+ 'libXt-devel', 'mesa-libGL-devel',
+ 'gnome-vfs2-devel', 'GConf2-devel', 'wget',
+ 'mpfr', # required for system compiler
+ 'xorg-x11-font*', # fonts required for PGO
+ 'imake', # required for makedepend!?!
+ 'gcc45_0moz3', 'gcc454_0moz1', 'gcc472_0moz1', 'gcc473_0moz1', 'yasm', 'ccache', # <-- from releng repo
+ 'valgrind', 'dbus-x11',
+ 'pulseaudio-libs-devel',
+ 'gstreamer-devel', 'gstreamer-plugins-base-devel',
+ 'freetype-2.3.11-6.el6_1.8.x86_64',
+ 'freetype-devel-2.3.11-6.el6_1.8.x86_64',
+ 'java-1.7.0-openjdk-devel',
+ 'openssh-clients',
+ 'zlib-devel-1.2.3-27.el6.i686',
+ ],
+ "mock_files": [
+ ("/home/cltbld/.ssh", "/home/mock_mozilla/.ssh"),
+ ('/home/cltbld/.hgrc', '/builds/.hgrc'),
+ ('/builds/relengapi.tok', '/builds/relengapi.tok'),
+ ('/tools/tooltool.py', '/builds/tooltool.py'),
+ ('/usr/local/lib/hgext', '/usr/local/lib/hgext'),
+ ('/builds/mozilla-fennec-geoloc-api.key', '/builds/mozilla-fennec-geoloc-api.key'),
+ ('/builds/adjust-sdk.token', '/builds/adjust-sdk.token'),
+ ],
+}
diff --git a/testing/mozharness/configs/single_locale/staging.py b/testing/mozharness/configs/single_locale/staging.py
new file mode 100644
index 000000000..82caa8dda
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/staging.py
@@ -0,0 +1,17 @@
+config = {
+ "upload_environment": "stage",
+ "upload_env": {
+ "UPLOAD_USER": "ffxbld",
+ # ssh_key_dir is defined per platform: it is "~/.ssh" for every platform
+ # except when mock is in use, in this case, ssh_key_dir is
+ # /home/mock_mozilla/.ssh
+ "UPLOAD_SSH_KEY": "%(ssh_key_dir)s/ffxbld_rsa",
+ "UPLOAD_HOST": "upload.ffxbld.productdelivery.stage.mozaws.net",
+ "POST_UPLOAD_CMD": "post_upload.py -b %(branch)s-l10n -p %(stage_product)s -i %(buildid)s --release-to-latest --release-to-dated %(post_upload_extra)s",
+ "UPLOAD_TO_TEMP": "1"
+ },
+ 'taskcluster_index': 'index.garbage.staging',
+ 'post_upload_extra': ['--bucket-prefix', 'net-mozaws-stage-delivery',
+ '--url-prefix', 'http://ftp.stage.mozaws.net/',
+ ],
+}
diff --git a/testing/mozharness/configs/single_locale/staging_release_mozilla-beta_android_api_15.py b/testing/mozharness/configs/single_locale/staging_release_mozilla-beta_android_api_15.py
new file mode 100644
index 000000000..7f7d3e4e2
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/staging_release_mozilla-beta_android_api_15.py
@@ -0,0 +1,97 @@
+BRANCH = "mozilla-beta"
+MOZ_UPDATE_CHANNEL = "beta"
+MOZILLA_DIR = BRANCH
+OBJDIR = "obj-l10n"
+STAGE_SERVER = "ftp.stage.mozaws.net"
+EN_US_BINARY_URL = "http://" + STAGE_SERVER + "/pub/mobile/candidates/%(version)s-candidates/build%(buildnum)d/android-api-15/en-US"
+HG_SHARE_BASE_DIR = "/builds/hg-shared"
+
+config = {
+ "log_name": "single_locale",
+ "objdir": OBJDIR,
+ "is_automation": True,
+ "buildbot_json_path": "buildprops.json",
+ "force_clobber": True,
+ "clobberer_url": "https://api-pub-build.allizom.org/clobberer/lastclobber",
+ "locales_file": "buildbot-configs/mozilla/l10n-changesets_mobile-beta.json",
+ "locales_dir": "mobile/android/locales",
+ "locales_platform": "android",
+ "ignore_locales": ["en-US"],
+ "balrog_credentials_file": "oauth.txt",
+ "tools_repo": "https://hg.mozilla.org/build/tools",
+ "is_release_or_beta": True,
+ "tooltool_config": {
+ "manifest": "mobile/android/config/tooltool-manifests/android/releng.manifest",
+ "output_dir": "%(abs_work_dir)s/" + MOZILLA_DIR,
+ },
+ "exes": {
+ 'tooltool.py': '/builds/tooltool.py',
+ },
+ "repos": [{
+ "repo": "https://hg.mozilla.org/%(user_repo_override)s/mozilla-beta",
+ "branch": "default",
+ "dest": MOZILLA_DIR,
+ }, {
+ "repo": "https://hg.mozilla.org/%(user_repo_override)s/buildbot-configs",
+ "branch": "default",
+ "dest": "buildbot-configs"
+ }, {
+ "repo": "https://hg.mozilla.org/%(user_repo_override)s/tools",
+ "branch": "default",
+ "dest": "tools"
+ }],
+ "hg_l10n_base": "https://hg.mozilla.org/%(user_repo_override)s/",
+ "hg_l10n_tag": "default",
+ 'vcs_share_base': HG_SHARE_BASE_DIR,
+ "l10n_dir": MOZILLA_DIR,
+
+ "release_config_file": "buildbot-configs/mozilla/staging_release-fennec-mozilla-beta.py",
+ "repack_env": {
+ # so ugly, bug 951238
+ "LD_LIBRARY_PATH": "/lib:/tools/gcc-4.7.2-0moz1/lib:/tools/gcc-4.7.2-0moz1/lib64",
+ "MOZ_PKG_VERSION": "%(version)s",
+ "MOZ_OBJDIR": OBJDIR,
+ "LOCALE_MERGEDIR": "%(abs_merge_dir)s/",
+ "MOZ_UPDATE_CHANNEL": MOZ_UPDATE_CHANNEL,
+ },
+ "base_en_us_binary_url": EN_US_BINARY_URL,
+ "upload_branch": "%s-android-api-15" % BRANCH,
+ "ssh_key_dir": "~/.ssh",
+ "base_post_upload_cmd": "post_upload.py -p mobile -n %(buildnum)s -v %(version)s --builddir android-api-15/%(locale)s --release-to-mobile-candidates-dir --nightly-dir=candidates %(post_upload_extra)s",
+ "merge_locales": True,
+ "mozilla_dir": MOZILLA_DIR,
+ "mozconfig": "%s/mobile/android/config/mozconfigs/android-api-15/l10n-release" % MOZILLA_DIR,
+ "signature_verification_script": "tools/release/signing/verify-android-signature.sh",
+
+ # Mock
+ "mock_target": "mozilla-centos6-x86_64-android",
+ "mock_packages": ['autoconf213', 'python', 'zip', 'mozilla-python27-mercurial', 'git', 'ccache',
+ 'glibc-static', 'libstdc++-static', 'perl-Test-Simple', 'perl-Config-General',
+ 'gtk2-devel', 'libnotify-devel', 'yasm',
+ 'alsa-lib-devel', 'libcurl-devel',
+ 'wireless-tools-devel', 'libX11-devel',
+ 'libXt-devel', 'mesa-libGL-devel',
+ 'gnome-vfs2-devel', 'GConf2-devel', 'wget',
+ 'mpfr', # required for system compiler
+ 'xorg-x11-font*', # fonts required for PGO
+ 'imake', # required for makedepend!?!
+ 'gcc45_0moz3', 'gcc454_0moz1', 'gcc472_0moz1', 'gcc473_0moz1', 'yasm', 'ccache', # <-- from releng repo
+ 'valgrind', 'dbus-x11',
+ 'pulseaudio-libs-devel',
+ 'gstreamer-devel', 'gstreamer-plugins-base-devel',
+ 'freetype-2.3.11-6.el6_1.8.x86_64',
+ 'freetype-devel-2.3.11-6.el6_1.8.x86_64',
+ 'java-1.7.0-openjdk-devel',
+ 'openssh-clients',
+ 'zlib-devel-1.2.3-27.el6.i686',
+ ],
+ "mock_files": [
+ ("/home/cltbld/.ssh", "/home/mock_mozilla/.ssh"),
+ ('/home/cltbld/.hgrc', '/builds/.hgrc'),
+ ('/builds/relengapi.tok', '/builds/relengapi.tok'),
+ ('/tools/tooltool.py', '/builds/tooltool.py'),
+ ('/usr/local/lib/hgext', '/usr/local/lib/hgext'),
+ ('/builds/mozilla-fennec-geoloc-api.key', '/builds/mozilla-fennec-geoloc-api.key'),
+ ('/builds/adjust-sdk-beta.token', '/builds/adjust-sdk-beta.token'),
+ ],
+}
diff --git a/testing/mozharness/configs/single_locale/staging_release_mozilla-release_android_api_15.py b/testing/mozharness/configs/single_locale/staging_release_mozilla-release_android_api_15.py
new file mode 100644
index 000000000..da4803a60
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/staging_release_mozilla-release_android_api_15.py
@@ -0,0 +1,97 @@
+BRANCH = "mozilla-release"
+MOZ_UPDATE_CHANNEL = "release"
+MOZILLA_DIR = BRANCH
+OBJDIR = "obj-l10n"
+STAGE_SERVER = "dev-stage01.srv.releng.scl3.mozilla.com"
+EN_US_BINARY_URL = "http://" + STAGE_SERVER + "/pub/mozilla.org/mobile/candidates/%(version)s-candidates/build%(buildnum)d/android-api-15/en-US"
+HG_SHARE_BASE_DIR = "/builds/hg-shared"
+
+config = {
+ "log_name": "single_locale",
+ "objdir": OBJDIR,
+ "is_automation": True,
+ "buildbot_json_path": "buildprops.json",
+ "force_clobber": True,
+ "clobberer_url": "https://api-pub-build.allizom.org/clobberer/lastclobber",
+ "locales_file": "buildbot-configs/mozilla/l10n-changesets_mobile-release.json",
+ "locales_dir": "mobile/android/locales",
+ "locales_platform": "android",
+ "ignore_locales": ["en-US"],
+ "balrog_credentials_file": "oauth.txt",
+ "tools_repo": "https://hg.mozilla.org/build/tools",
+ "is_release_or_beta": True,
+ "tooltool_config": {
+ "manifest": "mobile/android/config/tooltool-manifests/android/releng.manifest",
+ "output_dir": "%(abs_work_dir)s/" + MOZILLA_DIR,
+ },
+ "exes": {
+ 'tooltool.py': '/builds/tooltool.py',
+ },
+ "repos": [{
+ "repo": "https://hg.mozilla.org/%(user_repo_override)s/mozilla-release",
+ "branch": "default",
+ "dest": MOZILLA_DIR,
+ }, {
+ "repo": "https://hg.mozilla.org/%(user_repo_override)s/buildbot-configs",
+ "branch": "default",
+ "dest": "buildbot-configs"
+ }, {
+ "repo": "https://hg.mozilla.org/%(user_repo_override)s/tools",
+ "branch": "default",
+ "dest": "tools"
+ }],
+ "hg_l10n_base": "https://hg.mozilla.org/%(user_repo_override)s/",
+ "hg_l10n_tag": "default",
+ 'vcs_share_base': HG_SHARE_BASE_DIR,
+ "l10n_dir": MOZILLA_DIR,
+
+ "release_config_file": "buildbot-configs/mozilla/staging_release-fennec-mozilla-release.py",
+ "repack_env": {
+ # so ugly, bug 951238
+ "LD_LIBRARY_PATH": "/lib:/tools/gcc-4.7.2-0moz1/lib:/tools/gcc-4.7.2-0moz1/lib64",
+ "MOZ_PKG_VERSION": "%(version)s",
+ "MOZ_OBJDIR": OBJDIR,
+ "LOCALE_MERGEDIR": "%(abs_merge_dir)s/",
+ "MOZ_UPDATE_CHANNEL": MOZ_UPDATE_CHANNEL,
+ },
+ "base_en_us_binary_url": EN_US_BINARY_URL,
+ "upload_branch": "%s-android-api-15" % BRANCH,
+ "ssh_key_dir": "~/.ssh",
+ "base_post_upload_cmd": "post_upload.py -p mobile -n %(buildnum)s -v %(version)s --builddir android-api-15/%(locale)s --release-to-mobile-candidates-dir --nightly-dir=candidates %(post_upload_extra)s",
+ "merge_locales": True,
+ "mozilla_dir": MOZILLA_DIR,
+ "mozconfig": "%s/mobile/android/config/mozconfigs/android-api-15/l10n-release" % MOZILLA_DIR,
+ "signature_verification_script": "tools/release/signing/verify-android-signature.sh",
+
+ # Mock
+ "mock_target": "mozilla-centos6-x86_64-android",
+ "mock_packages": ['autoconf213', 'python', 'zip', 'mozilla-python27-mercurial', 'git', 'ccache',
+ 'glibc-static', 'libstdc++-static', 'perl-Test-Simple', 'perl-Config-General',
+ 'gtk2-devel', 'libnotify-devel', 'yasm',
+ 'alsa-lib-devel', 'libcurl-devel',
+ 'wireless-tools-devel', 'libX11-devel',
+ 'libXt-devel', 'mesa-libGL-devel',
+ 'gnome-vfs2-devel', 'GConf2-devel', 'wget',
+ 'mpfr', # required for system compiler
+ 'xorg-x11-font*', # fonts required for PGO
+ 'imake', # required for makedepend!?!
+ 'gcc45_0moz3', 'gcc454_0moz1', 'gcc472_0moz1', 'gcc473_0moz1', 'yasm', 'ccache', # <-- from releng repo
+ 'valgrind', 'dbus-x11',
+ 'pulseaudio-libs-devel',
+ 'gstreamer-devel', 'gstreamer-plugins-base-devel',
+ 'freetype-2.3.11-6.el6_1.8.x86_64',
+ 'freetype-devel-2.3.11-6.el6_1.8.x86_64',
+ 'java-1.7.0-openjdk-devel',
+ 'openssh-clients',
+ 'zlib-devel-1.2.3-27.el6.i686',
+ ],
+ "mock_files": [
+ ("/home/cltbld/.ssh", "/home/mock_mozilla/.ssh"),
+ ('/home/cltbld/.hgrc', '/builds/.hgrc'),
+ ('/builds/relengapi.tok', '/builds/relengapi.tok'),
+ ('/tools/tooltool.py', '/builds/tooltool.py'),
+ ('/usr/local/lib/hgext', '/usr/local/lib/hgext'),
+ ('/builds/mozilla-fennec-geoloc-api.key', '/builds/mozilla-fennec-geoloc-api.key'),
+ ('/builds/adjust-sdk.token', '/builds/adjust-sdk.token'),
+ ],
+}
diff --git a/testing/mozharness/configs/single_locale/tc_android-api-15.py b/testing/mozharness/configs/single_locale/tc_android-api-15.py
new file mode 100644
index 000000000..f15b254dc
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/tc_android-api-15.py
@@ -0,0 +1,18 @@
+import os
+
+config = {
+ "locales_file": "src/mobile/android/locales/all-locales",
+ "tools_repo": "https://hg.mozilla.org/build/tools",
+ "mozconfig": "src/mobile/android/config/mozconfigs/android-api-15/l10n-nightly",
+ "tooltool_config": {
+ "manifest": "mobile/android/config/tooltool-manifests/android/releng.manifest",
+ "output_dir": "%(abs_work_dir)s/src",
+ },
+ "tooltool_servers": ['http://relengapi/tooltool/'],
+
+ "upload_env": {
+ 'UPLOAD_HOST': 'localhost',
+ 'UPLOAD_PATH': '/home/worker/artifacts/',
+ },
+ "mozilla_dir": "src/",
+}
diff --git a/testing/mozharness/configs/single_locale/tc_linux32.py b/testing/mozharness/configs/single_locale/tc_linux32.py
new file mode 100644
index 000000000..3045138f8
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/tc_linux32.py
@@ -0,0 +1,24 @@
+import os
+
+config = {
+ "locales_file": "src/browser/locales/all-locales",
+ "tools_repo": "https://hg.mozilla.org/build/tools",
+ "mozconfig": "src/browser/config/mozconfigs/linux32/l10n-mozconfig",
+ "bootstrap_env": {
+ "NO_MERCURIAL_SETUP_CHECK": "1",
+ "MOZ_OBJDIR": "obj-l10n",
+ "EN_US_BINARY_URL": "%(en_us_binary_url)s",
+ "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/',
+ },
+ "mozilla_dir": "src/",
+}
diff --git a/testing/mozharness/configs/single_locale/tc_linux64.py b/testing/mozharness/configs/single_locale/tc_linux64.py
new file mode 100644
index 000000000..28a4c6f56
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/tc_linux64.py
@@ -0,0 +1,24 @@
+import os
+
+config = {
+ "locales_file": "src/browser/locales/all-locales",
+ "tools_repo": "https://hg.mozilla.org/build/tools",
+ "mozconfig": "src/browser/config/mozconfigs/linux64/l10n-mozconfig",
+ "bootstrap_env": {
+ "NO_MERCURIAL_SETUP_CHECK": "1",
+ "MOZ_OBJDIR": "obj-l10n",
+ "EN_US_BINARY_URL": "%(en_us_binary_url)s",
+ "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/',
+ },
+ "mozilla_dir": "src/",
+}
diff --git a/testing/mozharness/configs/single_locale/try.py b/testing/mozharness/configs/single_locale/try.py
new file mode 100644
index 000000000..369159111
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/try.py
@@ -0,0 +1,42 @@
+config = {
+ "nightly_build": False,
+ "branch": "try",
+ "en_us_binary_url": "http://archive.mozilla.org/pub/firefox/nightly/latest-mozilla-central",
+ "update_channel": "nightly",
+ "update_gecko_source_to_enUS": False,
+
+ # l10n
+ "hg_l10n_base": "https://hg.mozilla.org/l10n-central",
+
+ # mar
+ "mar_tools_url": "http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-central/mar-tools/%(platform)s",
+
+ # repositories
+ "mozilla_dir": "try",
+ "repos": [{
+ "vcs": "hg",
+ "repo": "https://hg.mozilla.org/build/tools",
+ "branch": "default",
+ "dest": "tools",
+ }, {
+ "vcs": "hg",
+ "repo": "https://hg.mozilla.org/try",
+ "revision": "%(revision)s",
+ "dest": "try",
+ "clone_upstream_url": "https://hg.mozilla.org/mozilla-unified",
+ "clone_by_revision": True,
+ "clone_with_purge": True,
+ }],
+ # purge options
+ 'is_automation': True,
+ "upload_env": {
+ "UPLOAD_USER": "trybld",
+ # ssh_key_dir is defined per platform: it is "~/.ssh" for every platform
+ # except when mock is in use, in this case, ssh_key_dir is
+ # /home/mock_mozilla/.ssh
+ "UPLOAD_SSH_KEY": "%(ssh_key_dir)s/trybld_dsa",
+ "UPLOAD_HOST": "upload.trybld.productdelivery.%(upload_environment)s.mozaws.net",
+ "POST_UPLOAD_CMD": "post_upload.py --who %(who)s --builddir %(branch)s-%(platform)s --tinderbox-builds-dir %(who)s-%(revision)s -p %(stage_product)s -i %(buildid)s --revision %(revision)s --release-to-try-builds %(post_upload_extra)s",
+ "UPLOAD_TO_TEMP": "1"
+ },
+}
diff --git a/testing/mozharness/configs/single_locale/try_android-api-15.py b/testing/mozharness/configs/single_locale/try_android-api-15.py
new file mode 100644
index 000000000..74d397b65
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/try_android-api-15.py
@@ -0,0 +1,97 @@
+BRANCH = "try"
+MOZILLA_DIR = BRANCH
+EN_US_BINARY_URL = "http://archive.mozilla.org/pub/" \
+ "mobile/nightly/latest-mozilla-central-android-api-15/en-US"
+
+config = {
+ "branch": "try",
+ "log_name": "single_locale",
+ "objdir": "obj-l10n",
+ "is_automation": True,
+ "buildbot_json_path": "buildprops.json",
+ "force_clobber": True,
+ "clobberer_url": "https://api.pub.build.mozilla.org/clobberer/lastclobber",
+ "locales_file": "%s/mobile/android/locales/all-locales" % MOZILLA_DIR,
+ "locales_dir": "mobile/android/locales",
+ "ignore_locales": ["en-US"],
+ "nightly_build": False,
+ 'balrog_credentials_file': 'oauth.txt',
+ "tools_repo": "https://hg.mozilla.org/build/tools",
+ "tooltool_config": {
+ "manifest": "mobile/android/config/tooltool-manifests/android/releng.manifest",
+ "output_dir": "%(abs_work_dir)s/" + MOZILLA_DIR,
+ },
+ "exes": {
+ 'tooltool.py': '/builds/tooltool.py',
+ },
+ "update_gecko_source_to_enUS": False,
+ "repos": [{
+ "vcs": "hg",
+ "repo": "https://hg.mozilla.org/build/tools",
+ "branch": "default",
+ "dest": "tools",
+ }, {
+ "vcs": "hg",
+ "repo": "https://hg.mozilla.org/try",
+ "revision": "%(revision)s",
+ "dest": "try",
+ "clone_upstream_url": "https://hg.mozilla.org/mozilla-unified",
+ "clone_by_revision": True,
+ "clone_with_purge": True,
+ }],
+ "hg_l10n_base": "https://hg.mozilla.org/l10n-central",
+ "hg_l10n_tag": "default",
+ 'vcs_share_base': "/builds/hg-shared",
+
+ "l10n_dir": "l10n-central",
+ "repack_env": {
+ # so ugly, bug 951238
+ "LD_LIBRARY_PATH": "/lib:/tools/gcc-4.7.2-0moz1/lib:/tools/gcc-4.7.2-0moz1/lib64",
+ "MOZ_OBJDIR": "obj-l10n",
+ "EN_US_BINARY_URL": EN_US_BINARY_URL,
+ "LOCALE_MERGEDIR": "%(abs_merge_dir)s/",
+ "MOZ_UPDATE_CHANNEL": "try", # XXX Invalid
+ },
+ "upload_branch": "%s-android-api-15" % BRANCH,
+ "ssh_key_dir": "~/.ssh",
+ "merge_locales": True,
+ "mozilla_dir": MOZILLA_DIR,
+ "mozconfig": "%s/mobile/android/config/mozconfigs/android-api-15/l10n-nightly" % MOZILLA_DIR,
+ "signature_verification_script": "tools/release/signing/verify-android-signature.sh",
+ "stage_product": "mobile",
+ "platform": "android", # XXX Validate
+ "build_type": "api-15-opt", # XXX Validate
+
+ # Balrog
+ "build_target": "Android_arm-eabi-gcc3",
+
+ # Mock
+ "mock_target": "mozilla-centos6-x86_64-android",
+ "mock_packages": ['autoconf213', 'python', 'zip', 'mozilla-python27-mercurial', 'git', 'ccache',
+ 'glibc-static', 'libstdc++-static', 'perl-Test-Simple', 'perl-Config-General',
+ 'gtk2-devel', 'libnotify-devel', 'yasm',
+ 'alsa-lib-devel', 'libcurl-devel',
+ 'wireless-tools-devel', 'libX11-devel',
+ 'libXt-devel', 'mesa-libGL-devel',
+ 'gnome-vfs2-devel', 'GConf2-devel', 'wget',
+ 'mpfr', # required for system compiler
+ 'xorg-x11-font*', # fonts required for PGO
+ 'imake', # required for makedepend!?!
+ 'gcc45_0moz3', 'gcc454_0moz1', 'gcc472_0moz1', 'gcc473_0moz1', 'yasm', 'ccache', # <-- from releng repo
+ 'valgrind', 'dbus-x11',
+ 'pulseaudio-libs-devel',
+ 'gstreamer-devel', 'gstreamer-plugins-base-devel',
+ 'freetype-2.3.11-6.el6_1.8.x86_64',
+ 'freetype-devel-2.3.11-6.el6_1.8.x86_64',
+ 'java-1.7.0-openjdk-devel',
+ 'openssh-clients',
+ 'zlib-devel-1.2.3-27.el6.i686',
+ ],
+ "mock_files": [
+ ("/home/cltbld/.ssh", "/home/mock_mozilla/.ssh"),
+ ('/home/cltbld/.hgrc', '/builds/.hgrc'),
+ ('/builds/relengapi.tok', '/builds/relengapi.tok'),
+ ('/tools/tooltool.py', '/builds/tooltool.py'),
+ ('/usr/local/lib/hgext', '/usr/local/lib/hgext'),
+ ],
+}
diff --git a/testing/mozharness/configs/single_locale/win32.py b/testing/mozharness/configs/single_locale/win32.py
new file mode 100644
index 000000000..ea07fff86
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/win32.py
@@ -0,0 +1,77 @@
+import os
+import sys
+
+config = {
+ "platform": "win32",
+ "stage_product": "firefox",
+ "update_platform": "WINNT_x86-msvc",
+ "mozconfig": "%(branch)s/browser/config/mozconfigs/win32/l10n-mozconfig",
+ "bootstrap_env": {
+ "MOZ_OBJDIR": "obj-l10n",
+ "EN_US_BINARY_URL": "%(en_us_binary_url)s",
+ "LOCALE_MERGEDIR": "%(abs_merge_dir)s",
+ "MOZ_UPDATE_CHANNEL": "%(update_channel)s",
+ "DIST": "%(abs_objdir)s",
+ "L10NBASEDIR": "../../l10n",
+ "MOZ_MAKE_COMPLETE_MAR": "1",
+ "PATH": 'C:\\mozilla-build\\nsis-3.01;'
+ '%s' % (os.environ.get('path')),
+ 'TOOLTOOL_CACHE': '/c/builds/tooltool_cache',
+ 'TOOLTOOL_HOME': '/c/builds',
+ },
+ "ssh_key_dir": "~/.ssh",
+ "log_name": "single_locale",
+ "objdir": "obj-l10n",
+ "js_src_dir": "js/src",
+ "vcs_share_base": "c:/builds/hg-shared",
+
+ # tooltool
+ 'tooltool_url': 'https://api.pub.build.mozilla.org/tooltool/',
+ 'tooltool_script': [sys.executable,
+ 'C:/mozilla-build/tooltool.py'],
+ 'tooltool_bootstrap': "setup.sh",
+ 'tooltool_manifest_src': 'browser/config/tooltool-manifests/win32/releng.manifest',
+ # balrog credential file:
+ 'balrog_credentials_file': 'oauth.txt',
+
+ # l10n
+ "ignore_locales": ["en-US", "ja-JP-mac"],
+ "l10n_dir": "l10n",
+ "locales_file": "%(branch)s/browser/locales/all-locales",
+ "locales_dir": "browser/locales",
+ "hg_l10n_tag": "default",
+ "merge_locales": True,
+
+ # MAR
+ "previous_mar_dir": "dist\\previous",
+ "current_mar_dir": "dist\\current",
+ "update_mar_dir": "dist\\update", # sure?
+ "previous_mar_filename": "previous.mar",
+ "current_work_mar_dir": "current.work",
+ "package_base_dir": "dist\\l10n-stage",
+ "application_ini": "application.ini",
+ "buildid_section": 'App',
+ "buildid_option": "BuildID",
+ "unpack_script": "tools\\update-packaging\\unwrap_full_update.pl",
+ "incremental_update_script": "tools\\update-packaging\\make_incremental_update.sh",
+ "balrog_release_pusher_script": "scripts\\updates\\balrog-release-pusher.py",
+ "update_packaging_dir": "tools\\update-packaging",
+ "local_mar_tool_dir": "dist\\host\\bin",
+ "mar": "mar.exe",
+ "mbsdiff": "mbsdiff.exe",
+ "current_mar_filename": "firefox-%(version)s.%(locale)s.win32.complete.mar",
+ "complete_mar": "firefox-%(version)s.en-US.win32.complete.mar",
+ "localized_mar": "firefox-%(version)s.%(locale)s.win32.complete.mar",
+ "partial_mar": "firefox-%(version)s.%(locale)s.win32.partial.%(from_buildid)s-%(to_buildid)s.mar",
+ 'installer_file': "firefox-%(version)s.en-US.win32.installer.exe",
+
+ # use mozmake?
+ "enable_mozmake": True,
+ 'exes': {
+ 'python2.7': sys.executable,
+ 'virtualenv': [
+ sys.executable,
+ 'c:/mozilla-build/buildbotve/virtualenv.py'
+ ],
+ }
+}
diff --git a/testing/mozharness/configs/single_locale/win64.py b/testing/mozharness/configs/single_locale/win64.py
new file mode 100644
index 000000000..df553018f
--- /dev/null
+++ b/testing/mozharness/configs/single_locale/win64.py
@@ -0,0 +1,77 @@
+import os
+import sys
+
+config = {
+ "platform": "win64",
+ "stage_product": "firefox",
+ "update_platform": "WINNT_x86_64-msvc",
+ "mozconfig": "%(branch)s/browser/config/mozconfigs/win64/l10n-mozconfig",
+ "bootstrap_env": {
+ "MOZ_OBJDIR": "obj-l10n",
+ "EN_US_BINARY_URL": "%(en_us_binary_url)s",
+ "MOZ_UPDATE_CHANNEL": "%(update_channel)s",
+ "DIST": "%(abs_objdir)s",
+ "LOCALE_MERGEDIR": "%(abs_merge_dir)s",
+ "L10NBASEDIR": "../../l10n",
+ "MOZ_MAKE_COMPLETE_MAR": "1",
+ "PATH": 'C:\\mozilla-build\\nsis-3.01;'
+ '%s' % (os.environ.get('path')),
+ 'TOOLTOOL_CACHE': '/c/builds/tooltool_cache',
+ 'TOOLTOOL_HOME': '/c/builds',
+ },
+ "ssh_key_dir": "~/.ssh",
+ "log_name": "single_locale",
+ "objdir": "obj-l10n",
+ "js_src_dir": "js/src",
+ "vcs_share_base": "c:/builds/hg-shared",
+
+ # tooltool
+ 'tooltool_url': 'https://api.pub.build.mozilla.org/tooltool/',
+ 'tooltool_script': [sys.executable,
+ 'C:/mozilla-build/tooltool.py'],
+ 'tooltool_bootstrap': "setup.sh",
+ 'tooltool_manifest_src': 'browser/config/tooltool-manifests/win64/releng.manifest',
+ # balrog credential file:
+ 'balrog_credentials_file': 'oauth.txt',
+
+ # l10n
+ "ignore_locales": ["en-US", "ja-JP-mac"],
+ "l10n_dir": "l10n",
+ "locales_file": "%(branch)s/browser/locales/all-locales",
+ "locales_dir": "browser/locales",
+ "hg_l10n_tag": "default",
+ "merge_locales": True,
+
+ # MAR
+ "previous_mar_dir": "dist\\previous",
+ "current_mar_dir": "dist\\current",
+ "update_mar_dir": "dist\\update", # sure?
+ "previous_mar_filename": "previous.mar",
+ "current_work_mar_dir": "current.work",
+ "package_base_dir": "dist\\l10n-stage",
+ "application_ini": "application.ini",
+ "buildid_section": 'App',
+ "buildid_option": "BuildID",
+ "unpack_script": "tools\\update-packaging\\unwrap_full_update.pl",
+ "incremental_update_script": "tools\\update-packaging\\make_incremental_update.sh",
+ "balrog_release_pusher_script": "scripts\\updates\\balrog-release-pusher.py",
+ "update_packaging_dir": "tools\\update-packaging",
+ "local_mar_tool_dir": "dist\\host\\bin",
+ "mar": "mar.exe",
+ "mbsdiff": "mbsdiff.exe",
+ "current_mar_filename": "firefox-%(version)s.%(locale)s.win64.complete.mar",
+ "complete_mar": "firefox-%(version)s.en-US.win64.complete.mar",
+ "localized_mar": "firefox-%(version)s.%(locale)s.win64.complete.mar",
+ "partial_mar": "firefox-%(version)s.%(locale)s.win64.partial.%(from_buildid)s-%(to_buildid)s.mar",
+ 'installer_file': "firefox-%(version)s.en-US.win64.installer.exe",
+
+ # use mozmake?
+ "enable_mozmake": True,
+ 'exes': {
+ 'python2.7': sys.executable,
+ 'virtualenv': [
+ sys.executable,
+ 'c:/mozilla-build/buildbotve/virtualenv.py'
+ ],
+ }
+}