Closed Bug 1197726 Opened 9 years ago Closed 9 years ago

Find a way to prevent symbol upload to production socorro in staging releases

Categories

(Release Engineering :: Release Automation: Other, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: nthomas, Assigned: nthomas)

References

Details

Attachments

(1 file)

This is to prevent bug 1197723 from happening again.

The backstory is that symbols are uploaded via an HTTP API since <a few months ago>. This is enabled by a environment variable set in the in-tree mozconfigs (SOCORRO_SYMBOL_UPLOAD_TOKEN_FILE), to a hard coded hostname at hg.mozilla.org/releases/mozilla-release/file/f17a27b392aa/toolkit/crashreporter/tools/upload_symbols.py#l24

Neither of those are affected by doing a release in staging, so we need a new way to prevent uploading staging symbols into the production data store. I'm going to scope this to the 'old' release automation, as release promotion will likely require a separate solution.

This may be as simple as upload_symbols.py looking for an environment variable first, and falling back to the production value. We'd just set the envvar to somewhere else in staging, maybe Socorro staging.
Bug 1173018 handles a mozharness angle on this, and support in the upload code.

A simple hack for release builds would be to do this:

diff --git a/process/release.py b/process/release.py
--- a/process/release.py
+++ b/process/release.py
@@ -648,41 +648,41 @@ def generateReleaseBranchObjects(release
             else:
                 enable_pymake = pf.get('enable_pymake', False)
             build_factory = ReleaseBuildFactory(
                 env=platform_env,
                 objdir=pf['platform_objdir'],
                 platform=platform,
                 hgHost=branchConfig['hghost'],
                 repoPath=sourceRepoInfo['path'],
                 buildToolsRepoPath=tools_repo_path,
                 configRepoPath=branchConfig['config_repo_path'],
                 profiledBuild=pf['profiled_build'],
                 mozconfig=mozconfig,
                 srcMozconfig=releaseConfig.get('mozconfigs', {}).get(platform),
                 buildRevision=releaseTag,
                 stageServer=branchConfig['stage_server'],
                 stageUsername=branchConfig['stage_username'],
                 stageGroup=branchConfig['stage_group'],
                 stageSshKey=branchConfig['stage_ssh_key'],
                 stageBasePath=branchConfig['stage_base_path'],
                 uploadPackages=True,
-                uploadSymbols=False,
+                uploadSymbols=not branchConfig.get('staging', False),
                 doCleanup=True,

staging is True in staging_config.py.
URL: 1173018
URL: 1173018
See Also: → 1173018
Bug 1168979 lets you set SOCORRO_SYMBOL_UPLOAD_URL in the environment, so there's just some confusion in bug 1197723 about whether staging socorro has a staging bucket.
I don't think we lose anything by disabling this now. At some point in the future when Socorro misconfiguration is fixed (see bug 1197723 comment #8) we can re-enable this.
Assignee: nobody → nthomas
Attachment #8662767 - Flags: review?(rail)
Attachment #8662767 - Flags: review?(rail) → review+
Comment on attachment 8662767 [details] [diff] [review]
[buildbotcustom] use staging variable to disable symbol upload

http://hg.mozilla.org/build/buildbotcustom/rev/fa6f5140fd5a
Attachment #8662767 - Flags: checked-in+
Verified we still uploaded symbols for Firefox 42.0b1 in prouction.
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: