mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-24 13:21:05 +00:00
c1c2126fce
Add support for submitting stacks of commits to Lando for queueing on Try, instead of pushing to hg.mozilla.org directly. This patch implements the Device Code Authorization flow for Auth0, simple changeset discovery and patch gathering, and submissing to Lando via HTTP POST. Add a `try.txt` virtualenv site that contains packages from the common virtualenv as well as the `auth0-python` package for verifying Auth0 JWTs. Use this new virtualenv for `mach try` and related subcommands. Add a `--push-to-lando` flag that controls whether the push will be made via the Lando API or using the VCS to hg.mozilla.org directly. Create a `lando.py` module in the `tryselect` package that handles the details around submitting to Lando. Authentication is handled by the Device Code Authorization flow, and the returned access token is saved to the mozbuild state directory. Auth0 details are added to the `.lando.ini` file in the repo root, and a `LANDO_TRY_USE_DEV` environment variable can be set to control submitting to the prod or dev Lando environments. This module also includes patch stack gathering and discovery via `mozversioncontrol`. mozversioncontrol's `Repository` subclass is extended with helper functions to gather patch files from Mercurial and Git. We also add a `try_config_commit` context manager that creates a temporary commit to hold try syntax commit messages and/or a `try_task_config.json` file, which is removed from version control on submission. The `mach try` cram tests now use a separate virtualenv that must be built before running, causing unexpected output in the tests. Run `mach try --help` in the test setup to force the virtualenv to be built before running any test. `mach try chooser` would previously install packages for a small web application from a `requirements.txt` file when run. Install these via the new `try.txt` site environment instead. The required dependencies are also added to the `python-test.txt` site since they will cause some tests to fail due to the missing dependencies. Differential Revision: https://phabricator.services.mozilla.com/D187641
20 lines
760 B
INI
20 lines
760 B
INI
[autoformat]
|
|
# Set `enabled = True/False` to enable/disable Lando automated code formatting.
|
|
enabled = True
|
|
|
|
[lando-prod]
|
|
# Lando production Auth0 configuration.
|
|
auth0_domain = auth.mozilla.auth0.com
|
|
auth0_client_id = ccpmWbDAMz1pxHIWF4vqkdr0ScdgDyyM
|
|
auth0_audience = https://api.lando.services.mozilla.com
|
|
auth0_scope = openid email profile lando https://sso.mozilla.com/claim/groups
|
|
api_domain = api.lando.services.mozilla.com
|
|
|
|
[lando-dev]
|
|
# Lando dev server Auth0 configuration.
|
|
auth0_domain = auth.mozilla.auth0.com
|
|
auth0_client_id = TAtuZwbJd4SRtWg0YznfS1YYCatOvvnX
|
|
auth0_audience = https://api.lando.devsvcdev.mozaws.net
|
|
auth0_scope = openid email profile lando https://sso.mozilla.com/claim/groups
|
|
api_domain = api.dev.lando.nonprod.cloudops.mozgcp.net
|