From d670c3006e6e44901bce0d53cc4768d1d80ffa92 Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Thu, 17 Jun 2021 10:07:47 +0000 Subject: Add latest changes from gitlab-org/gitlab@14-0-stable-ee --- .../admin/application_settings_controller.rb | 9 ++++---- app/controllers/admin/cohorts_controller.rb | 23 ++++++++++++++++++--- app/controllers/admin/users_controller.rb | 24 ++-------------------- app/controllers/confirmations_controller.rb | 2 +- .../projects/environments_controller.rb | 4 +--- .../projects/merge_requests/content_controller.rb | 11 +--------- 6 files changed, 30 insertions(+), 43 deletions(-) (limited to 'app/controllers') diff --git a/app/controllers/admin/application_settings_controller.rb b/app/controllers/admin/application_settings_controller.rb index 5ddeb9630ba..7960e5d64d0 100644 --- a/app/controllers/admin/application_settings_controller.rb +++ b/app/controllers/admin/application_settings_controller.rb @@ -208,7 +208,10 @@ class Admin::ApplicationSettingsController < Admin::ApplicationController params[:application_setting][:import_sources]&.delete("") params[:application_setting][:restricted_visibility_levels]&.delete("") - params[:application_setting][:required_instance_ci_template] = nil if params[:application_setting][:required_instance_ci_template].blank? + + if params[:application_setting].key?(:required_instance_ci_template) + params[:application_setting][:required_instance_ci_template] = nil if params[:application_setting][:required_instance_ci_template].empty? + end remove_blank_params_for!(:elasticsearch_aws_secret_access_key, :eks_secret_access_key) @@ -217,9 +220,7 @@ class Admin::ApplicationSettingsController < Admin::ApplicationController params.delete(:domain_denylist_raw) if params[:domain_denylist] params.delete(:domain_allowlist_raw) if params[:domain_allowlist] - params.require(:application_setting).permit( - visible_application_setting_attributes - ) + params[:application_setting].permit(visible_application_setting_attributes) end def recheck_user_consent? diff --git a/app/controllers/admin/cohorts_controller.rb b/app/controllers/admin/cohorts_controller.rb index c29b5224b09..8163f062b62 100644 --- a/app/controllers/admin/cohorts_controller.rb +++ b/app/controllers/admin/cohorts_controller.rb @@ -1,11 +1,28 @@ # frozen_string_literal: true class Admin::CohortsController < Admin::ApplicationController + include Analytics::UniqueVisitsHelper + feature_category :devops_reports - # Backwards compatibility. Remove it and routing in 14.0 - # @see https://gitlab.com/gitlab-org/gitlab/-/issues/299303 def index - redirect_to cohorts_admin_users_path + @cohorts = load_cohorts + track_cohorts_visit + end + + private + + def load_cohorts + cohorts_results = Rails.cache.fetch('cohorts', expires_in: 1.day) do + CohortsService.new.execute + end + + CohortsSerializer.new.represent(cohorts_results) + end + + def track_cohorts_visit + if request.format.html? && request.headers['DNT'] != '1' + track_visit('i_analytics_cohorts') + end end end diff --git a/app/controllers/admin/users_controller.rb b/app/controllers/admin/users_controller.rb index e397ecbadaf..700acc46d8d 100644 --- a/app/controllers/admin/users_controller.rb +++ b/app/controllers/admin/users_controller.rb @@ -2,9 +2,8 @@ class Admin::UsersController < Admin::ApplicationController include RoutableActions - include Analytics::UniqueVisitsHelper - before_action :user, except: [:index, :cohorts, :new, :create] + before_action :user, except: [:index, :new, :create] before_action :check_impersonation_availability, only: :impersonate before_action :ensure_destroy_prerequisites_met, only: [:destroy] before_action :check_ban_user_feature_flag, only: [:ban] @@ -14,7 +13,7 @@ class Admin::UsersController < Admin::ApplicationController PAGINATION_WITH_COUNT_LIMIT = 1000 def index - return redirect_to cohorts_admin_users_path if params[:tab] == 'cohorts' + return redirect_to admin_cohorts_path if params[:tab] == 'cohorts' @users = User.filter_items(params[:filter]).order_name_asc @users = @users.search_with_secondary_emails(params[:search_query]) if params[:search_query].present? @@ -24,11 +23,6 @@ class Admin::UsersController < Admin::ApplicationController @users = @users.without_count if paginate_without_count? end - def cohorts - @cohorts = load_cohorts - track_cohorts_visit - end - def show end @@ -376,20 +370,6 @@ class Admin::UsersController < Admin::ApplicationController def log_impersonation_event Gitlab::AppLogger.info(_("User %{current_user_username} has started impersonating %{username}") % { current_user_username: current_user.username, username: user.username }) end - - def load_cohorts - cohorts_results = Rails.cache.fetch('cohorts', expires_in: 1.day) do - CohortsService.new.execute - end - - CohortsSerializer.new.represent(cohorts_results) - end - - def track_cohorts_visit - if request.format.html? && request.headers['DNT'] != '1' - track_visit('i_analytics_cohorts') - end - end end Admin::UsersController.prepend_mod_with('Admin::UsersController') diff --git a/app/controllers/confirmations_controller.rb b/app/controllers/confirmations_controller.rb index 560369a8de4..0b833e149a4 100644 --- a/app/controllers/confirmations_controller.rb +++ b/app/controllers/confirmations_controller.rb @@ -13,7 +13,7 @@ class ConfirmationsController < Devise::ConfirmationsController protected def after_resending_confirmation_instructions_path_for(resource) - return users_almost_there_path(email: resource.email) unless Feature.enabled?(:soft_email_confirmation) + return users_almost_there_path unless Feature.enabled?(:soft_email_confirmation) stored_location_for(resource) || dashboard_projects_path end diff --git a/app/controllers/projects/environments_controller.rb b/app/controllers/projects/environments_controller.rb index 76de9a83c87..8519841ee16 100644 --- a/app/controllers/projects/environments_controller.rb +++ b/app/controllers/projects/environments_controller.rb @@ -15,9 +15,7 @@ class Projects::EnvironmentsController < Projects::ApplicationController push_frontend_feature_flag(:prometheus_computed_alerts) push_frontend_feature_flag(:disable_metric_dashboard_refresh_rate) end - before_action do - push_frontend_feature_flag(:canary_ingress_weight_control, default_enabled: true) - end + before_action :authorize_read_environment!, except: [:metrics, :additional_metrics, :metrics_dashboard, :metrics_redirect] before_action :authorize_create_environment!, only: [:new, :create] before_action :authorize_stop_environment!, only: [:stop] diff --git a/app/controllers/projects/merge_requests/content_controller.rb b/app/controllers/projects/merge_requests/content_controller.rb index dfc060c9204..399745151b1 100644 --- a/app/controllers/projects/merge_requests/content_controller.rb +++ b/app/controllers/projects/merge_requests/content_controller.rb @@ -14,8 +14,6 @@ class Projects::MergeRequests::ContentController < Projects::MergeRequests::Appl SLOW_POLLING_INTERVAL = 5.minutes.in_milliseconds def widget - check_mergeability_async! - respond_to do |format| format.json do render json: serializer(MergeRequestPollWidgetEntity) @@ -40,13 +38,6 @@ class Projects::MergeRequests::ContentController < Projects::MergeRequests::Appl def serializer(entity) serializer = MergeRequestSerializer.new(current_user: current_user, project: merge_request.project) - serializer.represent(merge_request, { async_mergeability_check: params[:async_mergeability_check] }, entity) - end - - def check_mergeability_async! - return unless Feature.enabled?(:check_mergeability_async_in_widget, merge_request.project, default_enabled: :yaml) - return if params[:async_mergeability_check].blank? - - merge_request.check_mergeability(async: true) + serializer.represent(merge_request, {}, entity) end end -- cgit v1.2.3