Side loaded vs. AMO extension deployment

I have a Firefox extension that I install as part of application, so it is side loaded rather than hosted in the AMO. I need to update the extension so that it plays better with multiprocess Firefox, but I am not ready to release a new version of my application. Is there a way that I could push my extension to the AMO so that my current users would automatically get the update? If so, could it be hosted in a way that is not visible to all? (My extension is just a helper for my application, so it is not really useful by itself.)

1 Like

What is your current method for deployment of updates? Do you just bundle it with the application? Do you have an external (ie. not AMO) server that automatically pushes updates to existing users? Either of those approaches can continue, except that you will need to get each file signed. The only other possibility is for all users to switch to a non-branded Firefox version, which might be possible for a corporate system.

You can get your addon signed either by uploading to AMO, or using the new remote signing API. The addon does not need to be visible to all. The only way that existing users would automatically get an update from AMO is if the addon is not configured to look for updates on a different server (ie. no updateURL field in the manifest) remained hosted on AMO and if you allow it to be hosted at AMO. I think that can only happen if the addon is visible to everyone.

So it sounds like we would need to make our extension visible to all if we want to update via the AMO. I’ll have to talk that over with the rest of the team.

Thanks for your help.

I think you could host the updates yourself (after being signed), using the updateURL field in the manifest:
https://developer.mozilla.org/en-US/Add-ons/Install_Manifests#updateURL

(Of course, you’d probably need to release an update first using that field. But it might save you this hassle next time.)

You can definitely host the add-on outside AMO and have it set up to auto update itself. Adam’s link should be enough as a starting point, just remember to always sign your add-on before hosting it.