Skip to content

mozilla-releng/balrog

Folders and files

NameName
Last commit message
Last commit date
Aug 19, 2024
Feb 6, 2025
Jan 24, 2023
Jun 17, 2024
Jan 24, 2025
Feb 6, 2025
Jan 16, 2024
Feb 6, 2025
Feb 13, 2025
Jan 14, 2025
Mar 20, 2024
Nov 27, 2024
Dec 2, 2019
Sep 12, 2016
Oct 4, 2016
Nov 5, 2019
Dec 4, 2023
Dec 12, 2024
Mar 27, 2019
Feb 6, 2025
Oct 3, 2023
Mar 21, 2023
Feb 6, 2025
Nov 26, 2019
Sep 19, 2016
Dec 7, 2022
Jan 23, 2025
Feb 8, 2022
Nov 12, 2024
Feb 6, 2025
Nov 12, 2019
Feb 6, 2025
Mar 15, 2022
Feb 12, 2025

Repository files navigation

CI Coverage

Balrog is the software that runs the server side component of the update system used by Firefox and other Mozilla products.

Installation

To run a development environment you must have Docker and docker-compose installed (if you're on Windows or Mac you need "Docker for Windows" or "Docker for Mac" at least v1.12.0)

If you have access to it, set up the machine token for the Agent. If you don't have access to it, just skip this step. The Agent will not function, but everything else will work.

$ export AUTH0_M2M_CLIENT_SECRET=abcdef123456

Run the following command to create and run the necessary containers:

$ docker-compose up

Note

On ARM (M1) chips

Make sure you are running a recent version of docker compose:

$ docker-compose version
Docker Compose version v2.2.3

Then, run the following command to create and run the necessary containers:

$ docker-compose -f docker-compose.yml -f docker-compose.arm.yml up

Once it completes, you should be able to access

You'll need to accept the self signed SSL certificates in your browser for each of the links above for everything (especially the UI) to function correctly.

You'll need to use the "Sign in..." button to do anything useful with the admin interface, which will ask you to sign in with a third party provider (eg: gmail, github). Once you've done that, run the following to create a local admin user to gain write access:

$ export LOCAL_ADMIN=<email address you signed in with>
$ docker-compose run balrogadmin create-local-admin

Tests

To execute all tests, simply run:

$ tox

This will run all unit tests within a Docker container.

Updating dependencies

To update the python dependencies, use ./maintenance/pin.sh, do not run pip-compile-multi manually.

Documentation

Balrog's documentation is hosted at http://mozilla-balrog.readthedocs.io/en/latest/index.html

License

Balrog is released under Mozilla Public License 2.0.