Skip to content

get_image_policy async

get_image_policy(
    image_arn: ImageBuildVersionArn,
    *,
    config_overrides: Optional[AsyncimagebuilderClientConfig] = None,
) -> GetImagePolicyResponse

Retrieves an image policy.

Parameters:

  • image_arn (ImageBuildVersionArn) –

    The Amazon Resource Name (ARN) of the image whose policy you want to retrieve.

Raises:

  • CallRateLimitExceededException –

    You have exceeded the permitted request rate for the Amazon EC2 APIs that Image Builder calls on your behalf. Retry with an increasing or variable delay between requests.

  • ForbiddenException –

    You are not authorized to perform the requested operation.

  • InvalidRequestException –

    The request is malformed or otherwise invalid. Verify the request and try again.

  • ResourceNotFoundException –

    At least one of the resources referenced by your request does not exist.

  • ServiceException –

    An internal server error occurred while Image Builder processed the request. Retrying the request may succeed.

  • ServiceUnavailableException –

    The service is unable to process your request at this time.

  • UnknownServiceError –

    The service returned an error code this client does not model.

Examples:

Retrieve the resource policy for an image The following example retrieves the resource policy for an image build version that was shared with account 444455556666.

>>> await client.get_image_policy(image_arn='arn:aws:imagebuilder:us-west-2:111122223333:image/my-example-recipe/1.0.0/1')
Source code in docs_src/capo_imagebuilder/_services/async_imagebuilder.py
async def get_image_policy(
    self,
    image_arn: "capo_imagebuilder.types.image_build_version_arn.ImageBuildVersionArn",
    *,
    config_overrides: Optional[AsyncimagebuilderClientConfig] = None,
) -> "capo_imagebuilder.types.get_image_policy_response.GetImagePolicyResponse":
    """<p>Retrieves an image policy.</p>

    Args:
        image_arn: <p>The Amazon Resource Name (ARN) of the image whose policy you want to retrieve.</p>

    Raises:
        capo_imagebuilder.errors.call_rate_limit_exceeded_exception.CallRateLimitExceededException: <p>You have exceeded the permitted request rate for the Amazon EC2 APIs that Image Builder calls on your behalf. Retry with an increasing or variable delay between requests.</p>
        capo_imagebuilder.errors.forbidden_exception.ForbiddenException: <p>You are not authorized to perform the requested operation.</p>
        capo_imagebuilder.errors.invalid_request_exception.InvalidRequestException: <p>The request is malformed or otherwise invalid. Verify the request and try again.</p>
        capo_imagebuilder.errors.resource_not_found_exception.ResourceNotFoundException: <p>At least one of the resources referenced by your request does not exist.</p>
        capo_imagebuilder.errors.service_exception.ServiceException: <p>An internal server error occurred while Image Builder processed the request. Retrying the request may succeed.</p>
        capo_imagebuilder.errors.service_unavailable_exception.ServiceUnavailableException: <p>The service is unable to process your request at this time.</p>
        capo_imagebuilder.errors.UnknownServiceError: The service returned an error code this client does not model.

    Examples:
        Retrieve the resource policy for an image
        The following example retrieves the resource policy for an image build version that was shared with account 444455556666.

        >>> await client.get_image_policy(image_arn='arn:aws:imagebuilder:us-west-2:111122223333:image/my-example-recipe/1.0.0/1')
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_imagebuilder.types.get_image_policy_request.GetImagePolicyRequest]",
    ) -> AsyncOperationResponse[
        "capo_imagebuilder.types.get_image_policy_response.GetImagePolicyResponse"
    ]:
        import capo_imagebuilder._operations.imagebuilder.get_image_policy

        (
            output,
            http_response,
        ) = await capo_imagebuilder._operations.imagebuilder.get_image_policy.async_get_image_policy(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("GetImagePolicy")
    )
    input_: capo_imagebuilder.types.get_image_policy_request.GetImagePolicyRequest = {
        "image_arn": image_arn
    }

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output