forked from ungleich-public/cdist
		
	Add 'CDIST_ORDER_DEPENDENCY kills parallelization'
This commit is contained in:
		
					parent
					
						
							
								28082c710a
							
						
					
				
			
			
				commit
				
					
						02eb6c75a7
					
				
			
		
					 1 changed files with 45 additions and 0 deletions
				
			
		| 
						 | 
					@ -237,6 +237,10 @@ It essentially helps you to build up blocks of code that build upon each other
 | 
				
			||||||
 | 
					
 | 
				
			||||||
This can be helpful, but it can also be the source of *evil*.
 | 
					This can be helpful, but it can also be the source of *evil*.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					CDIST_ORDER_DEPENDENCY easily causes unobvious dependency cycles
 | 
				
			||||||
 | 
					~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Let's see an example. Suppose you have special init manifest where among other
 | 
					Let's see an example. Suppose you have special init manifest where among other
 | 
				
			||||||
things you are assuring that remote host has packages `sudo` and `curl`
 | 
					things you are assuring that remote host has packages `sudo` and `curl`
 | 
				
			||||||
installed.
 | 
					installed.
 | 
				
			||||||
| 
						 | 
					@ -316,3 +320,44 @@ Then, in init manifest you combine your complex types. It is:
 | 
				
			||||||
* easier to follow
 | 
					* easier to follow
 | 
				
			||||||
* easier to maintain
 | 
					* easier to maintain
 | 
				
			||||||
* easier to debug.
 | 
					* easier to debug.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					CDIST_ORDER_DEPENDENCY kills parallelization
 | 
				
			||||||
 | 
					~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Suppose you have defined CDIST_ORDER_DEPENDENCY and then, among other things,
 | 
				
			||||||
 | 
					you specify creation of three, by nature independent, files.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					**init**
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.. code-block:: sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   CDIST_ORDER_DEPENDENCY=1
 | 
				
			||||||
 | 
					   export CDIST_ORDER_DEPENDENCY
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   ...
 | 
				
			||||||
 | 
					   __file /tmp/file1
 | 
				
			||||||
 | 
					   __file /tmp/file2
 | 
				
			||||||
 | 
					   __file /tmp/file3
 | 
				
			||||||
 | 
					   ...
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Due to defined CDIST_ORDER_DEPENDENCY cdist will execute them in specified order.
 | 
				
			||||||
 | 
					It is better to use CDIST_ORDER_DEPENDENCY in well defined blocks:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					**init**
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.. code-block:: sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   CDIST_ORDER_DEPENDENCY=1
 | 
				
			||||||
 | 
					   export CDIST_ORDER_DEPENDENCY
 | 
				
			||||||
 | 
					   ...
 | 
				
			||||||
 | 
					   unset CDIST_ORDER_DEPENDENCY
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   __file /tmp/file1
 | 
				
			||||||
 | 
					   __file /tmp/file2
 | 
				
			||||||
 | 
					   __file /tmp/file3
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   CDIST_ORDER_DEPENDENCY=1
 | 
				
			||||||
 | 
					   export CDIST_ORDER_DEPENDENCY
 | 
				
			||||||
 | 
					   ...
 | 
				
			||||||
 | 
					   unset CDIST_ORDER_DEPENDENCY
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue