module Validators class DeployEnv::DeployEnvs < Base def valid? envs = @model.deploy_envs.map {|d| d.identifier} non_uniq = envs.uniq.select{|u| envs.count(u) > 1} unless non_uniq.empty? @msg = "Deploy environment(s) '#{non_uniq.join("', '")}' is/are not unique" return false end @model.deploy_envs.each do |d| d.validate! end true end def message "Invalid project: #{@msg}." end end end