forked from ungleich-public/cdist
		
	+discussion about restructering/ "object-orientation"
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
This commit is contained in:
		
					parent
					
						
							
								b3f914f6f6
							
						
					
				
			
			
				commit
				
					
						8a044919eb
					
				
			
		
					 1 changed files with 112 additions and 0 deletions
				
			
		
							
								
								
									
										112
									
								
								doc/dev/logs/2011-10-05
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										112
									
								
								doc/dev/logs/2011-10-05
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,112 @@
 | 
			
		|||
Config/Install/Deploy/Run:
 | 
			
		||||
   target host
 | 
			
		||||
   remote_cmd_prefix - ssh user@bla sudo foo?????
 | 
			
		||||
   remote_cp_prefix - cp statt scp oder so
 | 
			
		||||
 | 
			
		||||
   debug -> env für alles += __debug
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Storage/Metaobject/Tree? == Path?
 | 
			
		||||
   base_dir?
 | 
			
		||||
   nimmt objekte
 | 
			
		||||
 | 
			
		||||
   Sammelt Objekte
 | 
			
		||||
 | 
			
		||||
   Ist prepared hier?
 | 
			
		||||
 | 
			
		||||
Object
 | 
			
		||||
   "Infos" / Datenhalde
 | 
			
		||||
 | 
			
		||||
   Base_Dir-Abhängigkeit? - wo
 | 
			
		||||
 | 
			
		||||
   out_dir - wo speichern
 | 
			
		||||
 | 
			
		||||
   nur eigenes verzeichnis interessant?
 | 
			
		||||
      -> nicht für shell code / aka gencode!
 | 
			
		||||
      -> __global abhängigkeit
 | 
			
		||||
 | 
			
		||||
   object.gencode()?
 | 
			
		||||
 | 
			
		||||
   hast du type-explorer?
 | 
			
		||||
      ja?
 | 
			
		||||
         führe JEDEN remote aus
 | 
			
		||||
         speichere ausgabe in object
 | 
			
		||||
      nein:
 | 
			
		||||
         fertig
 | 
			
		||||
   hast du gencode-{local,remote}?
 | 
			
		||||
      ja?
 | 
			
		||||
         führe local oder remote aus
 | 
			
		||||
         speichere ausgabe in s/^gen//
 | 
			
		||||
      nein:
 | 
			
		||||
         fertig
 | 
			
		||||
      
 | 
			
		||||
   hast du code-{local,remote}?
 | 
			
		||||
      ja?
 | 
			
		||||
         führe local oder remote aus
 | 
			
		||||
      nein:
 | 
			
		||||
         fertig
 | 
			
		||||
 | 
			
		||||
   ich habe ...
 | 
			
		||||
      object_id
 | 
			
		||||
      type
 | 
			
		||||
         type.singleton() == False -> require object_id
 | 
			
		||||
      parameter gegeben
 | 
			
		||||
      requirements / order
 | 
			
		||||
 | 
			
		||||
   type_explorer := methode zum ausführen?
 | 
			
		||||
 | 
			
		||||
   cdist.object.Object(type, id)
 | 
			
		||||
 | 
			
		||||
   methoden:
 | 
			
		||||
      gen_code
 | 
			
		||||
      code
 | 
			
		||||
      run_manifest
 | 
			
		||||
         manifest == ort
 | 
			
		||||
 | 
			
		||||
Type
 | 
			
		||||
   singleton: ja / nein
 | 
			
		||||
   install: ja / nein
 | 
			
		||||
   type_explorer := liste
 | 
			
		||||
 | 
			
		||||
   optional_parameter
 | 
			
		||||
   required_parameter
 | 
			
		||||
 | 
			
		||||
   TypeExplorer 
 | 
			
		||||
      verwandt oder == explorer
 | 
			
		||||
      Verwandschaft klären!
 | 
			
		||||
 | 
			
		||||
   sehr abhängig von base_dir!</behauptung :)>
 | 
			
		||||
      - welche gibt es?
 | 
			
		||||
      - was für optionen haben sie
 | 
			
		||||
 | 
			
		||||
   cdist.type.Type("/path/to/type")
 | 
			
		||||
      Tree/Path vieh, das liste von $_ speichert
 | 
			
		||||
      Einfach iterieren
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Explorer
 | 
			
		||||
   execute(env)
 | 
			
		||||
      env == __explorer -> nur im explorer
 | 
			
		||||
 | 
			
		||||
z.B. BaseExplorer oder andersherum GlobalExplorer
 | 
			
		||||
 | 
			
		||||
Manifest
 | 
			
		||||
 | 
			
		||||
Exec
 | 
			
		||||
   wrapper um auszuführen, 
 | 
			
		||||
   error handling,
 | 
			
		||||
   output redirection (variable, file, beides, socat :-)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
--------------------------------------------------------------------------------
 | 
			
		||||
 | 
			
		||||
- base_dir (conf/, type, ...)
 | 
			
		||||
- manifest (initiale)
 | 
			
		||||
   $methode_mit_inhalt_von_manifest?
 | 
			
		||||
      run_manifest(code)
 | 
			
		||||
         ob sinnvoll?
 | 
			
		||||
      geht auch mit stdin oder datei
 | 
			
		||||
 | 
			
		||||
      stdin -> muss in tmp-datei, für sh -e?
 | 
			
		||||
- 
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue