| 
									
										
										
										
											2015-07-20 18:59:26 +03:00
										 |  |  | #root = File.join(File.dirname(__FILE__), "..") | 
					
						
							|  |  |  | #$LOAD_PATH.push root unless $LOAD_PATH.include? root | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # require File.join(File.dirname(__FILE__), "workers") | 
					
						
							|  |  |  | require "providers/provider_factory" | 
					
						
							|  |  |  | require "commands/stack" | 
					
						
							|  |  |  | require "db/mongo/models/stack/stack_factory" | 
					
						
							|  |  |  | require "db/mongo/models/report" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class StackSyncWorker < Worker | 
					
						
							|  |  |  |   include StackCommands | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-07-21 17:13:10 +03:00
										 |  |  |   def perform(dir, provider, stack_id, owner, conf) | 
					
						
							|  |  |  |     call(conf, provider, dir) do |mongo, provider, out, file| | 
					
						
							| 
									
										
										
										
											2015-07-20 18:59:26 +03:00
										 |  |  |       stack = mongo.stack(stack_id) | 
					
						
							|  |  |  |       o = { | 
					
						
							|  |  |  |         "file" => file, | 
					
						
							|  |  |  |         "_id" => jid, | 
					
						
							|  |  |  |         "created_by" => owner, | 
					
						
							|  |  |  |         "project" => stack.project, | 
					
						
							|  |  |  |         "deploy_env" => stack.deploy_env, | 
					
						
							| 
									
										
										
										
											2015-07-21 17:13:10 +03:00
										 |  |  |         "type" => ::Devops::Model::Report::STACK_TYPE | 
					
						
							| 
									
										
										
										
											2015-07-20 18:59:26 +03:00
										 |  |  |       } | 
					
						
							| 
									
										
										
										
											2015-07-21 17:13:10 +03:00
										 |  |  |       mongo.save_report(::Devops::Model::Report.new(o)) | 
					
						
							| 
									
										
										
										
											2015-07-20 18:59:26 +03:00
										 |  |  | 
 | 
					
						
							|  |  |  |       status = sync_stack_till_not_in_progress_proc.call(out, stack, mongo) | 
					
						
							|  |  |  |       status | 
					
						
							|  |  |  |     end | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  | end |