From 6f08eaa1883760f1deb3ade92888cc92b430d257 Mon Sep 17 00:00:00 2001 From: William Durand Date: Thu, 25 Sep 2025 12:58:20 +0000 Subject: [PATCH] Bug 1989205 - Update recommended.xpi file to fix a test (permafailure) for ESR. r=robwu a=dmeehan DONTBUILD MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The new XPI file has been generated from this PR [1], and signed by the AMO -dev instance (which uses the nonprod cert). FTR since this add-on needs a recommendation state, we must add the add-on to the "By Firefox" promoted group via the AMO admin before getting the version signed. Before: ``` $ xpidump old.xpi MANIFEST: ID : N/A Version : 2.0 Enterprise: No RECOMMENDATION: [Line] SIGNATURES: PKCS7: └── PRESENT / PRODUCTION / SHA-1 / REGULAR ADD-ON └── Certificates: └── Common Name (CN): signingca1.addons.mozilla.org Organizational Unit (OU): Mozilla AMO Production Signing Service End Date : 2025-04-04T00:00:00Z └── Common Name (CN): {811d77f1-f306-4187-9251-b4ff99bad60b} Organizational Unit (OU): Production End Date : 2030-09-15T16:50:45Z COSE: └── PRESENT / PRODUCTION / ES256 / REGULAR ADD-ON └── Certificates: └── Common Name (CN): signingca1.addons.mozilla.org Organizational Unit (OU): Mozilla AMO Production Signing Service End Date : 2025-04-04T00:00:00Z └── Common Name (CN): {811d77f1-f306-4187-9251-b4ff99bad60b} Organizational Unit (OU): Production End Date : 2030-09-15T16:50:45Z ``` After: ``` $ xpidump new.xpi MANIFEST: ID : recommended-line@test.mozilla.org Version : 3.0 Enterprise: No RECOMMENDATION: [Line] SIGNATURES: PKCS7: └── PRESENT / STAGING / SHA-256 / REGULAR ADD-ON └── Certificates: └── Common Name (CN): cas-intermediate-amo-ca-staging Organizational Unit (OU): Mozilla Staging Signing Service End Date : 2050-12-31T00:00:00Z └── Common Name (CN): recommended-line@test.mozilla.org Organizational Unit (OU): Production End Date : 2035-09-17T07:29:49Z COSE: └── PRESENT / STAGING / ES256 / REGULAR ADD-ON └── Certificates: └── Common Name (CN): cas-intermediate-amo-ca-staging Organizational Unit (OU): Mozilla Staging Signing Service End Date : 2050-12-31T00:00:00Z └── Common Name (CN): recommended-line@test.mozilla.org Organizational Unit (OU): Production End Date : 2035-09-17T07:29:49Z ``` [1]: https://github.com/mozilla/mozilla-central-test-xpis/pull/15 Differential Revision: https://phabricator.services.mozilla.com/D265576 --- .../xpinstall/browser_doorhanger_installs.js | 10 +++++++--- .../extensions/test/xpinstall/recommended.xpi | Bin 7884 -> 7982 bytes 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/toolkit/mozapps/extensions/test/xpinstall/browser_doorhanger_installs.js b/toolkit/mozapps/extensions/test/xpinstall/browser_doorhanger_installs.js index cd8d20d4656f..029c4efe8d74 100644 --- a/toolkit/mozapps/extensions/test/xpinstall/browser_doorhanger_installs.js +++ b/toolkit/mozapps/extensions/test/xpinstall/browser_doorhanger_installs.js @@ -577,7 +577,11 @@ var TESTS = [ async function test_recommendedPostDownload() { await SpecialPowers.pushPrefEnv({ - set: [["extensions.postDownloadThirdPartyPrompt", true]], + set: [ + ["extensions.postDownloadThirdPartyPrompt", true], + // recommended.xpi is signed with AMO staging signature. + ["xpinstall.signatures.dev-root", true], + ], }); let triggers = encodeURIComponent( @@ -594,7 +598,7 @@ var TESTS = [ let notificationPromise = acceptAppMenuNotificationWhenShown( "addon-installed", - "{811d77f1-f306-4187-9251-b4ff99bad60b}" + "recommended-line@test.mozilla.org" ); installDialog.button.click(); @@ -604,7 +608,7 @@ var TESTS = [ is(installs.length, 0, "Should be no pending installs"); let addon = await AddonManager.getAddonByID( - "{811d77f1-f306-4187-9251-b4ff99bad60b}" + "recommended-line@test.mozilla.org" ); await addon.uninstall(); diff --git a/toolkit/mozapps/extensions/test/xpinstall/recommended.xpi b/toolkit/mozapps/extensions/test/xpinstall/recommended.xpi index e180decfc5928f022527cd13cf8f8a705c39d790..aa5bd62ce896ad580c27e410f2f86577f0dea858 100644 GIT binary patch delta 7449 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 delta 7314 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