software.amazon.awssdk.services.codeartifact.package-info Maven / Gradle / Ivy
Show all versions of codeartifact Show documentation
/*
* 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.
*/
/**
*
* CodeArtifact is a fully managed artifact repository compatible with language-native package managers and build tools
* such as npm, Apache Maven, pip, and dotnet. You can use CodeArtifact to share packages with development teams and
* pull packages. Packages can be pulled from both public and CodeArtifact repositories. You can also create an upstream
* relationship between a CodeArtifact repository and another repository, which effectively merges their contents from
* the point of view of a package manager client.
*
*
* CodeArtifact concepts
*
*
* -
*
* Repository: A CodeArtifact repository contains a set of package
* versions, each of which maps to a set of assets, or files. Repositories are polyglot, so a single repository can
* contain packages of any supported type. Each repository exposes endpoints for fetching and publishing packages using
* tools such as the npm
CLI or the Maven CLI ( mvn
). For a list of supported
* package managers, see the CodeArtifact User
* Guide.
*
*
* -
*
* Domain: Repositories are aggregated into a higher-level entity known as a domain. All package assets
* and metadata are stored in the domain, but are consumed through repositories. A given package asset, such as a Maven
* JAR file, is stored once per domain, no matter how many repositories it's present in. All of the assets and metadata
* in a domain are encrypted with the same customer master key (CMK) stored in Key Management Service (KMS).
*
*
* Each repository is a member of a single domain and can't be moved to a different domain.
*
*
* The domain allows organizational policy to be applied across multiple repositories, such as which accounts can access
* repositories in the domain, and which public repositories can be used as sources of packages.
*
*
* Although an organization can have multiple domains, we recommend a single production domain that contains all
* published artifacts so that teams can find and share packages across their organization.
*
*
* -
*
* Package: A package is a bundle of software and the metadata required to resolve dependencies and
* install the software. CodeArtifact supports npm, PyPI, Maven, NuGet, Swift, Ruby, Cargo, and generic package formats.
* For more information about the supported package formats and how to use CodeArtifact with them, see the CodeArtifact User Guide.
*
*
* In CodeArtifact, a package consists of:
*
*
* -
*
* A name (for example, webpack
is the name of a popular npm package)
*
*
* -
*
* An optional namespace (for example, @types
in @types/node
)
*
*
* -
*
* A set of versions (for example, 1.0.0
, 1.0.1
, 1.0.2
, etc.)
*
*
* -
*
* Package-level metadata (for example, npm tags)
*
*
*
*
* -
*
* Package group: A group of packages that match a specified definition. Package groups can be used to apply
* configuration to multiple packages that match a defined pattern using package format, package namespace, and package
* name. You can use package groups to more conveniently configure package origin controls for multiple packages.
* Package origin controls are used to block or allow ingestion or publishing of new package versions, which protects
* users from malicious actions known as dependency substitution attacks.
*
*
* -
*
* Package version: A version of a package, such as @types/node 12.6.9
. The version number format
* and semantics vary for different package formats. For example, npm package versions must conform to the Semantic Versioning specification. In CodeArtifact, a package version consists of the
* version identifier, metadata at the package version level, and a set of assets.
*
*
* -
*
* Upstream repository: One repository is upstream of another when the package versions in it can be
* accessed from the repository endpoint of the downstream repository, effectively merging the contents of the two
* repositories from the point of view of a client. CodeArtifact allows creating an upstream relationship between two
* repositories.
*
*
* -
*
* Asset: An individual file stored in CodeArtifact associated with a package version, such as an npm
* .tgz
file or Maven POM and JAR files.
*
*
*
*
* CodeArtifact supported API operations
*
*
* -
*
* AssociateExternalConnection
: Adds an existing external connection to a repository.
*
*
* -
*
* CopyPackageVersions
: Copies package versions from one repository to another repository in the same
* domain.
*
*
* -
*
* CreateDomain
: Creates a domain.
*
*
* -
*
* CreatePackageGroup
: Creates a package group.
*
*
* -
*
* CreateRepository
: Creates a CodeArtifact repository in a domain.
*
*
* -
*
* DeleteDomain
: Deletes a domain. You cannot delete a domain that contains repositories.
*
*
* -
*
* DeleteDomainPermissionsPolicy
: Deletes the resource policy that is set on a domain.
*
*
* -
*
* DeletePackage
: Deletes a package and all associated package versions.
*
*
* -
*
* DeletePackageGroup
: Deletes a package group. Does not delete packages or package versions that are
* associated with a package group.
*
*
* -
*
* DeletePackageVersions
: Deletes versions of a package. After a package has been deleted, it can be
* republished, but its assets and metadata cannot be restored because they have been permanently removed from storage.
*
*
* -
*
* DeleteRepository
: Deletes a repository.
*
*
* -
*
* DeleteRepositoryPermissionsPolicy
: Deletes the resource policy that is set on a repository.
*
*
* -
*
* DescribeDomain
: Returns a DomainDescription
object that contains information about the
* requested domain.
*
*
* -
*
* DescribePackage
: Returns a PackageDescription object that contains details about a package.
*
*
* -
*
* DescribePackageGroup
: Returns a PackageGroup object
* that contains details about a package group.
*
*
* -
*
* DescribePackageVersion
: Returns a PackageVersionDescription object that contains details about a package version.
*
*
* -
*
* DescribeRepository
: Returns a RepositoryDescription
object that contains detailed
* information about the requested repository.
*
*
* -
*
* DisposePackageVersions
: Disposes versions of a package. A package version with the status
* Disposed
cannot be restored because they have been permanently removed from storage.
*
*
* -
*
* DisassociateExternalConnection
: Removes an existing external connection from a repository.
*
*
* -
*
* GetAssociatedPackageGroup
: Returns the most closely associated package group to the specified package.
*
*
* -
*
* GetAuthorizationToken
: Generates a temporary authorization token for accessing repositories in the
* domain. The token expires the authorization period has passed. The default authorization period is 12 hours and can
* be customized to any length with a maximum of 12 hours.
*
*
* -
*
* GetDomainPermissionsPolicy
: Returns the policy of a resource that is attached to the specified domain.
*
*
* -
*
* GetPackageVersionAsset
: Returns the contents of an asset that is in a package version.
*
*
* -
*
* GetPackageVersionReadme
: Gets the readme file or descriptive text for a package version.
*
*
* -
*
* GetRepositoryEndpoint
: Returns the endpoint of a repository for a specific package format. A repository
* has one endpoint for each package format:
*
*
* -
*
* cargo
*
*
* -
*
* generic
*
*
* -
*
* maven
*
*
* -
*
* npm
*
*
* -
*
* nuget
*
*
* -
*
* pypi
*
*
* -
*
* ruby
*
*
* -
*
* swift
*
*
*
*
* -
*
* GetRepositoryPermissionsPolicy
: Returns the resource policy that is set on a repository.
*
*
* -
*
* ListAllowedRepositoriesForGroup
: Lists the allowed repositories for a package group that has origin
* configuration set to ALLOW_SPECIFIC_REPOSITORIES
.
*
*
* -
*
* ListAssociatedPackages
: Returns a list of packages associated with the requested package group.
*
*
* -
*
* ListDomains
: Returns a list of DomainSummary
objects. Each returned
* DomainSummary
object contains information about a domain.
*
*
* -
*
* ListPackages
: Lists the packages in a repository.
*
*
* -
*
* ListPackageGroups
: Returns a list of package groups in the requested domain.
*
*
* -
*
* ListPackageVersionAssets
: Lists the assets for a given package version.
*
*
* -
*
* ListPackageVersionDependencies
: Returns a list of the direct dependencies for a package version.
*
*
* -
*
* ListPackageVersions
: Returns a list of package versions for a specified package in a repository.
*
*
* -
*
* ListRepositories
: Returns a list of repositories owned by the Amazon Web Services account that called
* this method.
*
*
* -
*
* ListRepositoriesInDomain
: Returns a list of the repositories in a domain.
*
*
* -
*
* ListSubPackageGroups
: Returns a list of direct children of the specified package group.
*
*
* -
*
* PublishPackageVersion
: Creates a new package version containing one or more assets.
*
*
* -
*
* PutDomainPermissionsPolicy
: Attaches a resource policy to a domain.
*
*
* -
*
* PutPackageOriginConfiguration
: Sets the package origin configuration for a package, which determine how
* new versions of the package can be added to a specific repository.
*
*
* -
*
* PutRepositoryPermissionsPolicy
: Sets the resource policy on a repository that specifies permissions to
* access it.
*
*
* -
*
* UpdatePackageGroup
: Updates a package group. This API cannot be used to update a package group's origin
* configuration or pattern.
*
*
* -
*
* UpdatePackageGroupOriginConfiguration
: Updates the package origin configuration for a package group.
*
*
* -
*
* UpdatePackageVersionsStatus
: Updates the status of one or more versions of a package.
*
*
* -
*
* UpdateRepository
: Updates the properties of a repository.
*
*
*
*/
package software.amazon.awssdk.services.codeartifact;