www.nico.schottelius.org/software/cdist/man/cdist-hacker.html

40 lines
6.4 KiB
HTML
Raw Normal View History

2011-03-25 21:14:52 +00:00
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2011-04-06 19:01:59 +00:00
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>cdist-hacker(7)</title><link rel="stylesheet" type="text/css" href="docbook-xsl.css" /><meta name="generator" content="DocBook XSL Stylesheets V1.76.1" /></head><body><div xml:lang="en" class="article" title="cdist-hacker(7)" lang="en"><div class="titlepage"><div><div><h2 class="title"><a id="id286811"></a>cdist-hacker(7)</h2></div><div><div class="author"><h3 class="author"><span class="firstname">Nico</span> <span class="surname">Schottelius</span></h3><code class="email">&lt;<a class="email" href="mailto:nico-cdist--@--schottelius.org">nico-cdist--@--schottelius.org</a>&gt;</code></div></div></div><hr /></div><div class="toc"><p><strong>Table of Contents</strong></p><dl><dt><span class="section"><a href="#_name">1. NAME</a></span></dt><dt><span class="section"><a href="#_welcome">2. WELCOME</a></span></dt><dt><span class="section"><a href="#_understanding_cdist_internals">3. UNDERSTANDING CDIST INTERNALS</a></span></dt><dt><span class="section"><a href="#_coding_conventions_everywhere">4. CODING CONVENTIONS (EVERYWHERE)</a></span></dt><dt><span class="section"><a href="#_coding_conventions_core">5. CODING CONVENTIONS (CORE)</a></span></dt><dt><span class="section"><a href="#_how_to_submit_stuff_for_inclusion_into_upstream_cdist">6. HOW TO SUBMIT STUFF FOR INCLUSION INTO UPSTREAM CDIST</a></span></dt><dt><span class="section"><a href="#_how_to_submit_a_new_type">7. HOW TO SUBMIT A NEW TYPE</a></span></dt><dt><span class="section"><a href="#_see_also">8. SEE ALSO</a></span></dt><dt><span class="section"><a href="#_copying">9. COPYING</a></span></dt></dl></div><div class="section" title="1. NAME"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_name"></a>1. NAME</h2></div></div></div><p>cdist-hacker - How to get (stuff) into cdist</p></div><div class="section" title="2. WELCOME"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_welcome"></a>2. WELCOME</h2></div></div></div><p>Welcome dear hacker! I invite you to a tour of pointers to
2011-03-25 21:14:52 +00:00
get into the usable configuration mangament system, cdist.</p><p>The first thing to know is probably that cdist is brought to
you by people who care about how code looks like and who think
twice before merging or implementing a feature: Less features
with good usability are far better than the opposite.</p></div><div class="section" title="3. UNDERSTANDING CDIST INTERNALS"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_understanding_cdist_internals"></a>3. UNDERSTANDING CDIST INTERNALS</h2></div></div></div><p>IF you are interested in how cdist internally works, you can open
bin/cdist-config and bin/cdist-deploy-to in your favorite editor and
read the scripts bin/cdist-deploy-to calls. The magnificent HACKERS_README
2011-04-06 19:01:59 +00:00
may be of great help as well.</p></div><div class="section" title="4. CODING CONVENTIONS (EVERYWHERE)"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_coding_conventions_everywhere"></a>4. CODING CONVENTIONS (EVERYWHERE)</h2></div></div></div><p>If something should be better done or needs to fixed, add the word FIXME
nearby, so grepping for FIXME gives all positions that need to be fixed.</p></div><div class="section" title="5. CODING CONVENTIONS (CORE)"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_coding_conventions_core"></a>5. CODING CONVENTIONS (CORE)</h2></div></div></div><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
2011-03-25 21:14:52 +00:00
All variables exported by cdist are prefixed with a double underscore (__)
</li><li class="listitem">
All cdist-internal variables are prefixed with <span class="emphasis"><em>_cdist</em></span> and are generally not exported.
2011-04-06 19:01:59 +00:00
</li></ul></div></div><div class="section" title="6. HOW TO SUBMIT STUFF FOR INCLUSION INTO UPSTREAM CDIST"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_how_to_submit_stuff_for_inclusion_into_upstream_cdist"></a>6. HOW TO SUBMIT STUFF FOR INCLUSION INTO UPSTREAM CDIST</h2></div></div></div><p>If you did some cool changes to cdist, which you value as a benefit for
2011-03-25 21:14:52 +00:00
everybody using cdist, youre welcome to propose inclusion into upstream.</p><p>There are though some requirements to ensure your changes dont break others
work nor kill the authors brain:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
Code submission must be done via git
</li><li class="listitem">
Code to be included should be branched of the upstream "master" branch
</li><li class="listitem">
Exception: Bugfixes to a version branch
</li><li class="listitem">
Code submissions must be in your master branch
</li><li class="listitem">
Exception: If you only want a comment on your code, but not an inclusion.
</li><li class="listitem">
Do not add conf/manifest/init - This file should only be touched in your
private branch!
</li></ul></div><p>As soon as your work meets these requirements, you can contact me
(IRC, Mailinglist, Phone, RFC 1149) and Ill check your code before
2011-04-06 19:01:59 +00:00
including it.</p></div><div class="section" title="7. HOW TO SUBMIT A NEW TYPE"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_how_to_submit_a_new_type"></a>7. HOW TO SUBMIT A NEW TYPE</h2></div></div></div><p>Submitting a type works as described above, with the additional requirement
2011-03-25 21:14:52 +00:00
that a corresponding manpage named man.text in asciidoc format with
the manpage-name "cdist-type__NAME" is included in the type directory
2011-04-06 17:35:40 +00:00
AND asciidoc is able to compile it (i.e. do NOT have to many "=" in the second
2011-04-06 19:01:59 +00:00
line).</p></div><div class="section" title="8. SEE ALSO"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_see_also"></a>8. SEE ALSO</h2></div></div></div><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
2011-03-25 21:14:52 +00:00
cdist(7)
2011-04-06 19:01:59 +00:00
</li></ul></div></div><div class="section" title="9. COPYING"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_copying"></a>9. COPYING</h2></div></div></div><p>Copyright (C) 2011 Nico Schottelius. Free use of this software is
2011-03-25 21:14:52 +00:00
granted under the terms of the GNU General Public License version 3 (GPLv3).</p></div></div></body></html>