gecko-dev/python/mach
Connor Sheehan 813445ccd8 Bug 1678668: print sentry error report number on mach command failure r=firefox-build-system-reviewers,mhentges
When mach errors out, an error report is sent to Sentry. This error
report contains information about the state of the interpreter during
the failure, details about the environment, installed packages and more.
Having this information available immediately when attempting to resolve
a bug report is generally desirable, instead of going through a back-and-forth
needinfo tag on Bugzilla or spending time asking the reporter questions on
Matrix.

This commit captures the Sentry ID returned from `sentry_sdk.capture_exception`
and prints it to the screen. If a user adds this line to their bug report (as
the error messages suggest) a build team member can enter this number into
Sentry to identify the exact report and debug the error. At minimum this will
reduce the amount of back-and-forth between the reporter and the assignee
required to resolve a bug. Optimally it should make bugs easier to spot and
reduce the time spent on end user support requests.

To use the Sentry ID to identify information about a specific bug report, the
bug assignee should open the Mozilla Sentry page for the `mach` project and
paste the ID into the search box, which will produce the full stack trace with
all submitted information.

Differential Revision: https://phabricator.services.mozilla.com/D100247
2021-01-05 16:39:22 +00:00
..
docs Bug 1670977 - Remove errant spaces from expression `fpath+=~/.zfunc` in `zsh` `mach` autocompletion docs r=ahal DONTBUILD 2020-10-13 20:33:17 +00:00
mach Bug 1678668: print sentry error report number on mach command failure r=firefox-build-system-reviewers,mhentges 2021-01-05 16:39:22 +00:00
README.rst
bash-completion.sh
metrics.yaml Bug 1655845 - Collect OS version information in `mach` telemetry r=firefox-build-system-reviewers,dmajor 2020-10-27 20:35:17 +00:00
pings.yaml Bug 1654074: Publish glean handle to mach commands r=firefox-build-system-reviewers,rstewart 2020-09-15 21:15:20 +00:00
setup.cfg
setup.py Bug 1654103: Standardize on Black for Python code in `mozilla-central`. 2020-10-26 18:34:53 +00:00

README.rst

====
mach
====

Mach (German for *do*) is a generic command dispatcher for the command
line.

To use mach, you install the mach core (a Python package), create an
executable *driver* script (named whatever you want), and write mach
commands. When the *driver* is executed, mach dispatches to the
requested command handler automatically.

To learn more, read the docs in ``docs/``.