Skip to content

Commit

Permalink
Merge pull request #9 from donhui/scanning
Browse files Browse the repository at this point in the history
add api: scan_artifact
  • Loading branch information
donhui committed Feb 27, 2023
2 parents bcebfd8 + d38b4eb commit 2530393
Show file tree
Hide file tree
Showing 3 changed files with 41 additions and 0 deletions.
10 changes: 10 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,8 @@
+ [Create Issue Event](#create-issue-event)
+ [Update Issue Event](#update-issue-event)
+ [Get Issue Event](#get-issue-event)
* [SCANNING](#scanning)
+ [Scan Artifact](#scan-artifact)
<!-- tocstop -->

# Install
Expand Down Expand Up @@ -203,3 +205,11 @@ response = issues.get_issue_event("test-2023-0221")
response = issues.get_issue_event("test-2023-0221", api_version="v2")
print(response.json())
```

## SCANNING
### Scan Artifact
```python
scanning = xray_rest_client.scanning
response = scanning.scan_artifact("docker://image_name:image_tag")
print(response.json())
```
5 changes: 5 additions & 0 deletions xray/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
from xray.components import XrayComponents
from xray.summary import XraySummary
from xray.issues import XrayIssues
from xray.scanning import XrayScanning


class XrayRestClient(object):
Expand All @@ -28,3 +29,7 @@ def summary(self):
@property
def issues(self):
return XrayIssues(base_url=self.base_url, session=self._session)

@property
def scanning(self):
return XrayScanning(base_url=self.base_url, session=self._session)
26 changes: 26 additions & 0 deletions xray/scanning.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
from xray.utils.http import RestApiAccessor


class XrayScanning(RestApiAccessor):
"""
Xray REST API: SCANNING
See: https://www.jfrog.com/confluence/display/JFROG/Xray+REST+API#XrayRESTAPI-SCANNING
"""
def scan_artifact(self, component_id):
"""
Invokes scanning of an artifact
:param component_id: sample: docker://image_name:image_tag
:return:
"""
url = self.base_url + "/api/v1/scanArtifact"
json_data = {
"componentID": component_id
}

response = self.rest_post(
url,
json_data=json_data
)
return response


0 comments on commit 2530393

Please sign in to comment.