下面是我尝试使用的代码: NB‘这里名为sonarqube的是一个应用程序’
import os
from distutils.util import strtobool
from sonarqube import SonarQubeClient
from sonarqube.exceptions import ClientError
SONAR_API = SonarQubeClient(token='37ad61922eadXXXXXXXXXXXXXX24649bde442',sonarqube_url=os.getenv('SONARQUBE_API_URL', input('Enter SonarQube API url: ')))
def get_projects_where_develop_is_not_the_default_branch():
global SONAR_API
print ('----------------')
print(SONAR_API.projects)
print ('----------------')
p = []
for project in SONAR_API.projects:
for branch in SONAR_API.project_branches.get_project_branches_list(project['key']):
if branch['name'] == 'master' and branch['isMain'] == True:
print(f"{project['name']} have master branch has default")
p.append(project['key'])
return p
#[….]
if __name__ == '__main__':
projects = get_projects_where_develop_is_not_the_default_branch()
for project_key in projects:
#[…]
所以我使用python3来运行它&得到错误:
Enter SonarQube API url: https://sonarqube.XXXXXX.XXXXX/web_api/api/projects
----------------
<sonarqube.community.projects.SonarQubeProjects object at 0x7fd57d458c70> ----------------
Traceback (most recent call last):
File "sonarqube_branches.py", line 34, in <module> projects = get_projects_where_develop_is_not_the_default_branch()
File "sonarqube_branches.py", line 14, in get_projects_where_develop_is_not_the_default_branch
for project in SONAR_API.projects:
TypeError: 'SonarQubeProjects' object is not iterable
francois@TLS-2120:~$
我不明白为什么你不能帮我解决这个问题?
在这一点上我得到:
print(SONAR_API.projects)
print ('----------------')```
那就是:
<sonarqube.community.projects.SonarQubeProjects at 0x7f97b1XXXXX>
我不确定它是一个线索,还是仅仅是一个内存地址
转载请注明出处:http://www.baquan404.com/article/20230526/1973104.html