Skip to content

Commit

Permalink
Merge pull request #2199 from orf/patch-1
Browse files Browse the repository at this point in the history
Support downloading archive subpaths
  • Loading branch information
nejch committed Jul 29, 2022
2 parents b8be32a + cadb0e5 commit 5e1df65
Showing 1 changed file with 7 additions and 3 deletions.
10 changes: 7 additions & 3 deletions gitlab/v4/objects/repositories.py
Expand Up @@ -201,6 +201,7 @@ def repository_archive(
action: Optional[Callable[..., Any]] = None,
chunk_size: int = 1024,
format: Optional[str] = None,
path: Optional[str] = None,
*,
iterator: bool = False,
**kwargs: Any,
Expand All @@ -218,6 +219,7 @@ def repository_archive(
data
chunk_size: Size of each chunk
format: file format (tar.gz by default)
path: The subpath of the repository to download (all files by default)
**kwargs: Extra options to send to the server (e.g. sudo)
Raises:
Expand All @@ -227,14 +229,16 @@ def repository_archive(
Returns:
The binary data of the archive
"""
path = f"/projects/{self.encoded_id}/repository/archive"
url_path = f"/projects/{self.encoded_id}/repository/archive"
if format:
path += "." + format
url_path += "." + format
query_data = {}
if sha:
query_data["sha"] = sha
if path is not None:
query_data["path"] = path
result = self.manager.gitlab.http_get(
path, query_data=query_data, raw=True, streamed=streamed, **kwargs
url_path, query_data=query_data, raw=True, streamed=streamed, **kwargs
)
if TYPE_CHECKING:
assert isinstance(result, requests.Response)
Expand Down

0 comments on commit 5e1df65

Please sign in to comment.