summaryrefslogtreecommitdiff
path: root/app/controllers
diff options
context:
space:
mode:
authorGrzegorz Bizon <grzesiek.bizon@gmail.com>2017-02-04 10:38:16 +0100
committerFilipa Lacerda <filipa@gitlab.com>2017-02-09 11:11:12 +0000
commit2aeb45bdb55a634a490bf535242a6f8c10aaa938 (patch)
treef234952d0437f5f9516eddf8db93e0d9fc6f77a1 /app/controllers
parentb3309bb2fad36372b1e4821410691fa9f720bbe4 (diff)
downloadgitlab-ce-2aeb45bdb55a634a490bf535242a6f8c10aaa938.tar.gz
Add support for environment scopes in controller
Diffstat (limited to 'app/controllers')
-rw-r--r--app/controllers/projects/environments_controller.rb19
1 files changed, 12 insertions, 7 deletions
diff --git a/app/controllers/projects/environments_controller.rb b/app/controllers/projects/environments_controller.rb
index 0d1095da6c2..34b081b3e41 100644
--- a/app/controllers/projects/environments_controller.rb
+++ b/app/controllers/projects/environments_controller.rb
@@ -9,17 +9,22 @@ class Projects::EnvironmentsController < Projects::ApplicationController
before_action :verify_api_request!, only: :terminal_websocket_authorize
def index
- @scope = params[:scope]
- @environments = project.environments.includes(:last_deployment)
+ @environments = project.environments
+ .includes(:last_deployment)
+ .with_state(params[:scope] || :available)
respond_to do |format|
format.html
format.json do
- render json: EnvironmentSerializer
- .new(project: @project, user: @current_user)
- .with_pagination(request, response)
- .within_folders
- .represent(@environments)
+ render json: {
+ environments: EnvironmentSerializer
+ .new(project: @project, user: @current_user)
+ .with_pagination(request, response)
+ .within_folders
+ .represent(@environments),
+ available_count: project.environments.available.count,
+ stopped_count: project.environments.stopped.count
+ }
end
end
end