azure.containerregistry.aio package¶
-
class
azure.containerregistry.aio.
ContainerRegistryClient
(endpoint: str, credential: Optional[AsyncTokenCredential] = None, *, audience: str, **kwargs: Any)[source]¶ Create a ContainerRegistryClient from an ACR endpoint and a credential.
- Parameters
endpoint (str) – An ACR endpoint.
credential (AsyncTokenCredential) – The credential with which to authenticate.
- Keyword Arguments
api_version (str) – API Version. The default value is “2021-07-01”. Note that overriding this default value may result in unsupported behavior.
audience (str) – URL to use for credential authentication with AAD. Its value could be “https://management.azure.com”, “https://management.chinacloudapi.cn”, “https://management.microsoftazure.de” or “https://management.usgovcloudapi.net”.
- Returns
None
- Return type
- Raises
ValueError – If the provided api_version keyword-only argument isn’t supported or audience keyword-only argument isn’t provided.
Example:
endpoint = os.environ["CONTAINERREGISTRY_ENDPOINT"] audience = "https://management.azure.com" client = ContainerRegistryClient(endpoint, DefaultAzureCredential(), audience=audience)
-
async
close
() → None¶ Close sockets opened by the client. Calling this method is unnecessary when using the client as a context manager.
-
async
delete_manifest
(repository: str, tag_or_digest: str, **kwargs: Any) → None[source]¶ Delete a manifest. If the manifest cannot be found or a response status code of 404 is returned an error will not be raised.
- Parameters
- Returns
None
- Return type
- Raises
~azure.core.exceptions.HttpResponseError
Example
from azure.containerregistry.aio import ContainerRegistryClient from azure.identity.aio import DefaultAzureCredential endpoint = os.environ["CONTAINERREGISTRY_ENDPOINT"] client = ContainerRegistryClient(endpoint, DefaultAzureCredential(), audience="my_audience") await client.delete_manifest("my_repository", "my_tag_or_digest")
-
async
delete_repository
(repository: str, **kwargs: Any) → None[source]¶ Delete a repository. If the repository cannot be found or a response status code of 404 is returned an error will not be raised.
- Parameters
repository (str) – The repository to delete
- Returns
None
- Return type
- Raises
~azure.core.exceptions.HttpResponseError
Example:
await client.delete_repository(repository_name, "hello-world")
-
async
delete_tag
(repository: str, tag: str, **kwargs: Any) → None[source]¶ Delete a tag from a repository. If the tag cannot be found or a response status code of 404 is returned an error will not be raised.
- Parameters
- Returns
None
- Return type
- Raises
~azure.core.exceptions.HttpResponseError
Example
from azure.containerregistry.aio import ContainerRegistryClient from azure.identity.aio import DefaultAzureCredential endpoint = os.environ["CONTAINERREGISTRY_ENDPOINT"] client = ContainerRegistryClient(endpoint, DefaultAzureCredential(), audience="my_audience") async for tag in client.list_tag_properties("my_repository"): await client.delete_tag("my_repository", tag.name)
-
async
get_manifest_properties
(repository: str, tag_or_digest: str, **kwargs: Any) → azure.containerregistry._models.ArtifactManifestProperties[source]¶ Get the properties of a registry artifact
- Parameters
- Return type
- Raises
~azure.core.exceptions.ResourceNotFoundError
Example
from azure.containerregistry.aio import ContainerRegistryClient from azure.identity.aio import DefaultAzureCredential endpoint = os.environ["CONTAINERREGISTRY_ENDPOINT"] client = ContainerRegistryClient(endpoint, DefaultAzureCredential(), audience="my_audience") async for artifact in client.list_manifest_properties("my_repository"): properties = await client.get_manifest_properties("my_repository", artifact.digest)
-
async
get_repository_properties
(repository: str, **kwargs: Any) → azure.containerregistry._models.RepositoryProperties[source]¶ Get the properties of a repository
- Parameters
repository (str) – Name of the repository
- Return type
- Raises
~azure.core.exceptions.ResourceNotFoundError
-
async
get_tag_properties
(repository: str, tag: str, **kwargs: Any) → azure.containerregistry._models.ArtifactTagProperties[source]¶ Get the properties for a tag
- Parameters
- Return type
- Raises
~azure.core.exceptions.ResourceNotFoundError
Example
from azure.containerregistry.aio import ContainerRegistryClient from azure.identity.aio import DefaultAzureCredential endpoint = os.environ["CONTAINERREGISTRY_ENDPOINT"] client = ContainerRegistryClient(endpoint, DefaultAzureCredential(), audience="my_audience") async for tag in client.list_tag_properties("my_repository"): tag_properties = await client.get_tag_properties("my_repository", tag.name)
-
list_manifest_properties
(repository: str, **kwargs: Any) → azure.core.async_paging.AsyncItemPaged[azure.containerregistry._models.ArtifactManifestProperties][source]¶ List the manifests of a repository
- Parameters
repository (str) – Name of the repository
- Keyword Arguments
order_by (ArtifactManifestOrder or str) – Query parameter for ordering by time ascending or descending
results_per_page (int) – Number of repositories to return per page
- Returns
An iterable of
ArtifactManifestProperties
- Return type
- Raises
~azure.core.exceptions.HttpResponseError
-
list_repository_names
(**kwargs: Any) → azure.core.async_paging.AsyncItemPaged[str][source]¶ List all repositories
- Keyword Arguments
results_per_page (int) – Number of repositories to return per page
- Returns
An iterable of strings
- Return type
- Raises
~azure.core.exceptions.HttpResponseError
Example:
audience = "https://management.azure.com" endpoint = os.environ["CONTAINERREGISTRY_ENDPOINT"] credential = DefaultAzureCredential() client = ContainerRegistryClient(endpoint, credential, audience=audience) async with client: async for repository in client.list_repository_names(): print(repository)
-
list_tag_properties
(repository: str, **kwargs: Any) → azure.core.async_paging.AsyncItemPaged[azure.containerregistry._models.ArtifactTagProperties][source]¶ List the tags for a repository
- Parameters
repository (str) – Name of the repository
- Keyword Arguments
order_by (ArtifactTagOrder or str) – Query parameter for ordering by time ascending or descending
results_per_page (int) – Number of repositories to return per page
- Returns
An iterable of
ArtifactTagProperties
- Return type
- Raises
~azure.core.exceptions.ResourceNotFoundError
Example
from azure.containerregistry.aio import ContainerRegistryClient from azure.identity.aio import DefaultAzureCredential endpoint = os.environ["CONTAINERREGISTRY_ENDPOINT"] client = ContainerRegistryClient(endpoint, DefaultAzureCredential(), audience="my_audience") async for tag in client.list_tag_properties("my_repository"): tag_properties = await client.get_tag_properties(tag.name)
-
async
update_manifest_properties
(repository: str, tag_or_digest: str, properties: ArtifactManifestProperties, **kwargs: Any) → ArtifactManifestProperties[source]¶ -
async
update_manifest_properties
(repository: str, tag_or_digest: str, **kwargs: Any) → ArtifactManifestProperties Set the permission properties for a manifest.
The updatable properties include: can_delete, can_list, can_read, and can_write.
- Parameters
repository (str) – Repository the manifest belongs to.
tag_or_digest (str) – Tag or digest of the manifest.
properties (ArtifactManifestProperties) – The property’s values to be set. This is a positional-only parameter. Please provide either this or individual keyword parameters.
- Keyword Arguments
- Return type
- Raises
~azure.core.exceptions.ResourceNotFoundError
Example
from azure.containerregistry.aio import ContainerRegistryClient from azure.identity.aio import DefaultAzureCredential endpoint = os.environ["CONTAINERREGISTRY_ENDPOINT"] client = ContainerRegistryClient(endpoint, DefaultAzureCredential(), audience="my_audience") async for artifact in client.list_manifest_properties("my_repository"): received_properties = await client.update_manifest_properties( "my_repository", artifact.digest, can_delete=False, can_list=False, can_read=False, can_write=False, )
-
async
update_repository_properties
(repository: str, properties: RepositoryProperties, **kwargs: Any) → RepositoryProperties[source]¶ -
async
update_repository_properties
(repository: str, **kwargs: Any) → RepositoryProperties Set the permission properties of a repository.
The updatable properties include: can_delete, can_list, can_read, and can_write.
- Parameters
repository (str) – Name of the repository.
properties (RepositoryProperties) – Properties to set for the repository. This is a positional-only parameter. Please provide either this or individual keyword parameters.
- Keyword Arguments
- Return type
- Raises
~azure.core.exceptions.ResourceNotFoundError
-
async
update_tag_properties
(repository: str, tag: str, properties: ArtifactTagProperties, **kwargs: Any) → ArtifactTagProperties[source]¶ -
async
update_tag_properties
(repository: str, tag: str, **kwargs: Any) → ArtifactTagProperties Set the permission properties for a tag.
The updatable properties include: can_delete, can_list, can_read, and can_write.
- Parameters
repository (str) – Repository the tag belongs to.
tag (str) – Tag to set properties for.
properties (ArtifactTagProperties) – The property’s values to be set. This is a positional-only parameter. Please provide either this or individual keyword parameters.
- Keyword Arguments
- Return type
- Raises
~azure.core.exceptions.ResourceNotFoundError
Example
from azure.containerregistry.aio import ContainerRegistryClient from azure.identity.aio import DefaultAzureCredential endpoint = os.environ["CONTAINERREGISTRY_ENDPOINT"] client = ContainerRegistryClient(endpoint, DefaultAzureCredential(), audience="my_audience") tag_identifier = "latest" received = await client.update_tag_properties( "my_repository", tag_identifier, can_delete=False, can_list=False, can_read=False, can_write=False )