aws_sdk_codeartifact/client/copy_package_versions.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3 /// Constructs a fluent builder for the [`CopyPackageVersions`](crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder) operation.
4 ///
5 /// - The fluent builder is configurable:
6 /// - [`domain(impl Into<String>)`](crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder::domain) / [`set_domain(Option<String>)`](crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder::set_domain):<br>required: **true**<br><p>The name of the domain that contains the source and destination repositories.</p><br>
7 /// - [`domain_owner(impl Into<String>)`](crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder::domain_owner) / [`set_domain_owner(Option<String>)`](crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder::set_domain_owner):<br>required: **false**<br><p>The 12-digit account number of the Amazon Web Services account that owns the domain. It does not include dashes or spaces.</p><br>
8 /// - [`source_repository(impl Into<String>)`](crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder::source_repository) / [`set_source_repository(Option<String>)`](crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder::set_source_repository):<br>required: **true**<br><p>The name of the repository that contains the package versions to be copied.</p><br>
9 /// - [`destination_repository(impl Into<String>)`](crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder::destination_repository) / [`set_destination_repository(Option<String>)`](crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder::set_destination_repository):<br>required: **true**<br><p>The name of the repository into which package versions are copied.</p><br>
10 /// - [`format(PackageFormat)`](crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder::format) / [`set_format(Option<PackageFormat>)`](crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder::set_format):<br>required: **true**<br><p>The format of the package versions to be copied.</p><br>
11 /// - [`namespace(impl Into<String>)`](crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder::namespace) / [`set_namespace(Option<String>)`](crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder::set_namespace):<br>required: **false**<br><p>The namespace of the package versions to be copied. The package component that specifies its namespace depends on its type. For example:</p><note> <p>The namespace is required when copying package versions of the following formats:</p> <ul> <li> <p>Maven</p></li> <li> <p>Swift</p></li> <li> <p>generic</p></li> </ul> </note> <ul> <li> <p>The namespace of a Maven package version is its <code>groupId</code>.</p></li> <li> <p>The namespace of an npm or Swift package version is its <code>scope</code>.</p></li> <li> <p>The namespace of a generic package is its <code>namespace</code>.</p></li> <li> <p>Python, NuGet, Ruby, and Cargo package versions do not contain a corresponding component, package versions of those formats do not have a namespace.</p></li> </ul><br>
12 /// - [`package(impl Into<String>)`](crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder::package) / [`set_package(Option<String>)`](crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder::set_package):<br>required: **true**<br><p>The name of the package that contains the versions to be copied.</p><br>
13 /// - [`versions(impl Into<String>)`](crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder::versions) / [`set_versions(Option<Vec::<String>>)`](crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder::set_versions):<br>required: **false**<br><p>The versions of the package to be copied.</p><note> <p>You must specify <code>versions</code> or <code>versionRevisions</code>. You cannot specify both.</p> </note><br>
14 /// - [`version_revisions(impl Into<String>, impl Into<String>)`](crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder::version_revisions) / [`set_version_revisions(Option<HashMap::<String, String>>)`](crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder::set_version_revisions):<br>required: **false**<br><p>A list of key-value pairs. The keys are package versions and the values are package version revisions. A <code>CopyPackageVersion</code> operation succeeds if the specified versions in the source repository match the specified package version revision.</p><note> <p>You must specify <code>versions</code> or <code>versionRevisions</code>. You cannot specify both.</p> </note><br>
15 /// - [`allow_overwrite(bool)`](crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder::allow_overwrite) / [`set_allow_overwrite(Option<bool>)`](crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder::set_allow_overwrite):<br>required: **false**<br><p>Set to true to overwrite a package version that already exists in the destination repository. If set to false and the package version already exists in the destination repository, the package version is returned in the <code>failedVersions</code> field of the response with an <code>ALREADY_EXISTS</code> error code.</p><br>
16 /// - [`include_from_upstream(bool)`](crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder::include_from_upstream) / [`set_include_from_upstream(Option<bool>)`](crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder::set_include_from_upstream):<br>required: **false**<br><p>Set to true to copy packages from repositories that are upstream from the source repository to the destination repository. The default setting is false. For more information, see <a href="https://docs.aws.amazon.com/codeartifact/latest/ug/repos-upstream.html">Working with upstream repositories</a>.</p><br>
17 /// - On success, responds with [`CopyPackageVersionsOutput`](crate::operation::copy_package_versions::CopyPackageVersionsOutput) with field(s):
18 /// - [`successful_versions(Option<HashMap::<String, SuccessfulPackageVersionInfo>>)`](crate::operation::copy_package_versions::CopyPackageVersionsOutput::successful_versions): <p>A list of the package versions that were successfully copied to your repository.</p>
19 /// - [`failed_versions(Option<HashMap::<String, PackageVersionError>>)`](crate::operation::copy_package_versions::CopyPackageVersionsOutput::failed_versions): <p>A map of package versions that failed to copy and their error codes. The possible error codes are in the <code>PackageVersionError</code> data type. They are:</p> <ul> <li> <p><code>ALREADY_EXISTS</code></p></li> <li> <p><code>MISMATCHED_REVISION</code></p></li> <li> <p><code>MISMATCHED_STATUS</code></p></li> <li> <p><code>NOT_ALLOWED</code></p></li> <li> <p><code>NOT_FOUND</code></p></li> <li> <p><code>SKIPPED</code></p></li> </ul>
20 /// - On failure, responds with [`SdkError<CopyPackageVersionsError>`](crate::operation::copy_package_versions::CopyPackageVersionsError)
21 pub fn copy_package_versions(&self) -> crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder {
22 crate::operation::copy_package_versions::builders::CopyPackageVersionsFluentBuilder::new(self.handle.clone())
23 }
24}