Skip to content

mozilla/PollBot

Repository files navigation

PollBot

Code of conduct Travis CI status Coverage Documentation Status What's Deployed

PollBot is an hardworking little robot (microservice) that frees its human masters from the toilsome task of polling for the state of things during the Firefox release process.

Version 1.0 will provide, at a minimum, these API resources:

  1. build exists on archive.mozilla.org
  2. release notes published
  3. product-details.mozilla.org JSON contains the release
  4. download links are on mozilla.org and they work
  5. security advisories are published and links work

Development

Create a local dev environment:

make build

Then you can run various dev-related tasks. For a list, see:

make help

To start the development server you need this in your .env:

TELEMETRY_API_KEY - See https://sql.telemetry.mozilla.org/users/me

Equipped with these you can now run PollBot:

make run

That should start a server on http://localhost:9876.

Deployment

Stage is automatically upgraded when new releases are made. A release is basically a tag with the same name. To make a release run:

./bin/make-release.py --help

License

MPL v2 (see LICENSE)

Configuration

PollBot is a currently a stateless service, which means there are no database services to configure.

However you can configure the following parameters using environment variables:

VARIABLE Description
PORT The service PORT, by default runs on 9876
VERSION_FILE The JSON version file, default PWD/version.json
CACHE_MAX_AGE The Cache-Control max-age value, default to 30 seconds. Set it to 0 to set it to no-cache
TELEMETRY_API_KEY API KEY to use to query the Telemetry Service