forked from ungleich-public/cdist
		
	doc -> docs (pypi)
Signed-off-by: Nico Schottelius <nico@brief.schottelius.org>
This commit is contained in:
		
					parent
					
						
							
								a221e6a233
							
						
					
				
			
			
				commit
				
					
						6d1e4d06cf
					
				
			
		
					 133 changed files with 12 additions and 12 deletions
				
			
		
							
								
								
									
										118
									
								
								docs/dev/todo/steven
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										118
									
								
								docs/dev/todo/steven
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,118 @@
 | 
			
		|||
autorequire:
 | 
			
		||||
   - objects defined in type manifests should be automatically prerequisites of the current object
 | 
			
		||||
   - __foo/some-id
 | 
			
		||||
      __other other-id --state present
 | 
			
		||||
      => require="__other/other-id" __foo/some-id
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
metaparameters:
 | 
			
		||||
   - steal the metaparameters from puppet:
 | 
			
		||||
 | 
			
		||||
   # I have to be there before the other one
 | 
			
		||||
   __directory /etc/ssh \
 | 
			
		||||
      --before __file/etc/ssh/sshd_config
 | 
			
		||||
 | 
			
		||||
   # the other one has to be there before me
 | 
			
		||||
   __file /etc/ssh/sshd_config \
 | 
			
		||||
      --after __directory/etc/ssh
 | 
			
		||||
 | 
			
		||||
   # if I change, tell the other one about it
 | 
			
		||||
   __file /etc/ssh/sshd_config \
 | 
			
		||||
      --notify __init_script/etc/rc.d/sshd
 | 
			
		||||
 | 
			
		||||
   # whenever the other one changes, I want to know
 | 
			
		||||
   __init_script /etc/rc.d/sshd \
 | 
			
		||||
      --subscribe __file/etc/ssh/sshd_config
 | 
			
		||||
 | 
			
		||||
   - how does a type react to a received 'event'?
 | 
			
		||||
      - maybe something like:
 | 
			
		||||
         __some_type/
 | 
			
		||||
            manifest
 | 
			
		||||
            ...
 | 
			
		||||
            gencode-refresh
 | 
			
		||||
            ...
 | 
			
		||||
      - gencode-refresh -> code-refresh -> ssh $target sh -e code-refresh
 | 
			
		||||
   
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
logging:
 | 
			
		||||
   - logging from type emulator without clobbering stdout
 | 
			
		||||
      maybe implement logging server as described here [1]
 | 
			
		||||
   [1] http://docs.python.org/py3k/howto/logging-cookbook.html#configuration-server-example
 | 
			
		||||
 | 
			
		||||
   - use different logger to limit output to current area of interest,
 | 
			
		||||
      e.g.
 | 
			
		||||
         explorer.$target_host: explorer related messages for the run for $target_host
 | 
			
		||||
         manifest.$target_host: manifest related messages for the run for $target_host
 | 
			
		||||
         ...
 | 
			
		||||
      then one could filter e.g. on explorer.*
 | 
			
		||||
 | 
			
		||||
   - more granular debug output,
 | 
			
		||||
   [2] http://blog.ooz.ie/2011/03/python-logging-extending-standard.html
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
tests:
 | 
			
		||||
 | 
			
		||||
   __init__():
 | 
			
		||||
      - sets up env: __target_host
 | 
			
		||||
 | 
			
		||||
   run_initial_manifest():
 | 
			
		||||
      - parameter is actually used (from __init__)
 | 
			
		||||
      - ensure changing the manifest actually runs a different manifest
 | 
			
		||||
      -> give ConfigInstall Constructor different manifest
 | 
			
		||||
         -> different manifest is executed.
 | 
			
		||||
      - test all submitted (from core to type manifest) variables:
 | 
			
		||||
         - ENVIRONMENT
 | 
			
		||||
         - they are set
 | 
			
		||||
         - they contain the correct values
 | 
			
		||||
 | 
			
		||||
   run_type_manifest():
 | 
			
		||||
      - test all submitted (from core to type manifest) variables:
 | 
			
		||||
         - ENVIRONMENT
 | 
			
		||||
         - they are set
 | 
			
		||||
         - they contain the correct values
 | 
			
		||||
      - same tests as for test_initial_manifest_*?
 | 
			
		||||
 | 
			
		||||
   run_manifest():
 | 
			
		||||
      - test all submitted variables:
 | 
			
		||||
         - ENVIRONMENT
 | 
			
		||||
            - including __debug, if debug
 | 
			
		||||
         - they are set
 | 
			
		||||
         - they contain the correct values
 | 
			
		||||
      - does $require work?
 | 
			
		||||
      - check that exception raised, if manifest is not existent
 | 
			
		||||
 | 
			
		||||
   object_run():
 | 
			
		||||
      - ensure no object is run twice
 | 
			
		||||
      - ensure requirements are taken into account?
 | 
			
		||||
         - and order of run is adjusted
 | 
			
		||||
      - check (from extern?) that all needed variables are setup
 | 
			
		||||
      - ensure no code-{local, remote} is created, 
 | 
			
		||||
         if gencode is not producing code
 | 
			
		||||
      - ensure THAT code-{local, remote} contains what gencode created
 | 
			
		||||
      - abort if gencode-* fails
 | 
			
		||||
      - abort if code-* fails
 | 
			
		||||
         - abort == raise(FooException)
 | 
			
		||||
      - gencode-*: ensure ENVIRONMENT is setup correctly
 | 
			
		||||
 | 
			
		||||
   run_type_explorer()
 | 
			
		||||
      - ensure ALL type explores have been run
 | 
			
		||||
      - ensure output is saved to correct path
 | 
			
		||||
      - ensure a type with {0,1,2} explorers works ?
 | 
			
		||||
         - none, one, multiple
 | 
			
		||||
      - ensure ENVIRONMENT is setup correctly
 | 
			
		||||
      - fails if ANY of the given explorer fails
 | 
			
		||||
 | 
			
		||||
   run_global_explorers():
 | 
			
		||||
      - ensure ALL type explores have been run
 | 
			
		||||
      - ensure output is saved to correct path
 | 
			
		||||
      - ensure a type with {0,1,2} explorers works ?
 | 
			
		||||
         - none, one, multiple
 | 
			
		||||
      - ensure ENVIRONMENT is setup correctly
 | 
			
		||||
      - fails if ANY of the given explorer fails
 | 
			
		||||
      
 | 
			
		||||
Code fixes needed:
 | 
			
		||||
 | 
			
		||||
   - shutil, os.mkdir, etc. everywhere: catch/reraise exceptions correctly
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue