diff --git a/app/models/role.rb b/app/models/role.rb index a3adbfd65..521d087f6 100644 --- a/app/models/role.rb +++ b/app/models/role.rb @@ -78,17 +78,17 @@ def unset_no_symlink! # tells if this role had a successful setup def setup_done? - deployed_at_least_once? && self.deployments.any?{|x| Deployment::SETUP_TASKS.include?(x.task) && x.success? } + deployed_at_least_once? && self.deployments.exists?(:conditions => {"deployments.task" => Deployment::SETUP_TASKS, "deployments.status" => Deployment::STATUS_SUCCESS}) end # tells if this role had a successful deployment (deploy) def deployed? - deployed_at_least_once? && self.deployments.any?{|x| Deployment::DEPLOY_TASKS.include?(x.task) && x.success? } + deployed_at_least_once? && self.deployments.exists?(:conditions => {"deployments.task" => Deployment::DEPLOY_TASKS, "deployments.status" => Deployment::STATUS_SUCCESS}) end # tells if this role had any deployment at all def deployed_at_least_once? - !self.deployments.empty? + self.deployments.exists? end def status