Remove permitting of params

- It is now being done in ProxyService class.
This commit is contained in:
rpereira2 2019-04-03 15:01:44 +05:30
parent eac3e2302c
commit 16772b91f0
2 changed files with 5 additions and 21 deletions

View file

@ -5,13 +5,11 @@ class Projects::Environments::PrometheusApiController < Projects::ApplicationCon
before_action :environment
def proxy
permitted = permit_params
result = Prometheus::ProxyService.new(
environment,
request.method,
permitted[:proxy_path],
permitted.except(:proxy_path) # rubocop: disable CodeReuse/ActiveRecord
params[:proxy_path],
params
).execute
if result.nil?
@ -24,20 +22,15 @@ class Projects::Environments::PrometheusApiController < Projects::ApplicationCon
if result[:status] == :success
render status: result[:http_status], json: result[:body]
else
render status: result[:http_status] || :bad_request,
render(
status: result[:http_status] || :bad_request,
json: { status: result[:status], message: result[:message] }
)
end
end
private
def permit_params
params.permit([
:proxy_path, :query, :time, :timeout, :start, :end, :step, { match: [] },
:match_target, :metric, :limit
])
end
def environment
@environment ||= project.environments.find(params[:id])
end

View file

@ -36,15 +36,6 @@ describe Projects::Environments::PrometheusApiController do
expect(response).to have_gitlab_http_status(:ok)
expect(json_response).to eq(prometheus_json_body)
end
it 'filters unknown params' do
get :proxy, params: environment_params(unknown_param: 'value')
params = ActionController::Parameters.new('query' => '1').permit!
expect(Prometheus::ProxyService)
.to have_received(:new)
.with(environment, 'GET', 'query', params)
end
end
context 'with nil result' do