[libvirt] [PATCH 06/17] docs: add page describing contribution to libvirt

Daniel P. Berrange berrange at redhat.com
Mon Oct 31 12:41:47 UTC 2016


Add a page that describes what contributions libvirt is
looking for and how to get involved.

Signed-off-by: Daniel P. Berrange <berrange at redhat.com>
---
 docs/contribute.html.in | 140 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 140 insertions(+)
 create mode 100644 docs/contribute.html.in

diff --git a/docs/contribute.html.in b/docs/contribute.html.in
new file mode 100644
index 0000000..3686025
--- /dev/null
+++ b/docs/contribute.html.in
@@ -0,0 +1,140 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <body>
+    <h1>Contributing to libvirt</h1>
+
+    <p>
+      This page provides guidance on how to contribute to the
+      libvirt project
+    </p>
+
+    <ul id="toc"></ul>
+
+    <h2><a name="skills">Contributions required</a></h2>
+
+    <p>
+      The libvirt project is always looking for new contributors to
+      participate in ongoing activities. While code development is a
+      major part of the project, assistance is needed in many other
+      areas including documentation writing, bug triage, testing,
+      application integration, website / wiki content management,
+      translation, branding, social media and more. The only
+      requirement is an interest in virtualization and desire to
+      help.
+    </p>
+
+    <p>
+      The following is a non-exhaustive list of areas in which
+      people can contribute to libvirt. If you have ideas for
+      other contributions feel free to follow them.
+    </p>
+
+    <ul>
+      <li><strong>Software development</strong>. The core library / daemon (and
+        thus the bulk of coding) is written in C, but there are
+        language bindings written in Python, Perl, Java, Ruby,
+        Php, OCaml and Go. There are also higher level wrappers
+        mapping libvirt into other object frameworks, such GLib,
+        CIM and SNMP</li>
+      <li><strong>Translation</strong>. All the libvirt modules aim to support
+        translations where appropriate. All translation is
+        handling outside of the normal libvirt review process,
+        using the <a href="http://fedora.zanata.org">Fedora
+        instance</a> of the Zanata tool. Thus people wishing
+        to contribution to translation should join the Fedora
+        translation tool</li>
+      <li><strong>Documentation</strong>. There are docbook guides on various
+        aspects of libvirt, particularly application development
+        guides for the C library and Python, and a virsh command
+        reference. There is thus scope for work by people who are
+        familiar with using or developing against libvirt, to
+        write further content for these guides. There is also a
+        need for people to review existing content for copy editing
+        and identifying gaps in the docs</li>
+      <li><strong>Website / wiki curation</strong>. The bulk of the website is
+        maintained in the primary GIT repository, while the wiki
+        site uses mediawiki. In both cases there is a need for
+        people to both write new content and curate existing
+        content to identify outdated information, improve its
+        organization and target gaps.</li>
+      <li><strong>Testing</strong>. There are a number of tests suites that can run
+        automated tests against libvirt. The coverage of the tests
+        is never complete, so there is a need for people to create
+        new test suites and / or provide environments to actually
+        run the tests in a variety of deployment scenarios.</li>
+      <li><strong>Code analysis</strong>. The libvirt project has access to the coverity
+        tool to run static analysis against the codebase, however,
+        there are other types of code analysis that can be useful.
+        In particular fuzzing of the inputs can be very effective
+        at identifying problematic edge cases.</li>
+      <li><strong>Security handling</strong>. Downstream (operating system) vendors
+        who distribute libvirt may wish to propose a person to
+        be part of the security handling team, to get early access
+        to information about forthcoming vulnerability fixes.</li>
+      <li><strong>Evangalism</strong>. Work done by the project is of no benefit
+        unless the (potential) user community knows that it
+        exists. Thus it is critically important to the health
+        and future growth of the project, that there are a people
+        who evangalise the work created by the project. This can
+        take many forms, writing blog posts (about usage of features,
+        personal user experiances, areas for future work, and more),
+        syndicating docs and blogs via social media, giving user
+        group and/or conference talks about libvirt.</li>
+      <li><strong>User assistance</strong>. Since documentation
+        is never perfect, there are inevitably cases where users
+        will struggle to attain a deployment goal they have, or
+        run into trouble with managing an existing deployment.
+        While some users may be able to contact a software vendor
+        to obtain support, it is common to rely on community help
+        forums such as <a href="contact.html#email">libvirt users
+          mailing list</a>, or sites such as
+        <a href="http://stackoverflow.com/questions/tagged/libvirt">stackoverflow.</a>
+        People who are familiar with libvirt and have ability &
+        desire to help other users are encouraged to participate in
+        these help forums.</li>
+    </ul>
+
+    <h2><a name="comms">Communication</a></h2>
+
+    <p>
+      For full details on contacting other project contributors
+      read the <a href="contact.html">contact</a> page. There
+      are two main channels that libvirt uses for communication
+      between contributors:
+    </p>
+
+    <h3><a name="email">Mailing lists</a></h3>
+
+    <p>
+      The project has a number of
+      <a href="contact.html#email">mailing lists</a> for
+      general communication between contributors.
+      In general any design discussions and review
+      of contributions will take place on the mailing
+      lists, so it is important for all contributors
+      to follow the traffic.
+    </p>
+
+    <h3><a name="irc">Instant messaging / chat</a></h3>
+
+    <p>
+      Contributors to libvirt are encouraged to join the
+      <a href="contact.html#irc">IRC channel</a> used by
+      the project, where they can have live conversations
+      with others members.
+    </p>
+
+    <h2><a name="outreach">Student / outreach coding programs</a></h2>
+
+    <p>
+      Since 2016, the libvirt project directly participates as an
+      organization in the <a href="http://wiki.libvirt.org/page/Google_Summer_of_Code_Ideas">Google Summer of Code program</a>. Prior to
+      this the project had a number of students in the program
+      via a joint application with the QEMU project. People are
+      encouraged to look at both the libvirt and QEMU programs
+      to identify potentially interesting projects to work on.
+    </p>
+
+  </body>
+</html>
-- 
2.9.3




More information about the libvir-list mailing list