Closed Bug 1453980 Opened 2 years ago Closed 6 months ago

documentation on how to build/release MozillaBuild


( :: MozillaBuild, task)

Not set


(Not tracked)



(Reporter: kmoir, Assigned: RyanVM)


(Blocks 1 open bug)


Ryan, as per our discussion yesterday about the build team and ownership of MozillaBuild, I wanted to understand the build and release process for a new version.  (I looked in the repo and didn't see anything) Is there any documentation on this process? gps mentioned a custom vm is required to build. Could you document the process and then one of us can go through the document and ensure we can replicate the process?
Assignee: nobody → ryanvm
There's no need for a custom VM anymore. I completely overhauled packaging back in the 3.0 days with the main impetus being getting rid of that requirement. MozillaBuild is completely self-hosted now :).

That said, doing the actual packaging in a throwaway VM isn't a bad idea just to avoid polluting your real system (since some installers do run during packaging). I just use the Edge test VMs Microsoft makes available from their site these days:

To package it, one needs to simply run in the repo. There's a pretty large comment at the top of it with usage instructions:

In general, I tried to gratuitously comment to explain what's going on throughout as well, but suggestions are always welcome for clarifying things.

Beyond that, it's a matter of getting the final package signed (per our discussion yesterday) - see bug 1421450 as a recent example. I usually run it through VirusTotal just to be safe too.

Then upload to S3 in the right place. One needs the appropriate bits to do so, but I would assume gps and others on your team have them already.

Then send the announcement to the relevant lists and update the wiki: (which has links to the previous announcements).

If anything needs clarification, don't hesitate to ask!
Flags: needinfo?(kmoir)
Oh, one minor gotcha these days - nodejs by default has some *really* long paths than can anger the packaging gods, so I've had to resort to adding |-o "c:\m"| to my invocations to use shorter-length staging directory than the default one. Yay Windows.
Could you document all of this in a README in the repo?
Flags: needinfo?(kmoir)
Flags: needinfo?(ryanvm)
Blocks: 1525066

Pushed by
Add packaging instructions for MozillaBuild.

Closed: 6 months ago
Resolution: --- → FIXED

Let me know if anything in there isn't clear enough. Happy to provide pointers as needed.

Flags: needinfo?(ryanvm)
You need to log in before you can comment on or make changes to this bug.