| 
					
				 | 
			
			
				@@ -218,6 +218,25 @@ module NeoInfra 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       lambdas 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    def list_rds 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      rds = [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      Rds.all.each do |r| 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        rds << { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          'name'              => r.name, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          'size'              => r.size, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          'engine'            => r.engine, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          'engine_version'    => r.engine_version, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          'multi_az'          => r.multi_az, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          'endpoint'          => r.endpoint, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          'port'              => r.port, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          'allocated_storage' => r.allocated_storage, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          'owner'             => r.owner.name, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          'az'                => r.az.az, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      rds 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     def load_lambda 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       @cfg.accounts.each do |account| 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         base_conf = { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -314,22 +333,25 @@ module NeoInfra 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           aws_access_key_id: account[:key], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           aws_secret_access_key: account[:secret] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        s = Fog::AWS::RDS.new(base_conf) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        s.servers.each do |rds| 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          next unless Rds.where(name: rds.id).empty? 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          r = Rds.new( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            name: rds.id, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            size: rds.flavor_id, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            engine: rds.engine, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            engine_version: rds.engine_version, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            multi_az: rds.multi_az.to_s, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            endpoint: rds.endpoint['Address'], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            port: rds.endpoint['Port'], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            allocated_storage: rds.allocated_storage 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          r.save 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          RdsAz.create(from_node: r, to_node: Az.where(az: rds.availability_zone).first) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          RdsAccount.create(from_node: r, to_node: AwsAccount.where(name: account[:name]).first) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        regions.each do |region| 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          region_conf = { region: region } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          s = Fog::AWS::RDS.new(region_conf.merge(base_conf)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          s.servers.each do |rds| 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            next unless Rds.where(name: rds.id).empty? 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            r = Rds.new( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              name: rds.id, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              size: rds.flavor_id, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              engine: rds.engine, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              engine_version: rds.engine_version, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              multi_az: rds.multi_az.to_s, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              endpoint: rds.endpoint['Address'], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              port: rds.endpoint['Port'], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              allocated_storage: rds.allocated_storage 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            r.save 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            RdsAz.create(from_node: r, to_node: Az.where(az: rds.availability_zone).first) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            RdsAccount.create(from_node: r, to_node: AwsAccount.where(name: account[:name]).first) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     end 
			 |