docs/integrations/prefect-azure/api-ref/prefect_azure-repository.mdx
prefect_azure.repositoryInteract with files stored in Azure DevOps Git repositories.
The AzureDevopsRepository class in this module is a storage block that lets Prefect
agents pull Prefect flow code from Azure DevOps repositories.
The AzureDevopsRepository block is ideally configured via the Prefect UI, but can
also be used in Python as the following examples demonstrate.
Examples: Load a configured Azure DevOps repository block: ```python from prefect_azure.repository import AzureDevopsRepository
azuredevops_repository_block = AzureDevopsRepository.load("BLOCK_NAME")
```
Clone a public Azure DevOps repository:
```python
from prefect_azure.repository import AzureDevopsRepository
public_repo = AzureDevopsRepository(
repository="https://dev.azure.com/myorg/myproject/_git/myrepo"
)
public_repo.save(name="my-azuredevops-block")
```
Clone a specific branch or tag:
```python
from prefect_azure.repository import AzureDevopsRepository
branch_repo = AzureDevopsRepository(
repository="https://dev.azure.com/myorg/myproject/_git/myrepo",
reference="develop"
)
branch_repo.save(name="my-azuredevops-branch-block")
```
Clone a private Azure DevOps repository:
```python
from prefect_azure import AzureDevopsCredentials, AzureDevopsRepository
azuredevops_credentials_block = AzureDevopsCredentials.load("my-azuredevops-credentials")
private_repo = AzureDevopsRepository(
repository="https://dev.azure.com/myorg/myproject/_git/myrepo",
credentials=azuredevops_credentials_block
)
private_repo.save(name="my-private-azuredevops-block")
```
AzureDevopsRepository <sup><a href="https://github.com/PrefectHQ/prefect/blob/main/src/integrations/prefect-azure/prefect_azure/repository.py#L73" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>Interact with files stored in Azure DevOps Git repositories.
Methods:
aget_directory <sup><a href="https://github.com/PrefectHQ/prefect/blob/main/src/integrations/prefect-azure/prefect_azure/repository.py#L144" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>aget_directory(self, from_path: Optional[str] = None, local_path: Optional[str] = None) -> None
Asynchronously clones an Azure DevOps repository.
This defaults to cloning the repository reference configured on the Block to the present working directory.
Args:
from_path: If provided, interpreted as a subdirectory of the underlying
repository that will be copied to the provided local path.local_path: A local path to clone to; defaults to present working directory.get_directory <sup><a href="https://github.com/PrefectHQ/prefect/blob/main/src/integrations/prefect-azure/prefect_azure/repository.py#L190" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>get_directory(self, from_path: Optional[str] = None, local_path: Optional[str] = None) -> None
Clones an Azure DevOps project within from_path to the provided local_path.
This defaults to cloning the repository reference configured on the Block to the present working directory.
Args:
from_path: If provided, interpreted as a subdirectory of the underlying
repository that will be copied to the provided local path.local_path: A local path to clone to; defaults to present working directory.