Creates or updates the lifecycle policy for the specified repository. For more information, see Lifecycle policy template.
Parameters:
-
registry_id
(Optional[RegistryId], default:
None
)
–
The Amazon Web Services account ID associated with the registry that contains the repository. If you do not specify a registry, the default registry is assumed.
-
repository_name
(RepositoryName)
–
The name of the repository to receive the policy.
-
lifecycle_policy_text
(LifecyclePolicyText)
–
The JSON repository policy text to apply to the repository.
Raises:
-
InvalidParameterException
–
The specified parameter is invalid. Review the available parameters for the API request.
-
RepositoryNotFoundException
–
The specified repository could not be found. Check the spelling of the specified repository and ensure that you are performing operations on the correct registry.
-
ServerException
–
These errors are usually caused by a server-side issue.
-
ValidationException
–
There was an exception validating this request.
-
UnknownServiceError
–
The service returned an error code this client does not model.
Source code in docs_src/capo_ecr/_services/ecr.py
| def put_lifecycle_policy(
self,
repository_name: "capo_ecr.types.repository_name.RepositoryName",
lifecycle_policy_text: "capo_ecr.types.lifecycle_policy_text.LifecyclePolicyText",
*,
config_overrides: Optional[ECRClientConfig] = None,
registry_id: Optional["capo_ecr.types.registry_id.RegistryId"] = None,
) -> "capo_ecr.types.put_lifecycle_policy_response.PutLifecyclePolicyResponse":
"""<p>Creates or updates the lifecycle policy for the specified repository. For more information, see <a href="https://docs.aws.amazon.com/AmazonECR/latest/userguide/LifecyclePolicies.html">Lifecycle policy template</a>.</p>
Args:
registry_id: <p>The Amazon Web Services account ID associated with the registry that contains the repository. If you do not specify a registry, the default registry is assumed.</p>
repository_name: <p>The name of the repository to receive the policy.</p>
lifecycle_policy_text: <p>The JSON repository policy text to apply to the repository.</p>
Raises:
capo_ecr.errors.invalid_parameter_exception.InvalidParameterException: <p>The specified parameter is invalid. Review the available parameters for the API request.</p>
capo_ecr.errors.repository_not_found_exception.RepositoryNotFoundException: <p>The specified repository could not be found. Check the spelling of the specified repository and ensure that you are performing operations on the correct registry.</p>
capo_ecr.errors.server_exception.ServerException: <p>These errors are usually caused by a server-side issue.</p>
capo_ecr.errors.validation_exception.ValidationException: <p>There was an exception validating this request.</p>
capo_ecr.errors.UnknownServiceError: The service returned an error code this client does not model.
"""
def _handler(
req: "OperationRequest[capo_ecr.types.put_lifecycle_policy_request.PutLifecyclePolicyRequest]",
) -> OperationResponse[
"capo_ecr.types.put_lifecycle_policy_response.PutLifecyclePolicyResponse"
]:
import capo_ecr._operations.amazon_ec2_container_registry_v20150921.put_lifecycle_policy
output, http_response = (
capo_ecr._operations.amazon_ec2_container_registry_v20150921.put_lifecycle_policy.put_lifecycle_policy(
req.options, req.input
)
)
return OperationResponse(output=output, response=http_response)
interceptors_, options_ = self.operation_options(
config_overrides, OperationLogging("PutLifecyclePolicy")
)
input_: capo_ecr.types.put_lifecycle_policy_request.PutLifecyclePolicyRequest = {
"repository_name": repository_name,
"lifecycle_policy_text": lifecycle_policy_text,
}
if registry_id is not None:
input_["registry_id"] = registry_id
response = execute_pipeline(
OperationRequest(input=input_, options=options_),
handler=_handler,
interceptors=list(interceptors_),
)
response.response.close()
return response.output
|