Note: There are a few cases of duplicates in user autocompletion which are being worked on.

release automation can't update balrog blobs during the update step

VERIFIED FIXED

Status

Release Engineering
Release Automation
VERIFIED FIXED
3 years ago
3 years ago

People

(Reporter: bhearsum, Assigned: bhearsum)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

(Assignee)

Description

3 years ago
Probably more fallout from my don't-autocapitalize-product patch.

Starting new HTTPS connection (1): aus4-admin.mozilla.org
Starting new HTTPS connection (1): aus4-admin.mozilla.org
Starting new HTTPS connection (2): aus4-admin.mozilla.org
Caught HTTPError: ffxbld is not allowed to access /releases/:name by POST
Traceback (most recent call last):
  File "/builds/slave/rel-m-beta-updates-00000000000/tools/scripts/updates/balrog-release-pusher.py", line 88, in <module>
    release_config['enUSPlatforms'], hashType)
  File "/builds/slave/rel-m-beta-updates-00000000000/tools/lib/python/balrog/submitter/cli.py", line 95, in run
    data_version=data_version)
  File "/builds/slave/rel-m-beta-updates-00000000000/tools/lib/python/balrog/submitter/api.py", line 134, in update_release
    return self.request(method='POST', data=data, url_template_vars=dict(name=name))
  File "/builds/slave/rel-m-beta-updates-00000000000/tools/lib/python/balrog/submitter/api.py", line 103, in request
    return self.do_request(url, data, method, url_template_vars)
  File "/builds/slave/rel-m-beta-updates-00000000000/tools/lib/python/balrog/submitter/api.py", line 118, in do_request
    headers=headers)
  File "/builds/slave/rel-m-beta-updates-00000000000/tools/lib/python/vendor/requests-0.10.8/requests/sessions.py", line 203, in request
    r.send(prefetch=prefetch)
  File "/builds/slave/rel-m-beta-updates-00000000000/tools/lib/python/vendor/requests-0.10.8/requests/models.py", line 585, in send
    self.response.raise_for_status()
  File "/builds/slave/rel-m-beta-updates-00000000000/tools/lib/python/vendor/requests-0.10.8/requests/models.py", line 810, in raise_for_status
    raise http_error
requests.exceptions.HTTPError: 401 Client Error
retry: Failed, sleeping 1 seconds before retrying
retry: Calling <function run_with_timeout at 0x7f62b23b1398> with args: (['python', '/builds/slave/rel-m-beta-updates-00000000000/tools/scripts/updates/balrog-release-pusher.py', '--build-properties', 'buildprops_balrog.json', '--api-root', 'https://aus4-admin.mozilla.org', '--buildbot-configs', 'https://hg.mozilla.org/build/buildbot-configs', '--release-config', 'mozilla/release-firefox-mozilla-beta.py', '--credentials-file', 'BuildSlaves.py', '--username', 'ffxbld'], 1260, None, None, False, True), kwargs: {}, attempt #2
Executing: ['python', '/builds/slave/rel-m-beta-updates-00000000000/tools/scripts/updates/balrog-release-pusher.py', '--build-properties', 'buildprops_
(Assignee)

Comment 1

3 years ago
So we still have an uppercase product in the properties JSON: "product": "Firefox"
(Assignee)

Comment 2

3 years ago
...except, balrog-release-pusher.py pulls its product from the release config's "productName" attribute, which then passes that long as lowercase.

One thing we could do to fix this is pull the product from the properties instead...but that seems like a less authoratative place than the release config. Calling .capitalize() on the release config's product might be OK for now, because this is only used for firefox/thunderbird.

I want to see if we can just uppercase productName in the release config though...
(Assignee)

Comment 3

3 years ago
Created attachment 8424138 [details] [diff] [review]
capitalize in script

So, productName is used in a million places, including some things that compare it against a lowercase string. We also already .capitalize() in a few places. This isn't ideal, but it's probably the best trade-off for now...
Attachment #8424138 - Flags: review?(nthomas)
Given the fallout, perhaps a special case for B2G in Balrog would be less-intrusive ?
(Assignee)

Comment 5

3 years ago
(In reply to Nick Thomas [:nthomas] from comment #4)
> Given the fallout, perhaps a special case for B2G in Balrog would be
> less-intrusive ?

Well, that wouldn't help with getting the right cases for Firefox and Thunderbird here. There's an argument to be made that Balrog should ignore the case and turn it into the correct thing though, I suppose. I'm not particularly keen on it, but it's an option.
(Assignee)

Comment 6

3 years ago
(In reply to Ben Hearsum [:bhearsum] from comment #5)
> (In reply to Nick Thomas [:nthomas] from comment #4)
> > Given the fallout, perhaps a special case for B2G in Balrog would be
> > less-intrusive ?
> 
> Well, that wouldn't help with getting the right cases for Firefox and
> Thunderbird here. There's an argument to be made that Balrog should ignore
> the case and turn it into the correct thing though, I suppose. I'm not
> particularly keen on it, but it's an option.

Can we find a way to move forward here early next week? I realized this is continuing to bust releases =\
Flags: needinfo?(nthomas)
Comment on attachment 8424138 [details] [diff] [review]
capitalize in script

*stamp* Sorry for the delay.
Attachment #8424138 - Flags: review?(nthomas) → review+
Flags: needinfo?(nthomas)
(Assignee)

Comment 8

3 years ago
Comment on attachment 8424138 [details] [diff] [review]
capitalize in script

Thanks Nick.
Attachment #8424138 - Flags: checked-in+
(Assignee)

Comment 9

3 years ago
Should be fixed...I think there's a release happening today in which this will be verified.
Status: NEW → RESOLVED
Last Resolved: 3 years ago
Resolution: --- → FIXED
(Assignee)

Comment 10

3 years ago
This did indeed work for 30.0b8.
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.