| 
									
										
										
										
											2011-03-24 15:26:06 +01:00
										 |  |  | cdist-hacker(7) | 
					
						
							|  |  |  | =============== | 
					
						
							|  |  |  | Nico Schottelius <nico-cdist--@--schottelius.org> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | NAME | 
					
						
							|  |  |  | ---- | 
					
						
							|  |  |  | cdist-hacker - How to get (stuff) into cdist | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | WELCOME | 
					
						
							|  |  |  | ------- | 
					
						
							|  |  |  | Welcome dear hacker! I invite you to a tour of pointers to | 
					
						
							|  |  |  | get into the usable configuration mangament system, cdist. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 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. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-04-06 22:13:30 +02:00
										 |  |  | REPORTING BUGS | 
					
						
							|  |  |  | -------------- | 
					
						
							|  |  |  | If you believe you've found a bug and verified that it is | 
					
						
							|  |  |  | in the latest version, drop a mail to the cdist mailing list, | 
					
						
							|  |  |  | subject prefixed with "[BUG] ". | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-03-24 15:26:06 +01:00
										 |  |  | UNDERSTANDING CDIST INTERNALS | 
					
						
							|  |  |  | ----------------------------- | 
					
						
							|  |  |  | 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 | 
					
						
							|  |  |  | may be of great help as well. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-04-06 20:21:36 +02:00
										 |  |  | CODING CONVENTIONS (EVERYWHERE) | 
					
						
							|  |  |  | ------------------------------- | 
					
						
							|  |  |  | 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. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-04-06 22:13:30 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-03-24 15:58:47 +01:00
										 |  |  | CODING CONVENTIONS (CORE) | 
					
						
							|  |  |  | ------------------------- | 
					
						
							|  |  |  | - All variables exported by cdist are prefixed with a double underscore (__) | 
					
						
							|  |  |  | - All cdist-internal variables are prefixed with __cdist_ and are generally not exported. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-03-24 15:26:06 +01:00
										 |  |  | HOW TO SUBMIT STUFF FOR INCLUSION INTO UPSTREAM CDIST | 
					
						
							|  |  |  | ----------------------------------------------------- | 
					
						
							|  |  |  | If you did some cool changes to cdist, which you value as a benefit for | 
					
						
							|  |  |  | everybody using cdist, you're welcome to propose inclusion into upstream. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | There are though some requirements to ensure your changes don't break others | 
					
						
							|  |  |  | work nor kill the authors brain: | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-06-02 08:14:50 +02:00
										 |  |  | - All files should contain the usual header (Author, Copying, etc.) | 
					
						
							| 
									
										
										
										
											2011-03-24 15:26:06 +01:00
										 |  |  | - Code submission must be done via git | 
					
						
							| 
									
										
										
										
											2011-03-24 15:58:47 +01:00
										 |  |  | - Do not add conf/manifest/init - This file should only be touched in your | 
					
						
							|  |  |  |   private branch! | 
					
						
							| 
									
										
										
										
											2011-04-18 08:35:52 +02:00
										 |  |  | - Code to be included should be branched of the upstream "master" branch | 
					
						
							|  |  |  |    - Exception: Bugfixes to a version branch | 
					
						
							|  |  |  | - Code submissions should be in your master branch | 
					
						
							|  |  |  |    - Other branches are fine as well, but you need to tell me which branch | 
					
						
							|  |  |  |      your work is in! | 
					
						
							|  |  |  | - If you developed more than **one** feature, consider submitting them in | 
					
						
							|  |  |  |   seperate branches. This way one feature can already be included, even if | 
					
						
							|  |  |  |   the other needs to be improved. | 
					
						
							| 
									
										
										
										
											2011-03-24 15:26:06 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | As soon as your work meets these requirements, you can contact me | 
					
						
							|  |  |  | (IRC, Mailinglist, Phone, RFC 1149) and I'll check your code before | 
					
						
							|  |  |  | including it. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | HOW TO SUBMIT A NEW TYPE | 
					
						
							|  |  |  | ------------------------ | 
					
						
							|  |  |  | Submitting a type works as described above, with the additional requirement | 
					
						
							|  |  |  | 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-05 20:38:22 +02:00
										 |  |  | AND asciidoc is able to compile it (i.e. do NOT have to many "=" in the second | 
					
						
							|  |  |  | line). | 
					
						
							| 
									
										
										
										
											2011-03-24 15:26:06 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | SEE ALSO | 
					
						
							|  |  |  | -------- | 
					
						
							|  |  |  | - cdist(7) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | COPYING | 
					
						
							|  |  |  | ------- | 
					
						
							|  |  |  | Copyright \(C) 2011 Nico Schottelius. Free use of this software is | 
					
						
							|  |  |  | granted under the terms of the GNU General Public License version 3 (GPLv3). |