require "db/mongo/models/deploy_env/cloud_deploy_env" module Devops module Model class DeployEnvEc2 < CloudDeployEnv =begin @Deprecated types :identifier => {:type => String, :empty => false}, :image => {:type => String, :empty => false}, :flavor => {:type => String, :empty => false}, :provider => {:type => String, :empty => false}, :expires => {:type => String, :empty => false, :nil => true}, :run_list => {:type => Array, :empty => true}, :users => {:type => Array, :empty => true}, :subnets => {:type => Array, :empty => true}, :groups => {:type => Array, :empty => false}, :stack_template => {:type => String, :empty => false, :nil => true} =end =begin set_validators ::Validators::DeployEnv::RunList, ::Validators::DeployEnv::Expiration, ::Validators::DeployEnv::Users, ::Validators::DeployEnv::Flavor, ::Validators::DeployEnv::Image, ::Validators::DeployEnv::SubnetBelongsToProvider, ::Validators::DeployEnv::Groups, ::Validators::DeployEnv::StackTemplate =end def initialize d={} super(d) if self.subnets.size > 1 self.subnets = [ self.subnets[0] ] end end def self.create hash DeployEnvEc2.new(hash) end def subnets_filter networks = provider_instance.networks unless self.subnets.empty? {"vpc-id" => networks.detect{|n| n["name"] == self.subnets[0]}["vpcId"] } end end end end end