xref: /aosp_15_r20/external/pigweed/pw_doctor/docs.rst (revision 61c4878ac05f98d0ceed94b57d316916de578985)
1*61c4878aSAndroid Build Coastguard Worker.. _module-pw_doctor:
2*61c4878aSAndroid Build Coastguard Worker
3*61c4878aSAndroid Build Coastguard Worker---------
4*61c4878aSAndroid Build Coastguard Workerpw_doctor
5*61c4878aSAndroid Build Coastguard Worker---------
6*61c4878aSAndroid Build Coastguard Worker``pw doctor`` confirms the environment is set up correctly. With ``--strict``
7*61c4878aSAndroid Build Coastguard Workerit checks that things exactly match what is expected and it checks that things
8*61c4878aSAndroid Build Coastguard Workerlook compatible without.
9*61c4878aSAndroid Build Coastguard Worker
10*61c4878aSAndroid Build Coastguard WorkerProjects that adjust the behavior of pw_env_setup may need to customize
11*61c4878aSAndroid Build Coastguard Workerthese checks, but unfortunately this is not generally supported yet.
12*61c4878aSAndroid Build Coastguard Worker
13*61c4878aSAndroid Build Coastguard WorkerChecks carried out by pw_doctor include:
14*61c4878aSAndroid Build Coastguard Worker
15*61c4878aSAndroid Build Coastguard Worker* The bootstrapped OS matches the current OS.
16*61c4878aSAndroid Build Coastguard Worker* ``PW_ROOT`` is defined and points to the root of the Pigweed repo.
17*61c4878aSAndroid Build Coastguard Worker
18*61c4878aSAndroid Build Coastguard Worker  - If your copy of pigweed is intentionally vendored and not a git repo (or
19*61c4878aSAndroid Build Coastguard Worker    submodule), set ``PW_DISABLE_ROOT_GIT_REPO_CHECK=1`` during bootstrap to
20*61c4878aSAndroid Build Coastguard Worker    suppress the anti-vendoring portion of this check.
21*61c4878aSAndroid Build Coastguard Worker
22*61c4878aSAndroid Build Coastguard Worker* The presubmit git hook is installed.
23*61c4878aSAndroid Build Coastguard Worker* Python is one of the :ref:`supported versions <docs-concepts-python-version>`.
24*61c4878aSAndroid Build Coastguard Worker* The Pigweed virtual env is active.
25*61c4878aSAndroid Build Coastguard Worker* CIPD is set up correctly and in use.
26*61c4878aSAndroid Build Coastguard Worker* The CIPD packages required by Pigweed are up to date.
27*61c4878aSAndroid Build Coastguard Worker* The platform support symlinks.
28*61c4878aSAndroid Build Coastguard Worker
29*61c4878aSAndroid Build Coastguard Worker.. note::
30*61c4878aSAndroid Build Coastguard Worker  The documentation for this module is currently incomplete.
31*61c4878aSAndroid Build Coastguard Worker
32*61c4878aSAndroid Build Coastguard WorkerConfiguration
33*61c4878aSAndroid Build Coastguard Worker=============
34*61c4878aSAndroid Build Coastguard WorkerOptions for ``pw doctor`` can be specified in the ``pigweed.json`` file
35*61c4878aSAndroid Build Coastguard Worker(see also :ref:`SEED-0101 <seed-0101>`). This is currently limited to one
36*61c4878aSAndroid Build Coastguard Workeroption.
37*61c4878aSAndroid Build Coastguard Worker
38*61c4878aSAndroid Build Coastguard Worker* ``new_bug_url``: What link is given to users be given for filing bugs. By
39*61c4878aSAndroid Build Coastguard Worker  default this is to the `Pigweed Bug Tracker_`.
40*61c4878aSAndroid Build Coastguard Worker
41*61c4878aSAndroid Build Coastguard Worker.. _Pigweed Bug Tracker: https://issues.pigweed.dev/new
42*61c4878aSAndroid Build Coastguard Worker
43*61c4878aSAndroid Build Coastguard Worker.. code-block::
44*61c4878aSAndroid Build Coastguard Worker
45*61c4878aSAndroid Build Coastguard Worker   {
46*61c4878aSAndroid Build Coastguard Worker     "pw": {
47*61c4878aSAndroid Build Coastguard Worker       "pw_doctor": {
48*61c4878aSAndroid Build Coastguard Worker         "new_bug_url": "https://example.com/bugs/new"
49*61c4878aSAndroid Build Coastguard Worker       }
50*61c4878aSAndroid Build Coastguard Worker     }
51*61c4878aSAndroid Build Coastguard Worker   }
52