获取sonarqube项目信息

本文将介绍如何有效地获取SonarQube平台上的项目信息,包括项目的质量指标、代码覆盖率和问题报告等关键数据。通过理解SonarQube的API接口和使用示例,开发者可以轻松集成这些信息到自己的工作流程中,以提升代码质量和安全性。
摘要由CSDN通过智能技术生成
# -*- coding: UTF-8 -*-

import requests

import json

import xlwt

import xlrd

from xlrd import open_workbook

import openpyxl 

from xlutils.copy import copy

count=0

import datetime

#获取所有项目key

url="http://10.119.169.6:9000/api/components/search_projects?ps=500&facets=reliability_rating%2Csecurity_rating%2Csqale_rating%2Ccoverage%2Cduplicated_lines_density%2Cncloc%2Calert_status%2Clanguages%2Ctags&f=analysisDate%2CleakPeriodDate&s=analysisDate&asc=false"

#根据项目key查询项目信息

ResultURL="http://10.119.169.6:9000/api/measures/component?additionalFields=metrics%2Cperiods&componentKey="

Params = "&metricKeys=alert_status%2Cbugs%2Cnew_bugs%2Creliability_rating%2Cnew_reliability_rating%2Cvulnerabilities%2Cnew_vulnerabilities%2Csecurity_rating%2Cnew_security_rating%2Ccode_smells%2Cnew_code_smells%2Cnew_technical_debt%2Ccoverage%2Cnew_coverage%2Cnew_lines_to_cover%2Cduplicated_lines_density%2Cnew_duplicated_lines_density%2Cduplicated_blocks%2Cnew_lines%2Cncloc"

#根据项目key查询bug等级接口

BugDefineURL="http://10.119.169.6:9000/api/issues/search?componentKeys="

BugDefineParams="&s=FILE_LINE&resolved=false&ps=100&facets=severities%2Ctypes&additionalFields=_all"

#查询扫描间隔

ScanperiodURL="http://10.119.169.6:9000/api/project_analyses/search?project="

ScanperiodParams="&ps=2"

#生成文件名称

filepath = 'SonarQube_Analysis.xls'

if __name__=='__main__':

    rsp = requests.get(url)

    JStext = json.loads(rsp.text)

    #定义空列表

    RPkey = []

    a = []

    #获取项目key

    for i in JStext['components']:

        x=i['key']

        #取出项目key

        RPkey.append(x)

    #新建excel

    workbook = xlwt.Workbook(encoding='utf-8')

    ws = workbook.add_sheet('Sonar')

    #定义excel首行

    ws.write(0,0,'ProjectName')

    ws.write(0,1,'alert_status')

    ws.write(0,2,'bugs')

    ws.write(0,3,'new_bugs')

    ws.write(0,4,'code_smells')

    ws.write(0,5,'new_code_smells')

    ws.write(<
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值