CodeArtifact / Client / copy_package_versions

copy_package_versions#

CodeArtifact.Client.copy_package_versions(**kwargs)#

Copies package versions from one repository to another repository in the same domain.

Note

You must specify versions or versionRevisions. You cannot specify both.

See also: AWS API Documentation

Request Syntax

response = client.copy_package_versions(
    domain='string',
    domainOwner='string',
    sourceRepository='string',
    destinationRepository='string',
    format='npm'|'pypi'|'maven'|'nuget'|'generic'|'ruby'|'swift'|'cargo',
    namespace='string',
    package='string',
    versions=[
        'string',
    ],
    versionRevisions={
        'string': 'string'
    },
    allowOverwrite=True|False,
    includeFromUpstream=True|False
)
Parameters:
  • domain (string) –

    [REQUIRED]

    The name of the domain that contains the source and destination repositories.

  • domainOwner (string) – The 12-digit account number of the Amazon Web Services account that owns the domain. It does not include dashes or spaces.

  • sourceRepository (string) –

    [REQUIRED]

    The name of the repository that contains the package versions to be copied.

  • destinationRepository (string) –

    [REQUIRED]

    The name of the repository into which package versions are copied.

  • format (string) –

    [REQUIRED]

    The format of the package versions to be copied.

  • namespace (string) –

    The namespace of the package versions to be copied. The package component that specifies its namespace depends on its type. For example:

    Note

    The namespace is required when copying package versions of the following formats:

    • Maven

    • Swift

    • generic

    • The namespace of a Maven package version is its groupId.

    • The namespace of an npm or Swift package version is its scope.

    • The namespace of a generic package is its namespace.

    • Python, NuGet, Ruby, and Cargo package versions do not contain a corresponding component, package versions of those formats do not have a namespace.

  • package (string) –

    [REQUIRED]

    The name of the package that contains the versions to be copied.

  • versions (list) –

    The versions of the package to be copied.

    Note

    You must specify versions or versionRevisions. You cannot specify both.

    • (string) –

  • versionRevisions (dict) –

    A list of key-value pairs. The keys are package versions and the values are package version revisions. A CopyPackageVersion operation succeeds if the specified versions in the source repository match the specified package version revision.

    Note

    You must specify versions or versionRevisions. You cannot specify both.

    • (string) –

      • (string) –

  • allowOverwrite (boolean) – 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 failedVersions field of the response with an ALREADY_EXISTS error code.

  • includeFromUpstream (boolean) – 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 Working with upstream repositories.

Return type:

dict

Returns:

Response Syntax

{
    'successfulVersions': {
        'string': {
            'revision': 'string',
            'status': 'Published'|'Unfinished'|'Unlisted'|'Archived'|'Disposed'|'Deleted'
        }
    },
    'failedVersions': {
        'string': {
            'errorCode': 'ALREADY_EXISTS'|'MISMATCHED_REVISION'|'MISMATCHED_STATUS'|'NOT_ALLOWED'|'NOT_FOUND'|'SKIPPED',
            'errorMessage': 'string'
        }
    }
}

Response Structure

  • (dict) –

    • successfulVersions (dict) –

      A list of the package versions that were successfully copied to your repository.

      • (string) –

        • (dict) –

          Contains the revision and status of a package version.

          • revision (string) –

            The revision of a package version.

          • status (string) –

            The status of a package version.

    • failedVersions (dict) –

      A map of package versions that failed to copy and their error codes. The possible error codes are in the PackageVersionError data type. They are:

      • ALREADY_EXISTS

      • MISMATCHED_REVISION

      • MISMATCHED_STATUS

      • NOT_ALLOWED

      • NOT_FOUND

      • SKIPPED

      • (string) –

        • (dict) –

          l An error associated with package.

          • errorCode (string) –

            The error code associated with the error. Valid error codes are:

            • ALREADY_EXISTS

            • MISMATCHED_REVISION

            • MISMATCHED_STATUS

            • NOT_ALLOWED

            • NOT_FOUND

            • SKIPPED

          • errorMessage (string) –

            The error message associated with the error.

Exceptions