blob: a2c1aece08fc5a8d57b02a8bcee732d99b5370df [file] [log] [blame]
================================
Getting Started Developing KUnit
================================
Setting Up Your Work Environment
================================
Follow the instructions at :doc:`../usage/index`.
Familiarize Yourself with KUnit's Design
========================================
KUnit's design is discussed in the :doc:`design` section.
Contributing to code in the Linux kernel
========================================
Please follow the guide in the Linux kernel:
https://www.kernel.org/doc/html/latest/#introduction-to-kernel-development
In addition, remember to CC kunit-dev@googlegroups.com and
linux-kselftest@vger.kernel.org.
Contributing to code outside of the Linux kernel
================================================
This section is for contributing code to repos that live outside of
https://git.kernel.org.
Why is there a distinction?
---------------------------
The Linux kernel has been around a lot longer than KUnit, and thus has rules
that we have no say on. However, any code that lives outside of the kernel is
managed by Google; it's open source and everyone has equal right to it, but
because it is under the Google umbrella and not the Linux Foundation's umbrella
it means that there are certain rules we have to follow in one place, and
different rules in the other.
The details are not important, all you have to know is that if you send code to
the Linux kernel you should follow the rules above, and if you are contributing
to any other KUnit repos, you should follow the rules here.
If you still have confusion, feel free to reach out to us.
Sign the Contributor License Agreement
--------------------------------------
For any contributions not sent directly to the Linux kernel via the Linux
kernel mailing lists, we require contributors to sign our Contributor License
Agreement (CLA).
You may sign our CLA here: https://cla.developers.google.com/
.. note::
Your company may already have a CLA on file with Google.
Submitting Changes
------------------
We use `Gerrit <https://kunit-review.googlesource.com>`_ for all non-upstream
code reviews.
In order for Gerrit to accept your change, you must first make sure your commit
messages are formatted correctly. It should have a:
- ``Change-Id`` - see
https://gerrit-review.googlesource.com/Documentation/user-changeid.html for
more information.
- ``Signed-off-by`` - see
https://www.kernel.org/doc/html/latest/process/submitting-patches.html#sign-your-work-the-developer-s-certificate-of-origin
Now you are ready to send your change for review:
.. code-block:: bash
git push -u origin HEAD:refs/for/master
For more information on submitting changes through Gerrit, please see the
following section :doc:`gerrit-workflow`.