[llvm] [docs] Expand HowToAddABuilder with guidance on testing locally (PR #115024)

David Spickett via llvm-commits llvm-commits at lists.llvm.org
Wed Nov 6 02:23:10 PST 2024


================
@@ -179,6 +179,74 @@ Here are the steps you can follow to do so:
    buildbot.tac file to change the port number from 9994 to 9990 and start it
    again.
 
+Testing a Builder Config Locally
+================================
+
+It's possible to test a builder running against a local version of LLVM's
+buildmaster configuration. This can be helpful to allow quickly identifying
+and iterating over fixes to any issues in either the changes that introduce
+the new builder, or the machine configuration for your worker (preinstalled
+packages etc). A buildmaster launched in this "local testing" mode will bind
+only to local interfaces, use SQLite as the database, use a fixed password for
+workers, and disable things like GitHub authentication.
+
+* Within a checkout of `llvm-zorg <https://github.com/llvm/llvm-zorg>`_,
+  create and activate a Python `venv
+  <https://docs.python.org/3/library/venv.html>`_ and install the necessary
+  dependencies.
+
+    .. code-block:: bash
+
+       python -m venv bbenv
+       source bbenv/bin/activate
+       pip install buildbot{,-console-view,-grid-view,-waterfall-view,-worker,-www}==3.11.7 urllib3
+
+* Initialise the necessary buildmaster files, link to the configuration in
+  ``llvm-zorg`` and run a litmus check (run in the directory of your choice):
----------------
DavidSpickett wrote:

Choice implies there are good and bad choices. This is an arbitrary directory.

How about:
Initialise the necessary buildmaster files, link to the configuration in ``llvm-zorg`` and run a litmus check. This step can be run from any directory.

Also I know litmus check is a generic kind of term but maybe just say "and ask buildbot to check the configuration". Then the reader can see the link between that text and the `buildbot checkconfig` command below.

https://github.com/llvm/llvm-project/pull/115024


More information about the llvm-commits mailing list