Skip to content

Sign Your Work

Alberto P. Marti edited this page May 23, 2020 · 12 revisions

OpenNebula uses the Apache License version 2.0 (as found in the LICENSE file in the project’s GitHub repo) to strike a balance between open contribution and allowing you to use the software however you would like to. The Apache License version 2.0 is a permissive open source license that allows you to freely use, modify, distribute and sell your own products that include software under the Apache License version 2.0.

Before we can merge your contribution into OpenNebula, you need to give us permission to do so. Since you're an author of a creative work (a piece of code, or some documentation), you automatically own the copyright for that work. OpenNebula can't legally use that contribution unless you give us permission to do so.

The OpenNebula project uses a mechanism known as a Developer Certificate of Origin (DCO) to manage this process. The DCO is a legally binding statement that asserts that you are the creator of your contribution, and that you wish to allow OpenNebula to use your work.

The text of the DCO (developercertificate.org) is fairly simple:

Developer Certificate of Origin
Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
660 York Street, Suite 102,
San Francisco, CA 94110 USA

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
    have the right to submit it under the open source license
    indicated in the file; or

(b) The contribution is based upon previous work that, to the best
    of my knowledge, is covered under an appropriate open source
    license and I have the right under that license to submit that
    work with modifications, whether created in whole or in part
    by me, under the same open source license (unless I am
    permitted to submit under a different license), as indicated
    in the file; or

(c) The contribution was provided directly to me by some other
    person who certified (a), (b) or (c) and I have not modified
    it.

(d) I understand and agree that this project and the contribution
    are public and that a record of the contribution (including all
    personal information I submit with it, including my sign-off) is
    maintained indefinitely and may be redistributed consistent with
    this project or the open source license(s) involved.

Acknowledgement of this permission is done using a sign-off process in Git. The sign-off is a simple line at the end of the explanation for the patch. If you are willing to agree to these terms, you just add a line to every git commit message:

Signed-off-by: Joe Smith <joe.smith@email.com> If you set your user.name and user.email as part of your git configuration, you can sign your commit automatically with git commit -s.

Pull Requests with commits that do not contain a signed-off by the author won't be accepted

You have to use your real name (i.e. pseudonyms or anonymous contributions cannot be made). This is because the DCO is a legally binding document, granting the OpenNebula project the right to use your work.

If you have more questions about Developer Certificates of Origin, why they are required, what they mean, and how to configure your system to use them, get in touch with the OpenNebula's Open Source Community Manager at community-manager@opennebula.io