summaryrefslogtreecommitdiff
path: root/app/models/deployment.rb
diff options
context:
space:
mode:
authorWinnie Hellmann <winnie@gitlab.com>2018-10-22 22:06:05 +0200
committerWinnie Hellmann <winnie@gitlab.com>2018-10-22 22:06:05 +0200
commit53be95daf41fc4e59deab149485210835e7e54cd (patch)
tree3f377dcc6289049581e2473b7e12f260e774784f /app/models/deployment.rb
parent3fb7a1f97a812b7b2b5e80a8a0575cb7bfd2d3c4 (diff)
parentd6be7ed79557ce31a5d0062ceea00c877157a6c7 (diff)
downloadgitlab-ce-53be95daf41fc4e59deab149485210835e7e54cd.tar.gz
Merge branch 'master' into scheduled-manual-jobs-environment-play-buttons
Conflicts: spec/javascripts/environments/environment_actions_spec.js
Diffstat (limited to 'app/models/deployment.rb')
-rw-r--r--app/models/deployment.rb11
1 files changed, 11 insertions, 0 deletions
diff --git a/app/models/deployment.rb b/app/models/deployment.rb
index ed61135cb47..f1bce1a1daf 100644
--- a/app/models/deployment.rb
+++ b/app/models/deployment.rb
@@ -19,6 +19,17 @@ class Deployment < ActiveRecord::Base
after_create :create_ref
after_create :invalidate_cache
+ scope :for_environment, -> (environment) { where(environment_id: environment) }
+
+ def self.last_for_environment(environment)
+ ids = self
+ .for_environment(environment)
+ .select('MAX(id) AS id')
+ .group(:environment_id)
+ .map(&:id)
+ find(ids)
+ end
+
def commit
project.commit(sha)
end