| 
					
				 | 
			
			
				@@ -101,6 +101,7 @@ module NeoInfra 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     def load_buckets 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      aws = NeoInfra::Aws.new 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       cw = NeoInfra::Cloudwatch.new 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       @cfg.accounts.each do |account| 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         base_conf = { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -108,25 +109,24 @@ module NeoInfra 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           aws_access_key_id: account[:key], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           aws_secret_access_key: account[:secret] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        s = Fog::Storage.new(base_conf) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        s.directories.each do |bucket| 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          next unless Bucket.where(name: bucket.key).empty? 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          begin 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        aws.regions.each do |region| 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          region_conf = { region: region } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          s = Fog::Storage.new(region_conf.merge(base_conf)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          s.directories.each do |bucket| 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            next unless bucket.location == region 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            next unless Bucket.where(name: bucket.key).empty? 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             vers = bucket.versioning?.to_s 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             crea = bucket.creation_date.to_s 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          rescue StandardError 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            vers = 'unknown' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            crea = 'unknown' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            b = Bucket.new( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              name: bucket.key, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              versioning: vers, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              creation: crea, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              size: cw.get_bucket_size(account[:key], account[:secret], bucket.location, bucket.key) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            b.save 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            BucketRegion.create(from_node: b, to_node: Region.where(region: bucket.location).first) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            BucketAccount.create(from_node: b, to_node: AwsAccount.where(name: account[:name]).first) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          b = Bucket.new( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            name: bucket.key, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            versioning: vers, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            creation: crea, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            size: cw.get_bucket_size(account[:key], account[:secret], bucket.location, bucket.key) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          b.save 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          BucketRegion.create(from_node: b, to_node: Region.where(region: bucket.location).first) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          BucketAccount.create(from_node: b, to_node: AwsAccount.where(name: account[:name]).first) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     end 
			 |