- Конечная точка по умолчанию согласно официальной документации: документация
Код: Выделить всё
import requests
def upload_source(token: str, path_to_archive: str, host: str, project_id: int) -> None:
headers = {
'Content-Type': 'application/x-www-form-urlencoded',
'Accept': 'application/json;v=1.0',
'Authorization': 'Bearer {token}'
}
data = {'zippedSource': open(path_to_archive, 'rb').read()}
response = requests.post(f'{host}/projects/{project_id}/sourceCode/attachments',
headers=headers, data=data)
- Библиотека CheckmarxPythonSDK: страница pypi:
Код: Выделить всё
from CheckmarxPythonSDK.CxRestAPISDK import ProjectsAPI
def upload_source(path_to_archive: str, project_id: int) -> None:
cx_loader = ProjectsAPI()
cx_loader.upload_source_code_zip_file(project_id, path_to_archive)
Код: Выделить всё
{
"messageCode": 27000,
"messageDetails": "The requested file not found in Http-Message body"
}
Код: Выделить всё
data = {"zippedSource": ("archive_name", open('path_to_arhive', 'rb'), "application/zip")}
headers = {
'Content-Type': 'multipart/form-data; boundary=1d8174c7f75344e0b5dcd64a9f874c1a',
'cxOrigin': 'Checkmarx Python SDK 1.0.5',
'Authorization': f'Bearer {token}'
}
- 7zip
- python .shutil.make_archive()
- Cx7zip
Надеюсь, вы сможете помочь.
Я запустил сценарий из WSL (Ubuntu).
Подробнее здесь: https://stackoverflow.com/questions/791 ... ng-the-api