diff --git a/app/controllers/api/v1/sonarqubes_controller.rb b/app/controllers/api/v1/sonarqubes_controller.rb index cf5437f02..4e69111dd 100644 --- a/app/controllers/api/v1/sonarqubes_controller.rb +++ b/app/controllers/api/v1/sonarqubes_controller.rb @@ -168,6 +168,23 @@ class Api::V1::SonarqubesController < Api::V1::BaseController render_ok data end + def analyze_doxygen + config = Rails.application.config_for(:configuration) + sonarqube_config = config.dig('sonarqube') + doxygen_url = sonarqube_config['doxygen'] + + url = "#{doxygen_url}/files/#{@project.owner.login}/#{@project.identifier}/html/analyze_doxygen.json" + uri = URI.parse(url) + response = Net::HTTP.get_response(uri) + if response.code.to_i != 200 + puts "======= 接口请求失败!" + data = { data: nil, msg: '文件不存在' } + else + data = { data: JSON.parse(response.body), msg: 'ok' } + end + render_ok data + end + def measures_search_history params_data = { from: params[:form], diff --git a/config/routes/api.rb b/config/routes/api.rb index aff2f5de0..f36d4b949 100644 --- a/config/routes/api.rb +++ b/config/routes/api.rb @@ -119,6 +119,7 @@ defaults format: :json do post :sonar_initialize post :insert_file get :doxygen_url + get :analyze_doxygen end end