begin logfile for today
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
This commit is contained in:
		
					parent
					
						
							
								14cb98b4f9
							
						
					
				
			
			
				commit
				
					
						c929ce0977
					
				
			
		
					 1 changed files with 67 additions and 0 deletions
				
			
		
							
								
								
									
										67
									
								
								doc/dev/logs/2011-04-19
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										67
									
								
								doc/dev/logs/2011-04-19
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,67 @@
 | 
			
		|||
Meeting with: Steven, Thorsten, Nico
 | 
			
		||||
 | 
			
		||||
Problem: execute my code only if somebody else's changed something.
 | 
			
		||||
 | 
			
		||||
Proposals:
 | 
			
		||||
 | 
			
		||||
1) Introduce new binary (Steven)
 | 
			
		||||
 | 
			
		||||
gencode:
 | 
			
		||||
 | 
			
		||||
if has_changed __file/etc/nginx.conf; then
 | 
			
		||||
   echo mycode
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
2) Use -f plus new variable to cover .cdist/has_code:
 | 
			
		||||
 | 
			
		||||
if [ -f $global/objects/__file/etc/nginx.conf/$has_code ]; then
 | 
			
		||||
   echo mycode
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
And $has_code resolves to .cdist/has_code to cover the .cdist
 | 
			
		||||
directory.
 | 
			
		||||
 | 
			
		||||
3) Create a new tree that contains changed objects
 | 
			
		||||
 | 
			
		||||
if [ -e $global/changed/__file/etc/nginx.conf ]; then
 | 
			
		||||
   echo mycode
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
4) Use a \n seperated list
 | 
			
		||||
 | 
			
		||||
if grep -q __file/etc/nginx.conf $global/changed; then
 | 
			
		||||
   echo mycode
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
X) General problem (add to FAQ):
 | 
			
		||||
 | 
			
		||||
   When having "do something only if somebody else did something"
 | 
			
		||||
   it is possible that users get confused, because code will not
 | 
			
		||||
   be executed.
 | 
			
		||||
 | 
			
		||||
   This may especially happen in code development:
 | 
			
		||||
 | 
			
		||||
   a) User creates __file/etc/nginx.conf
 | 
			
		||||
   b) User creates a new type __nginx that restarts
 | 
			
		||||
      nginx, only if __file/etc/nginx.conf changed.
 | 
			
		||||
      But __file/etc/nginx.conf has already been deployed
 | 
			
		||||
      and thus will never be restarted.
 | 
			
		||||
--------------------------------------------------------------------------------
 | 
			
		||||
 | 
			
		||||
Introduce exclude/conflicts attribute for types?
 | 
			
		||||
 | 
			
		||||
   Handling in cdist vs. handling in the types themselves?
 | 
			
		||||
   
 | 
			
		||||
   Examples: __file, __link, __directory
 | 
			
		||||
 | 
			
		||||
   Need to handle errors on low level for those anyway.
 | 
			
		||||
 | 
			
		||||
   Conclusion: Wait until we need exclude in a different type.
 | 
			
		||||
 | 
			
		||||
   Pro:
 | 
			
		||||
      Throw error as soon as possible without touching the target.
 | 
			
		||||
 | 
			
		||||
   Contra:
 | 
			
		||||
      No needod for most cases.
 | 
			
		||||
      Very controversal for stuff like __package and __package_gem
 | 
			
		||||
      for instance: rails; Should those two conflict or not?
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue