From be1a1eb7ac44c45d7d5280e2ceabc29bef6e107c Mon Sep 17 00:00:00 2001 From: Jeff Epler Date: Wed, 3 Sep 2025 08:52:13 -0500 Subject: tools/ci.sh: Make this script runnable as command. This makes it easier to run a sequence of ci steps locally. A help message is also provided. Signed-off-by: Jeff Epler --- docs/develop/gettingstarted.rst | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'docs') diff --git a/docs/develop/gettingstarted.rst b/docs/develop/gettingstarted.rst index 329d218a8..b625a72c9 100644 --- a/docs/develop/gettingstarted.rst +++ b/docs/develop/gettingstarted.rst @@ -282,6 +282,30 @@ To run a selection of tests on a board/device connected over USB use: See also :ref:`writingtests`. +Using ci.sh locally +------------------- + +MicroPython uses GitHub Actions for continuous integration. +To reduce dependence on any specific CI system, the actual build steps for Unix-based builds are in the file ``tools/ci.sh``. +This can also be used as a script on developer desktops, with caveats: + +* For most steps, An Ubuntu/Debian system similar to the one used during CI is assumed. +* Some specific steps assume specific Ubuntu versions. +* The setup steps may invoke the system package manager to install packages, + download and install software from the internet, etc. + +To get a usage message including the list of commands, run: + +.. code-block:: bash + + $ tools/ci.sh --help + +As an example, you can build and test the unix minimal port with: + +.. code-block:: bash + + $ tools/ci.sh unix_minimal_build unix_minimal_run_tests + Folder structure ---------------- -- cgit v1.2.3