fluke/devops-service/db/mongo/models/model_with_provider.rb
Tim Lianov 03dc3d8d99 v3
2018-04-04 22:44:39 +03:00

32 lines
756 B
Ruby

module Devops
module Model
module ModelWithProvider
class << self
def included(mod)
mod.field :provider, type: String
mod.validates_presence_of :provider, message: "'provider' is undefined"
end
end
def check_provider_type hash
raise Devops::Exception::ParserError.new("Parameter 'provider' is not a string") unless hash["provider"].is_a?(String)
end
def validate_provider
providers = Provider.providers
errors.add(:provider, "Invalid provider, available values: '#{providers.join("', '")}'") unless providers.include?(self.provider)
end
def provider_hash
{
"provider" => self.provider
}
end
end
end
end