Skip to content

Commit

Permalink
Bug 1859885 - Add support for Thunderbird monthly releases (#1373)
Browse files Browse the repository at this point in the history
Bug 1859885 - Add support for Thunderbird monthly releases via comm-release.

Thunderbird monthly transition hack for product-details:

There's a period where the "latest stable" release of Thunderbird is built from
comm-esr115 while comm-release will be used for "rc" quality builds that are not
considered generally available.
LATEST_THUNDERBIRD_VERSION should continue to point to the latest "115esr" version
during this period.
  • Loading branch information
jfx2006 committed Mar 12, 2024
1 parent 9c78dce commit 304641f
Show file tree
Hide file tree
Showing 6 changed files with 47 additions and 9 deletions.
20 changes: 18 additions & 2 deletions api/src/shipit_api/admin/product_details.py
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,8 @@
"LATEST_THUNDERBIRD_ALPHA_VERSION": str,
"LATEST_THUNDERBIRD_DEVEL_VERSION": str,
"LATEST_THUNDERBIRD_NIGHTLY_VERSION": str,
"THUNDERBIRD_ESR": str,
"THUNDERBIRD_ESR_NEXT": str,
},
)
IndexListing = str
Expand Down Expand Up @@ -534,8 +536,11 @@ def get_primary_builds(
thunderbird_versions["LATEST_THUNDERBIRD_VERSION"],
thunderbird_versions["LATEST_THUNDERBIRD_DEVEL_VERSION"],
thunderbird_versions["LATEST_THUNDERBIRD_NIGHTLY_VERSION"],
thunderbird_versions["THUNDERBIRD_ESR"],
]
)
if thunderbird_versions["THUNDERBIRD_ESR_NEXT"]:
versions.add(thunderbird_versions["THUNDERBIRD_ESR_NEXT"])
else:
raise click.ClickException(f'We don\'t generate product history for "{product.value}" product.')

Expand Down Expand Up @@ -883,14 +888,25 @@ def get_thunderbird_versions(releases: typing.List[shipit_api.common.models.Rele
"LATEST_THUNDERBIRD_VERSION": "52.6.0",
"LATEST_THUNDERBIRD_ALPHA_VERSION": "54.0a2",
"LATEST_THUNDERBIRD_DEVEL_VERSION": "59.0b2",
"LATEST_THUNDERBIRD_NIGHTLY_VERSION": "60.0a1"
"LATEST_THUNDERBIRD_NIGHTLY_VERSION": "60.0a1",
"THUNDERBIRD_ESR": "115.8.0esr",
"THUNDERBIRD_ESR_NEXT": ""
}
"""
return dict(
LATEST_THUNDERBIRD_VERSION=get_latest_version(releases, Product.THUNDERBIRD, shipit_api.common.config.THUNDERBIRD_RELEASE_BRANCH),
LATEST_THUNDERBIRD_VERSION=get_latest_version(releases, Product.THUNDERBIRD, shipit_api.common.config.THUNDERBIRD_OLD_RELEASE_BRANCH),
LATEST_THUNDERBIRD_DEVEL_VERSION=get_latest_version(releases, Product.THUNDERBIRD, shipit_api.common.config.THUNDERBIRD_BETA_BRANCH),
LATEST_THUNDERBIRD_NIGHTLY_VERSION=shipit_api.common.config.LATEST_THUNDERBIRD_NIGHTLY_VERSION,
LATEST_THUNDERBIRD_ALPHA_VERSION=shipit_api.common.config.LATEST_THUNDERBIRD_ALPHA_VERSION,
THUNDERBIRD_ESR=get_firefox_esr_version(
releases, f"{shipit_api.common.config.THUNDERBIRD_ESR_BRANCH_PREFIX}{shipit_api.common.config.CURRENT_ESR}", Product.THUNDERBIRD
),
THUNDERBIRD_ESR_NEXT=get_firefox_esr_next_version(
releases,
f"{shipit_api.common.config.THUNDERBIRD_ESR_BRANCH_PREFIX}{shipit_api.common.config.ESR_NEXT}",
Product.THUNDERBIRD,
shipit_api.common.config.ESR_NEXT,
),
)


Expand Down
3 changes: 1 addition & 2 deletions api/src/shipit_api/admin/settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -162,12 +162,11 @@
# fmt: off
if APP_CHANNEL == "production":
MATRIX_NOTIFICATIONS_OWNERS_PER_PRODUCT = {
"thunderbird": ["rjl", "wsmwk"],
"thunderbird": ["rjl", "wsmwk", "dandarnell"],
"default": ["sheriffduty", "ciduty", "releaseduty"]
}
MATRIX_NOTIFICATIONS_ROOMS_PER_PRODUCT = {
"thunderbird": [
"!tBWwNyfeKqGvkNpdDL:mozilla.org", # #releaseduty:mozilla.org
"!xPTYfLywxFMryjbnJl:mozilla.org", # #tbdrivers:mozilla.org
],
"default": [
Expand Down
4 changes: 3 additions & 1 deletion api/src/shipit_api/common/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -80,8 +80,10 @@
LATEST_THUNDERBIRD_ALPHA_VERSION = "54.0a2"
LATEST_THUNDERBIRD_NIGHTLY_VERSION = "125.0a1"
# TODO: Need to update this every cycle
THUNDERBIRD_RELEASE_BRANCH = "releases/comm-esr115"
THUNDERBIRD_RELEASE_BRANCH = "releases/comm-release"
THUNDERBIRD_OLD_RELEASE_BRANCH = "releases/comm-esr115"
THUNDERBIRD_BETA_BRANCH = "releases/comm-beta"
THUNDERBIRD_ESR_BRANCH_PREFIX = "releases/comm-esr"

# Mixed
HG_PREFIX = "https://hg.mozilla.org"
Expand Down
8 changes: 8 additions & 0 deletions api/tests/test_release.py
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,7 @@ def test_parse_version(product, version, expectation, result):
("firefox", "57.0.1", {"57.0": [], "56.0.1": [], "56.0": []}, False),
("thunderbird", "57.0", {"56.0": [], "55.0": []}, False),
("thunderbird", "57.0", {"56.0": [], "56.0b4": [], "55.0": []}, True),
("firefox", "115.8.0esr", None, False),
("firefox", "70.0b4", {"69.0b15": [], "69.0b16": [], "70.0b3": []}, False),
("devedition", "70.0b4", {"70.0b3": [], "70.0b1": [], "70.0b2": []}, False),
),
Expand All @@ -88,6 +89,7 @@ def test_is_rc(product, version, partial_updates, result):
("focus-android", "95.0.0", "95.0.1"),
("firefox-android", "108.0.0", "108.0.1"),
("firefox-android", "109.0", "109.0.1"),
("thunderbird", "115.8.0esr", "115.8.1esr"),
),
)
def test_bump_version(product, version, result):
Expand All @@ -105,6 +107,9 @@ def test_bump_version(product, version, result):
("firefox", "60.5.0esr", True),
("fennec", "65.0b8", False),
("fennec", "65.0", False),
("thunderbird", "116.0b2", False),
("thunderbird", "116.0", False),
("thunderbird", "115.2.0esr", False),
),
)
def test_is_partner_enabled(product, version, result):
Expand All @@ -121,6 +126,9 @@ def test_is_partner_enabled(product, version, result):
("firefox", "60.5.0esr", False),
("fennec", "65.0b8", False),
("fennec", "65.0", False),
("thunderbird", "116.0b2", False),
("thunderbird", "116.0", False),
("thunderbird", "115.2.0esr", False),
),
)
def test_is_eme_free_enabled(product, version, result):
Expand Down
13 changes: 13 additions & 0 deletions api/tests/test_tasks.py
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,19 @@
{"name": "ship_firefox", "in_previous_graph_ids": True},
],
),
(
["promote_thunderbird", "push_thunderbird", "ship_thunderbird"],
"thunderbird",
"129.0.1",
None,
None,
does_not_raise(),
[
{"name": "promote_thunderbird", "in_previous_graph_ids": True},
{"name": "push_thunderbird", "in_previous_graph_ids": True},
{"name": "ship_thunderbird", "in_previous_graph_ids": True},
],
),
),
)
def test_extract_our_flavors(avail_flavors, product, version, partial_updates, product_key, expectation, result):
Expand Down
8 changes: 4 additions & 4 deletions frontend/src/configs/production.js
Original file line number Diff line number Diff line change
Expand Up @@ -89,10 +89,10 @@ module.exports = {
disableable: false,
},
{
prettyName: 'ESR102',
project: 'comm-esr102',
branch: 'releases/comm-esr102',
repo: 'https://hg.mozilla.org/releases/comm-esr102',
prettyName: 'Release',
project: 'comm-release',
branch: 'releases/comm-release',
repo: 'https://hg.mozilla.org/releases/comm-release',
enableReleaseEta: false,
disableable: false,
},
Expand Down

0 comments on commit 304641f

Please sign in to comment.