/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the ecr-2015-09-21.normal.json service model.
*/
using System;
using System.Runtime.ExceptionServices;
using System.Threading;
using System.Threading.Tasks;
using System.Collections.Generic;
using System.Net;
using Amazon.ECR.Model;
using Amazon.ECR.Model.Internal.MarshallTransformations;
using Amazon.ECR.Internal;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
using Amazon.Runtime.Internal.Auth;
using Amazon.Runtime.Internal.Transform;
namespace Amazon.ECR
{
///
/// Implementation for accessing ECR
///
/// Amazon Elastic Container Registry
///
/// Amazon Elastic Container Registry (Amazon ECR) is a managed container image registry
/// service. Customers can use the familiar Docker CLI, or their preferred client, to
/// push, pull, and manage images. Amazon ECR provides a secure, scalable, and reliable
/// registry for your Docker or Open Container Initiative (OCI) images. Amazon ECR supports
/// private repositories with resource-based permissions using IAM so that specific users
/// or Amazon EC2 instances can access repositories and images.
///
///
///
/// Amazon ECR has service endpoints in each supported Region. For more information, see
/// Amazon ECR endpoints
/// in the Amazon Web Services General Reference.
///
///
public partial class AmazonECRClient : AmazonServiceClient, IAmazonECR
{
private static IServiceMetadata serviceMetadata = new AmazonECRMetadata();
#region Constructors
///
/// Constructs AmazonECRClient with the credentials loaded from the application's
/// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
///
/// Example App.config with credentials set.
///
/// <?xml version="1.0" encoding="utf-8" ?>
/// <configuration>
/// <appSettings>
/// <add key="AWSProfileName" value="AWS Default"/>
/// </appSettings>
/// </configuration>
///
///
///
public AmazonECRClient()
: base(FallbackCredentialsFactory.GetCredentials(), new AmazonECRConfig()) { }
///
/// Constructs AmazonECRClient with the credentials loaded from the application's
/// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
///
/// Example App.config with credentials set.
///
/// <?xml version="1.0" encoding="utf-8" ?>
/// <configuration>
/// <appSettings>
/// <add key="AWSProfileName" value="AWS Default"/>
/// </appSettings>
/// </configuration>
///
///
///
/// The region to connect.
public AmazonECRClient(RegionEndpoint region)
: base(FallbackCredentialsFactory.GetCredentials(), new AmazonECRConfig{RegionEndpoint = region}) { }
///
/// Constructs AmazonECRClient with the credentials loaded from the application's
/// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
///
/// Example App.config with credentials set.
///
/// <?xml version="1.0" encoding="utf-8" ?>
/// <configuration>
/// <appSettings>
/// <add key="AWSProfileName" value="AWS Default"/>
/// </appSettings>
/// </configuration>
///
///
///
/// The AmazonECRClient Configuration Object
public AmazonECRClient(AmazonECRConfig config)
: base(FallbackCredentialsFactory.GetCredentials(config), config){}
///
/// Constructs AmazonECRClient with AWS Credentials
///
/// AWS Credentials
public AmazonECRClient(AWSCredentials credentials)
: this(credentials, new AmazonECRConfig())
{
}
///
/// Constructs AmazonECRClient with AWS Credentials
///
/// AWS Credentials
/// The region to connect.
public AmazonECRClient(AWSCredentials credentials, RegionEndpoint region)
: this(credentials, new AmazonECRConfig{RegionEndpoint = region})
{
}
///
/// Constructs AmazonECRClient with AWS Credentials and an
/// AmazonECRClient Configuration object.
///
/// AWS Credentials
/// The AmazonECRClient Configuration Object
public AmazonECRClient(AWSCredentials credentials, AmazonECRConfig clientConfig)
: base(credentials, clientConfig)
{
}
///
/// Constructs AmazonECRClient with AWS Access Key ID and AWS Secret Key
///
/// AWS Access Key ID
/// AWS Secret Access Key
public AmazonECRClient(string awsAccessKeyId, string awsSecretAccessKey)
: this(awsAccessKeyId, awsSecretAccessKey, new AmazonECRConfig())
{
}
///
/// Constructs AmazonECRClient with AWS Access Key ID and AWS Secret Key
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// The region to connect.
public AmazonECRClient(string awsAccessKeyId, string awsSecretAccessKey, RegionEndpoint region)
: this(awsAccessKeyId, awsSecretAccessKey, new AmazonECRConfig() {RegionEndpoint=region})
{
}
///
/// Constructs AmazonECRClient with AWS Access Key ID, AWS Secret Key and an
/// AmazonECRClient Configuration object.
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// The AmazonECRClient Configuration Object
public AmazonECRClient(string awsAccessKeyId, string awsSecretAccessKey, AmazonECRConfig clientConfig)
: base(awsAccessKeyId, awsSecretAccessKey, clientConfig)
{
}
///
/// Constructs AmazonECRClient with AWS Access Key ID and AWS Secret Key
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// AWS Session Token
public AmazonECRClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken)
: this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonECRConfig())
{
}
///
/// Constructs AmazonECRClient with AWS Access Key ID and AWS Secret Key
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// AWS Session Token
/// The region to connect.
public AmazonECRClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, RegionEndpoint region)
: this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonECRConfig{RegionEndpoint = region})
{
}
///
/// Constructs AmazonECRClient with AWS Access Key ID, AWS Secret Key and an
/// AmazonECRClient Configuration object.
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// AWS Session Token
/// The AmazonECRClient Configuration Object
public AmazonECRClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, AmazonECRConfig clientConfig)
: base(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, clientConfig)
{
}
#endregion
#if AWS_ASYNC_ENUMERABLES_API
private IECRPaginatorFactory _paginators;
///
/// Paginators for the service
///
public IECRPaginatorFactory Paginators
{
get
{
if (this._paginators == null)
{
this._paginators = new ECRPaginatorFactory(this);
}
return this._paginators;
}
}
#endif
#region Overrides
///
/// Creates the signer for the service.
///
protected override AbstractAWSSigner CreateSigner()
{
return new AWS4Signer();
}
///
/// Customizes the runtime pipeline.
///
/// Runtime pipeline for the current client.
protected override void CustomizeRuntimePipeline(RuntimePipeline pipeline)
{
pipeline.RemoveHandler();
pipeline.AddHandlerAfter(new AmazonECREndpointResolver());
}
///
/// Capture metadata for the service.
///
protected override IServiceMetadata ServiceMetadata
{
get
{
return serviceMetadata;
}
}
#endregion
#region Dispose
///
/// Disposes the service client.
///
protected override void Dispose(bool disposing)
{
base.Dispose(disposing);
}
#endregion
#region BatchCheckLayerAvailability
internal virtual BatchCheckLayerAvailabilityResponse BatchCheckLayerAvailability(BatchCheckLayerAvailabilityRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = BatchCheckLayerAvailabilityRequestMarshaller.Instance;
options.ResponseUnmarshaller = BatchCheckLayerAvailabilityResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Checks the availability of one or more image layers in a repository.
///
///
///
/// When an image is pushed to a repository, each image layer is checked to verify if
/// it has been uploaded before. If it has been uploaded, then the image layer is skipped.
///
///
///
/// This operation is used by the Amazon ECR proxy and is not generally used by customers
/// for pulling and pushing images. In most cases, you should use the docker
/// CLI to pull, tag, and push images.
///
///
///
/// Container for the necessary parameters to execute the BatchCheckLayerAvailability service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the BatchCheckLayerAvailability service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for BatchCheckLayerAvailability Operation
public virtual Task BatchCheckLayerAvailabilityAsync(BatchCheckLayerAvailabilityRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = BatchCheckLayerAvailabilityRequestMarshaller.Instance;
options.ResponseUnmarshaller = BatchCheckLayerAvailabilityResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region BatchDeleteImage
internal virtual BatchDeleteImageResponse BatchDeleteImage(BatchDeleteImageRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = BatchDeleteImageRequestMarshaller.Instance;
options.ResponseUnmarshaller = BatchDeleteImageResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Deletes a list of specified images within a repository. Images are specified with
/// either an imageTag
or imageDigest
.
///
///
///
/// You can remove a tag from an image by specifying the image's tag in your request.
/// When you remove the last tag from an image, the image is deleted from your repository.
///
///
///
/// You can completely delete an image (and all of its tags) by specifying the image's
/// digest in your request.
///
///
/// Container for the necessary parameters to execute the BatchDeleteImage service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the BatchDeleteImage service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for BatchDeleteImage Operation
public virtual Task BatchDeleteImageAsync(BatchDeleteImageRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = BatchDeleteImageRequestMarshaller.Instance;
options.ResponseUnmarshaller = BatchDeleteImageResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region BatchGetImage
internal virtual BatchGetImageResponse BatchGetImage(BatchGetImageRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = BatchGetImageRequestMarshaller.Instance;
options.ResponseUnmarshaller = BatchGetImageResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Gets detailed information for an image. Images are specified with either an imageTag
/// or imageDigest
.
///
///
///
/// When an image is pulled, the BatchGetImage API is called once to retrieve the image
/// manifest.
///
///
/// Container for the necessary parameters to execute the BatchGetImage service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the BatchGetImage service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for BatchGetImage Operation
public virtual Task BatchGetImageAsync(BatchGetImageRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = BatchGetImageRequestMarshaller.Instance;
options.ResponseUnmarshaller = BatchGetImageResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region BatchGetRepositoryScanningConfiguration
internal virtual BatchGetRepositoryScanningConfigurationResponse BatchGetRepositoryScanningConfiguration(BatchGetRepositoryScanningConfigurationRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = BatchGetRepositoryScanningConfigurationRequestMarshaller.Instance;
options.ResponseUnmarshaller = BatchGetRepositoryScanningConfigurationResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Gets the scanning configuration for one or more repositories.
///
/// Container for the necessary parameters to execute the BatchGetRepositoryScanningConfiguration service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the BatchGetRepositoryScanningConfiguration service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// There was an exception validating this request.
///
/// REST API Reference for BatchGetRepositoryScanningConfiguration Operation
public virtual Task BatchGetRepositoryScanningConfigurationAsync(BatchGetRepositoryScanningConfigurationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = BatchGetRepositoryScanningConfigurationRequestMarshaller.Instance;
options.ResponseUnmarshaller = BatchGetRepositoryScanningConfigurationResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region CompleteLayerUpload
internal virtual CompleteLayerUploadResponse CompleteLayerUpload(CompleteLayerUploadRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = CompleteLayerUploadRequestMarshaller.Instance;
options.ResponseUnmarshaller = CompleteLayerUploadResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Informs Amazon ECR that the image layer upload has completed for a specified registry,
/// repository name, and upload ID. You can optionally provide a sha256
digest
/// of the image layer for data validation purposes.
///
///
///
/// When an image is pushed, the CompleteLayerUpload API is called once per each new image
/// layer to verify that the upload has completed.
///
///
///
/// This operation is used by the Amazon ECR proxy and is not generally used by customers
/// for pulling and pushing images. In most cases, you should use the docker
/// CLI to pull, tag, and push images.
///
///
///
/// Container for the necessary parameters to execute the CompleteLayerUpload service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CompleteLayerUpload service method, as returned by ECR.
///
/// The specified layer upload does not contain any layer parts.
///
///
/// The layer digest calculation performed by Amazon ECR upon receipt of the image layer
/// does not match the digest specified.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The operation failed due to a KMS exception.
///
///
/// The image layer already exists in the associated repository.
///
///
/// Layer parts must be at least 5 MiB in size.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// The upload could not be found, or the specified upload ID is not valid for this repository.
///
/// REST API Reference for CompleteLayerUpload Operation
public virtual Task CompleteLayerUploadAsync(CompleteLayerUploadRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = CompleteLayerUploadRequestMarshaller.Instance;
options.ResponseUnmarshaller = CompleteLayerUploadResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region CreatePullThroughCacheRule
internal virtual CreatePullThroughCacheRuleResponse CreatePullThroughCacheRule(CreatePullThroughCacheRuleRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = CreatePullThroughCacheRuleRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreatePullThroughCacheRuleResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Creates a pull through cache rule. A pull through cache rule provides a way to cache
/// images from an external public registry in your Amazon ECR private registry.
///
/// Container for the necessary parameters to execute the CreatePullThroughCacheRule service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreatePullThroughCacheRule service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The operation did not succeed because it would have exceeded a service limit for your
/// account. For more information, see Amazon
/// ECR service quotas in the Amazon Elastic Container Registry User Guide.
///
///
/// A pull through cache rule with these settings already exists for the private registry.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// The specified upstream registry isn't supported.
///
///
/// There was an exception validating this request.
///
/// REST API Reference for CreatePullThroughCacheRule Operation
public virtual Task CreatePullThroughCacheRuleAsync(CreatePullThroughCacheRuleRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = CreatePullThroughCacheRuleRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreatePullThroughCacheRuleResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region CreateRepository
internal virtual CreateRepositoryResponse CreateRepository(CreateRepositoryRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = CreateRepositoryRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreateRepositoryResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Creates a repository. For more information, see Amazon
/// ECR repositories in the Amazon Elastic Container Registry User Guide.
///
/// Container for the necessary parameters to execute the CreateRepository service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateRepository service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// An invalid parameter has been specified. Tag keys can have a maximum character length
/// of 128 characters, and tag values can have a maximum length of 256 characters.
///
///
/// The operation failed due to a KMS exception.
///
///
/// The operation did not succeed because it would have exceeded a service limit for your
/// account. For more information, see Amazon
/// ECR service quotas in the Amazon Elastic Container Registry User Guide.
///
///
/// The specified repository already exists in the specified registry.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// The list of tags on the repository is over the limit. The maximum number of tags that
/// can be applied to a repository is 50.
///
/// REST API Reference for CreateRepository Operation
public virtual Task CreateRepositoryAsync(CreateRepositoryRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = CreateRepositoryRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreateRepositoryResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DeleteLifecyclePolicy
internal virtual DeleteLifecyclePolicyResponse DeleteLifecyclePolicy(DeleteLifecyclePolicyRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteLifecyclePolicyRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteLifecyclePolicyResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Deletes the lifecycle policy associated with the specified repository.
///
/// Container for the necessary parameters to execute the DeleteLifecyclePolicy service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteLifecyclePolicy service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The lifecycle policy could not be found, and no policy is set to the repository.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for DeleteLifecyclePolicy Operation
public virtual Task DeleteLifecyclePolicyAsync(DeleteLifecyclePolicyRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteLifecyclePolicyRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteLifecyclePolicyResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DeletePullThroughCacheRule
internal virtual DeletePullThroughCacheRuleResponse DeletePullThroughCacheRule(DeletePullThroughCacheRuleRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DeletePullThroughCacheRuleRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeletePullThroughCacheRuleResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Deletes a pull through cache rule.
///
/// Container for the necessary parameters to execute the DeletePullThroughCacheRule service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeletePullThroughCacheRule service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The pull through cache rule was not found. Specify a valid pull through cache rule
/// and try again.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// There was an exception validating this request.
///
/// REST API Reference for DeletePullThroughCacheRule Operation
public virtual Task DeletePullThroughCacheRuleAsync(DeletePullThroughCacheRuleRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DeletePullThroughCacheRuleRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeletePullThroughCacheRuleResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DeleteRegistryPolicy
internal virtual DeleteRegistryPolicyResponse DeleteRegistryPolicy(DeleteRegistryPolicyRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteRegistryPolicyRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteRegistryPolicyResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Deletes the registry permissions policy.
///
/// Container for the necessary parameters to execute the DeleteRegistryPolicy service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteRegistryPolicy service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The registry doesn't have an associated registry policy.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// There was an exception validating this request.
///
/// REST API Reference for DeleteRegistryPolicy Operation
public virtual Task DeleteRegistryPolicyAsync(DeleteRegistryPolicyRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteRegistryPolicyRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteRegistryPolicyResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DeleteRepository
internal virtual DeleteRepositoryResponse DeleteRepository(DeleteRepositoryRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteRepositoryRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteRepositoryResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Deletes a repository. If the repository contains images, you must either delete all
/// images in the repository or use the force
option to delete the repository.
///
/// Container for the necessary parameters to execute the DeleteRepository service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteRepository service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The operation failed due to a KMS exception.
///
///
/// The specified repository contains images. To delete a repository that contains images,
/// you must force the deletion with the force
parameter.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for DeleteRepository Operation
public virtual Task DeleteRepositoryAsync(DeleteRepositoryRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteRepositoryRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteRepositoryResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DeleteRepositoryPolicy
internal virtual DeleteRepositoryPolicyResponse DeleteRepositoryPolicy(DeleteRepositoryPolicyRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteRepositoryPolicyRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteRepositoryPolicyResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Deletes the repository policy associated with the specified repository.
///
/// Container for the necessary parameters to execute the DeleteRepositoryPolicy service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteRepositoryPolicy service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// 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.
///
///
/// The specified repository and registry combination does not have an associated repository
/// policy.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for DeleteRepositoryPolicy Operation
public virtual Task DeleteRepositoryPolicyAsync(DeleteRepositoryPolicyRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteRepositoryPolicyRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteRepositoryPolicyResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribeImageReplicationStatus
internal virtual DescribeImageReplicationStatusResponse DescribeImageReplicationStatus(DescribeImageReplicationStatusRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeImageReplicationStatusRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeImageReplicationStatusResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Returns the replication status for a specified image.
///
/// Container for the necessary parameters to execute the DescribeImageReplicationStatus service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeImageReplicationStatus service method, as returned by ECR.
///
/// The image requested does not exist in the specified repository.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// There was an exception validating this request.
///
/// REST API Reference for DescribeImageReplicationStatus Operation
public virtual Task DescribeImageReplicationStatusAsync(DescribeImageReplicationStatusRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeImageReplicationStatusRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeImageReplicationStatusResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribeImages
internal virtual DescribeImagesResponse DescribeImages(DescribeImagesRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeImagesRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeImagesResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Returns metadata about the images in a repository.
///
///
///
/// Beginning with Docker version 1.9, the Docker client compresses image layers before
/// pushing them to a V2 Docker registry. The output of the docker images
/// command shows the uncompressed image size, so it may return a larger image size than
/// the image sizes returned by DescribeImages.
///
///
///
/// Container for the necessary parameters to execute the DescribeImages service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeImages service method, as returned by ECR.
///
/// The image requested does not exist in the specified repository.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for DescribeImages Operation
public virtual Task DescribeImagesAsync(DescribeImagesRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeImagesRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeImagesResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribeImageScanFindings
internal virtual DescribeImageScanFindingsResponse DescribeImageScanFindings(DescribeImageScanFindingsRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeImageScanFindingsRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeImageScanFindingsResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Returns the scan findings for the specified image.
///
/// Container for the necessary parameters to execute the DescribeImageScanFindings service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeImageScanFindings service method, as returned by ECR.
///
/// The image requested does not exist in the specified repository.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// 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.
///
///
/// The specified image scan could not be found. Ensure that image scanning is enabled
/// on the repository and try again.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// There was an exception validating this request.
///
/// REST API Reference for DescribeImageScanFindings Operation
public virtual Task DescribeImageScanFindingsAsync(DescribeImageScanFindingsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeImageScanFindingsRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeImageScanFindingsResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribePullThroughCacheRules
internal virtual DescribePullThroughCacheRulesResponse DescribePullThroughCacheRules(DescribePullThroughCacheRulesRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribePullThroughCacheRulesRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribePullThroughCacheRulesResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Returns the pull through cache rules for a registry.
///
/// Container for the necessary parameters to execute the DescribePullThroughCacheRules service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribePullThroughCacheRules service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The pull through cache rule was not found. Specify a valid pull through cache rule
/// and try again.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// There was an exception validating this request.
///
/// REST API Reference for DescribePullThroughCacheRules Operation
public virtual Task DescribePullThroughCacheRulesAsync(DescribePullThroughCacheRulesRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribePullThroughCacheRulesRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribePullThroughCacheRulesResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribeRegistry
internal virtual DescribeRegistryResponse DescribeRegistry(DescribeRegistryRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeRegistryRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeRegistryResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Describes the settings for a registry. The replication configuration for a repository
/// can be created or updated with the PutReplicationConfiguration API action.
///
/// Container for the necessary parameters to execute the DescribeRegistry service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeRegistry service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// There was an exception validating this request.
///
/// REST API Reference for DescribeRegistry Operation
public virtual Task DescribeRegistryAsync(DescribeRegistryRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeRegistryRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeRegistryResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribeRepositories
internal virtual DescribeRepositoriesResponse DescribeRepositories(DescribeRepositoriesRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeRepositoriesRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeRepositoriesResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Describes image repositories in a registry.
///
/// Container for the necessary parameters to execute the DescribeRepositories service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeRepositories service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for DescribeRepositories Operation
public virtual Task DescribeRepositoriesAsync(DescribeRepositoriesRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeRepositoriesRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeRepositoriesResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region GetAuthorizationToken
internal virtual GetAuthorizationTokenResponse GetAuthorizationToken(GetAuthorizationTokenRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = GetAuthorizationTokenRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetAuthorizationTokenResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Retrieves an authorization token. An authorization token represents your IAM authentication
/// credentials and can be used to access any Amazon ECR registry that your IAM principal
/// has access to. The authorization token is valid for 12 hours.
///
///
///
/// The authorizationToken
returned is a base64 encoded string that can be
/// decoded and used in a docker login
command to authenticate to a registry.
/// The CLI offers an get-login-password
command that simplifies the login
/// process. For more information, see Registry
/// authentication in the Amazon Elastic Container Registry User Guide.
///
///
/// Container for the necessary parameters to execute the GetAuthorizationToken service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetAuthorizationToken service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for GetAuthorizationToken Operation
public virtual Task GetAuthorizationTokenAsync(GetAuthorizationTokenRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = GetAuthorizationTokenRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetAuthorizationTokenResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region GetDownloadUrlForLayer
internal virtual GetDownloadUrlForLayerResponse GetDownloadUrlForLayer(GetDownloadUrlForLayerRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = GetDownloadUrlForLayerRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetDownloadUrlForLayerResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Retrieves the pre-signed Amazon S3 download URL corresponding to an image layer. You
/// can only get URLs for image layers that are referenced in an image.
///
///
///
/// When an image is pulled, the GetDownloadUrlForLayer API is called once per image layer
/// that is not already cached.
///
///
///
/// This operation is used by the Amazon ECR proxy and is not generally used by customers
/// for pulling and pushing images. In most cases, you should use the docker
/// CLI to pull, tag, and push images.
///
///
///
/// Container for the necessary parameters to execute the GetDownloadUrlForLayer service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetDownloadUrlForLayer service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The specified layer is not available because it is not associated with an image. Unassociated
/// image layers may be cleaned up at any time.
///
///
/// The specified layers could not be found, or the specified layer is not valid for this
/// repository.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for GetDownloadUrlForLayer Operation
public virtual Task GetDownloadUrlForLayerAsync(GetDownloadUrlForLayerRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = GetDownloadUrlForLayerRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetDownloadUrlForLayerResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region GetLifecyclePolicy
internal virtual GetLifecyclePolicyResponse GetLifecyclePolicy(GetLifecyclePolicyRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = GetLifecyclePolicyRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetLifecyclePolicyResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Retrieves the lifecycle policy for the specified repository.
///
/// Container for the necessary parameters to execute the GetLifecyclePolicy service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetLifecyclePolicy service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The lifecycle policy could not be found, and no policy is set to the repository.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for GetLifecyclePolicy Operation
public virtual Task GetLifecyclePolicyAsync(GetLifecyclePolicyRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = GetLifecyclePolicyRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetLifecyclePolicyResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region GetLifecyclePolicyPreview
internal virtual GetLifecyclePolicyPreviewResponse GetLifecyclePolicyPreview(GetLifecyclePolicyPreviewRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = GetLifecyclePolicyPreviewRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetLifecyclePolicyPreviewResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Retrieves the results of the lifecycle policy preview request for the specified repository.
///
/// Container for the necessary parameters to execute the GetLifecyclePolicyPreview service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetLifecyclePolicyPreview service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// There is no dry run for this repository.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for GetLifecyclePolicyPreview Operation
public virtual Task GetLifecyclePolicyPreviewAsync(GetLifecyclePolicyPreviewRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = GetLifecyclePolicyPreviewRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetLifecyclePolicyPreviewResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region GetRegistryPolicy
internal virtual GetRegistryPolicyResponse GetRegistryPolicy(GetRegistryPolicyRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = GetRegistryPolicyRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetRegistryPolicyResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Retrieves the permissions policy for a registry.
///
/// Container for the necessary parameters to execute the GetRegistryPolicy service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetRegistryPolicy service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The registry doesn't have an associated registry policy.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// There was an exception validating this request.
///
/// REST API Reference for GetRegistryPolicy Operation
public virtual Task GetRegistryPolicyAsync(GetRegistryPolicyRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = GetRegistryPolicyRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetRegistryPolicyResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region GetRegistryScanningConfiguration
internal virtual GetRegistryScanningConfigurationResponse GetRegistryScanningConfiguration(GetRegistryScanningConfigurationRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = GetRegistryScanningConfigurationRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetRegistryScanningConfigurationResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Retrieves the scanning configuration for a registry.
///
/// Container for the necessary parameters to execute the GetRegistryScanningConfiguration service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetRegistryScanningConfiguration service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// There was an exception validating this request.
///
/// REST API Reference for GetRegistryScanningConfiguration Operation
public virtual Task GetRegistryScanningConfigurationAsync(GetRegistryScanningConfigurationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = GetRegistryScanningConfigurationRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetRegistryScanningConfigurationResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region GetRepositoryPolicy
internal virtual GetRepositoryPolicyResponse GetRepositoryPolicy(GetRepositoryPolicyRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = GetRepositoryPolicyRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetRepositoryPolicyResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Retrieves the repository policy for the specified repository.
///
/// Container for the necessary parameters to execute the GetRepositoryPolicy service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetRepositoryPolicy service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// 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.
///
///
/// The specified repository and registry combination does not have an associated repository
/// policy.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for GetRepositoryPolicy Operation
public virtual Task GetRepositoryPolicyAsync(GetRepositoryPolicyRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = GetRepositoryPolicyRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetRepositoryPolicyResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region InitiateLayerUpload
internal virtual InitiateLayerUploadResponse InitiateLayerUpload(InitiateLayerUploadRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = InitiateLayerUploadRequestMarshaller.Instance;
options.ResponseUnmarshaller = InitiateLayerUploadResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Notifies Amazon ECR that you intend to upload an image layer.
///
///
///
/// When an image is pushed, the InitiateLayerUpload API is called once per image layer
/// that has not already been uploaded. Whether or not an image layer has been uploaded
/// is determined by the BatchCheckLayerAvailability API action.
///
///
///
/// This operation is used by the Amazon ECR proxy and is not generally used by customers
/// for pulling and pushing images. In most cases, you should use the docker
/// CLI to pull, tag, and push images.
///
///
///
/// Container for the necessary parameters to execute the InitiateLayerUpload service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the InitiateLayerUpload service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The operation failed due to a KMS exception.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for InitiateLayerUpload Operation
public virtual Task InitiateLayerUploadAsync(InitiateLayerUploadRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = InitiateLayerUploadRequestMarshaller.Instance;
options.ResponseUnmarshaller = InitiateLayerUploadResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region ListImages
internal virtual ListImagesResponse ListImages(ListImagesRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = ListImagesRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListImagesResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Lists all the image IDs for the specified repository.
///
///
///
/// You can filter images based on whether or not they are tagged by using the tagStatus
/// filter and specifying either TAGGED
, UNTAGGED
or ANY
.
/// For example, you can filter your results to return only UNTAGGED
images
/// and then pipe that result to a BatchDeleteImage operation to delete them. Or,
/// you can filter your results to return only TAGGED
images to list all
/// of the tags in your repository.
///
///
/// Container for the necessary parameters to execute the ListImages service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListImages service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for ListImages Operation
public virtual Task ListImagesAsync(ListImagesRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = ListImagesRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListImagesResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region ListTagsForResource
internal virtual ListTagsForResourceResponse ListTagsForResource(ListTagsForResourceRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = ListTagsForResourceRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListTagsForResourceResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// List the tags for an Amazon ECR resource.
///
/// Container for the necessary parameters to execute the ListTagsForResource service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListTagsForResource service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for ListTagsForResource Operation
public virtual Task ListTagsForResourceAsync(ListTagsForResourceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = ListTagsForResourceRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListTagsForResourceResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region PutImage
internal virtual PutImageResponse PutImage(PutImageRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = PutImageRequestMarshaller.Instance;
options.ResponseUnmarshaller = PutImageResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Creates or updates the image manifest and tags associated with an image.
///
///
///
/// When an image is pushed and all new image layers have been uploaded, the PutImage
/// API is called once to create or update the image manifest and the tags associated
/// with the image.
///
///
///
/// This operation is used by the Amazon ECR proxy and is not generally used by customers
/// for pulling and pushing images. In most cases, you should use the docker
/// CLI to pull, tag, and push images.
///
///
///
/// Container for the necessary parameters to execute the PutImage service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the PutImage service method, as returned by ECR.
///
/// The specified image has already been pushed, and there were no changes to the manifest
/// or image tag after the last push.
///
///
/// The specified image digest does not match the digest that Amazon ECR calculated for
/// the image.
///
///
/// The specified image is tagged with a tag that already exists. The repository is configured
/// for tag immutability.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The operation failed due to a KMS exception.
///
///
/// The specified layers could not be found, or the specified layer is not valid for this
/// repository.
///
///
/// The operation did not succeed because it would have exceeded a service limit for your
/// account. For more information, see Amazon
/// ECR service quotas in the Amazon Elastic Container Registry User Guide.
///
///
/// The manifest list is referencing an image that does not exist.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for PutImage Operation
public virtual Task PutImageAsync(PutImageRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = PutImageRequestMarshaller.Instance;
options.ResponseUnmarshaller = PutImageResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region PutImageScanningConfiguration
internal virtual PutImageScanningConfigurationResponse PutImageScanningConfiguration(PutImageScanningConfigurationRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = PutImageScanningConfigurationRequestMarshaller.Instance;
options.ResponseUnmarshaller = PutImageScanningConfigurationResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
///
///
/// The PutImageScanningConfiguration
API is being deprecated, in favor of
/// specifying the image scanning configuration at the registry level. For more information,
/// see PutRegistryScanningConfiguration.
///
///
///
/// Updates the image scanning configuration for the specified repository.
///
///
/// Container for the necessary parameters to execute the PutImageScanningConfiguration service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the PutImageScanningConfiguration service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// There was an exception validating this request.
///
/// REST API Reference for PutImageScanningConfiguration Operation
public virtual Task PutImageScanningConfigurationAsync(PutImageScanningConfigurationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = PutImageScanningConfigurationRequestMarshaller.Instance;
options.ResponseUnmarshaller = PutImageScanningConfigurationResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region PutImageTagMutability
internal virtual PutImageTagMutabilityResponse PutImageTagMutability(PutImageTagMutabilityRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = PutImageTagMutabilityRequestMarshaller.Instance;
options.ResponseUnmarshaller = PutImageTagMutabilityResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Updates the image tag mutability settings for the specified repository. For more information,
/// see Image
/// tag mutability in the Amazon Elastic Container Registry User Guide.
///
/// Container for the necessary parameters to execute the PutImageTagMutability service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the PutImageTagMutability service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for PutImageTagMutability Operation
public virtual Task PutImageTagMutabilityAsync(PutImageTagMutabilityRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = PutImageTagMutabilityRequestMarshaller.Instance;
options.ResponseUnmarshaller = PutImageTagMutabilityResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region PutLifecyclePolicy
internal virtual PutLifecyclePolicyResponse PutLifecyclePolicy(PutLifecyclePolicyRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = PutLifecyclePolicyRequestMarshaller.Instance;
options.ResponseUnmarshaller = PutLifecyclePolicyResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Creates or updates the lifecycle policy for the specified repository. For more information,
/// see Lifecycle
/// policy template.
///
/// Container for the necessary parameters to execute the PutLifecyclePolicy service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the PutLifecyclePolicy service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for PutLifecyclePolicy Operation
public virtual Task PutLifecyclePolicyAsync(PutLifecyclePolicyRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = PutLifecyclePolicyRequestMarshaller.Instance;
options.ResponseUnmarshaller = PutLifecyclePolicyResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region PutRegistryPolicy
internal virtual PutRegistryPolicyResponse PutRegistryPolicy(PutRegistryPolicyRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = PutRegistryPolicyRequestMarshaller.Instance;
options.ResponseUnmarshaller = PutRegistryPolicyResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Creates or updates the permissions policy for your registry.
///
///
///
/// A registry policy is used to specify permissions for another Amazon Web Services account
/// and is used when configuring cross-account replication. For more information, see
/// Registry
/// permissions in the Amazon Elastic Container Registry User Guide.
///
///
/// Container for the necessary parameters to execute the PutRegistryPolicy service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the PutRegistryPolicy service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// There was an exception validating this request.
///
/// REST API Reference for PutRegistryPolicy Operation
public virtual Task PutRegistryPolicyAsync(PutRegistryPolicyRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = PutRegistryPolicyRequestMarshaller.Instance;
options.ResponseUnmarshaller = PutRegistryPolicyResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region PutRegistryScanningConfiguration
internal virtual PutRegistryScanningConfigurationResponse PutRegistryScanningConfiguration(PutRegistryScanningConfigurationRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = PutRegistryScanningConfigurationRequestMarshaller.Instance;
options.ResponseUnmarshaller = PutRegistryScanningConfigurationResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Creates or updates the scanning configuration for your private registry.
///
/// Container for the necessary parameters to execute the PutRegistryScanningConfiguration service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the PutRegistryScanningConfiguration service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// There was an exception validating this request.
///
/// REST API Reference for PutRegistryScanningConfiguration Operation
public virtual Task PutRegistryScanningConfigurationAsync(PutRegistryScanningConfigurationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = PutRegistryScanningConfigurationRequestMarshaller.Instance;
options.ResponseUnmarshaller = PutRegistryScanningConfigurationResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region PutReplicationConfiguration
internal virtual PutReplicationConfigurationResponse PutReplicationConfiguration(PutReplicationConfigurationRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = PutReplicationConfigurationRequestMarshaller.Instance;
options.ResponseUnmarshaller = PutReplicationConfigurationResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Creates or updates the replication configuration for a registry. The existing replication
/// configuration for a repository can be retrieved with the DescribeRegistry API
/// action. The first time the PutReplicationConfiguration API is called, a service-linked
/// IAM role is created in your account for the replication process. For more information,
/// see Using
/// service-linked roles for Amazon ECR in the Amazon Elastic Container Registry
/// User Guide.
///
///
///
/// When configuring cross-account replication, the destination account must grant the
/// source account permission to replicate. This permission is controlled using a registry
/// permissions policy. For more information, see PutRegistryPolicy.
///
///
///
/// Container for the necessary parameters to execute the PutReplicationConfiguration service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the PutReplicationConfiguration service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// There was an exception validating this request.
///
/// REST API Reference for PutReplicationConfiguration Operation
public virtual Task PutReplicationConfigurationAsync(PutReplicationConfigurationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = PutReplicationConfigurationRequestMarshaller.Instance;
options.ResponseUnmarshaller = PutReplicationConfigurationResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region SetRepositoryPolicy
internal virtual SetRepositoryPolicyResponse SetRepositoryPolicy(SetRepositoryPolicyRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = SetRepositoryPolicyRequestMarshaller.Instance;
options.ResponseUnmarshaller = SetRepositoryPolicyResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Applies a repository policy to the specified repository to control access permissions.
/// For more information, see Amazon
/// ECR Repository policies in the Amazon Elastic Container Registry User Guide.
///
/// Container for the necessary parameters to execute the SetRepositoryPolicy service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the SetRepositoryPolicy service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for SetRepositoryPolicy Operation
public virtual Task SetRepositoryPolicyAsync(SetRepositoryPolicyRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = SetRepositoryPolicyRequestMarshaller.Instance;
options.ResponseUnmarshaller = SetRepositoryPolicyResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region StartImageScan
internal virtual StartImageScanResponse StartImageScan(StartImageScanRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = StartImageScanRequestMarshaller.Instance;
options.ResponseUnmarshaller = StartImageScanResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Starts an image vulnerability scan. An image scan can only be started once per 24
/// hours on an individual image. This limit includes if an image was scanned on initial
/// push. For more information, see Image
/// scanning in the Amazon Elastic Container Registry User Guide.
///
/// Container for the necessary parameters to execute the StartImageScan service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the StartImageScan service method, as returned by ECR.
///
/// The image requested does not exist in the specified repository.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The operation did not succeed because it would have exceeded a service limit for your
/// account. For more information, see Amazon
/// ECR service quotas in the Amazon Elastic Container Registry User Guide.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// The image is of a type that cannot be scanned.
///
///
/// There was an exception validating this request.
///
/// REST API Reference for StartImageScan Operation
public virtual Task StartImageScanAsync(StartImageScanRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = StartImageScanRequestMarshaller.Instance;
options.ResponseUnmarshaller = StartImageScanResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region StartLifecyclePolicyPreview
internal virtual StartLifecyclePolicyPreviewResponse StartLifecyclePolicyPreview(StartLifecyclePolicyPreviewRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = StartLifecyclePolicyPreviewRequestMarshaller.Instance;
options.ResponseUnmarshaller = StartLifecyclePolicyPreviewResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Starts a preview of a lifecycle policy for the specified repository. This allows you
/// to see the results before associating the lifecycle policy with the repository.
///
/// Container for the necessary parameters to execute the StartLifecyclePolicyPreview service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the StartLifecyclePolicyPreview service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The lifecycle policy could not be found, and no policy is set to the repository.
///
///
/// The previous lifecycle policy preview request has not completed. Wait and try again.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for StartLifecyclePolicyPreview Operation
public virtual Task StartLifecyclePolicyPreviewAsync(StartLifecyclePolicyPreviewRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = StartLifecyclePolicyPreviewRequestMarshaller.Instance;
options.ResponseUnmarshaller = StartLifecyclePolicyPreviewResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region TagResource
internal virtual TagResourceResponse TagResource(TagResourceRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = TagResourceRequestMarshaller.Instance;
options.ResponseUnmarshaller = TagResourceResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Adds specified tags to a resource with the specified ARN. Existing tags on a resource
/// are not changed if they are not specified in the request parameters.
///
/// Container for the necessary parameters to execute the TagResource service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the TagResource service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// An invalid parameter has been specified. Tag keys can have a maximum character length
/// of 128 characters, and tag values can have a maximum length of 256 characters.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// The list of tags on the repository is over the limit. The maximum number of tags that
/// can be applied to a repository is 50.
///
/// REST API Reference for TagResource Operation
public virtual Task TagResourceAsync(TagResourceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = TagResourceRequestMarshaller.Instance;
options.ResponseUnmarshaller = TagResourceResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region UntagResource
internal virtual UntagResourceResponse UntagResource(UntagResourceRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = UntagResourceRequestMarshaller.Instance;
options.ResponseUnmarshaller = UntagResourceResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Deletes specified tags from a resource.
///
/// Container for the necessary parameters to execute the UntagResource service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UntagResource service method, as returned by ECR.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// An invalid parameter has been specified. Tag keys can have a maximum character length
/// of 128 characters, and tag values can have a maximum length of 256 characters.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// The list of tags on the repository is over the limit. The maximum number of tags that
/// can be applied to a repository is 50.
///
/// REST API Reference for UntagResource Operation
public virtual Task UntagResourceAsync(UntagResourceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = UntagResourceRequestMarshaller.Instance;
options.ResponseUnmarshaller = UntagResourceResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region UploadLayerPart
internal virtual UploadLayerPartResponse UploadLayerPart(UploadLayerPartRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = UploadLayerPartRequestMarshaller.Instance;
options.ResponseUnmarshaller = UploadLayerPartResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Uploads an image layer part to Amazon ECR.
///
///
///
/// When an image is pushed, each new image layer is uploaded in parts. The maximum size
/// of each image layer part can be 20971520 bytes (or about 20MB). The UploadLayerPart
/// API is called once per each new image layer part.
///
///
///
/// This operation is used by the Amazon ECR proxy and is not generally used by customers
/// for pulling and pushing images. In most cases, you should use the docker
/// CLI to pull, tag, and push images.
///
///
///
/// Container for the necessary parameters to execute the UploadLayerPart service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UploadLayerPart service method, as returned by ECR.
///
/// The layer part size is not valid, or the first byte specified is not consecutive to
/// the last byte of a previous layer part upload.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The operation failed due to a KMS exception.
///
///
/// The operation did not succeed because it would have exceeded a service limit for your
/// account. For more information, see Amazon
/// ECR service quotas in the Amazon Elastic Container Registry User Guide.
///
///
/// 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.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// The upload could not be found, or the specified upload ID is not valid for this repository.
///
/// REST API Reference for UploadLayerPart Operation
public virtual Task UploadLayerPartAsync(UploadLayerPartRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = UploadLayerPartRequestMarshaller.Instance;
options.ResponseUnmarshaller = UploadLayerPartResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
}
}