本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
删除软件包或软件包版本
可以使用 delete-package-versions 命令一次删除一个或多个程序包版本。要从存储库中完全删除程序包(包括所有关联的版本和配置),请使用 delete-package 命令。存储库中的程序包可以没有任何程序包版本。当使用 delete-package-versions 命令删除所有版本时,或者使用 put-package-origin-configuration API 操作创建没有任何版本的程序包时(请参阅编辑程序包来源控制),可能会出现这种情况。
主题
删除软件包 (AWS CLI)
您可以使用 delete-package 命令删除程序包,包括其所有程序包版本和配置。以下示例删除 my_domain 域的存储库 my_repo 中名为 my-package 的 PyPI 程序包:
aws codeartifact delete-package --domainmy_domain--domain-owner111122223333\ --repositorymy_repo--formatpypi\ --packagemy-package
示例输出:
{ "deletedPackage": { "format": "pypi", "originConfiguration": { "restrictions": { "publish": "ALLOW", "upstream": "BLOCK" } }, "package": "my-package" } }
您可以对同一个程序包运行 describe-package 来确认已删除程序包:
aws codeartifact describe-package --domainmy_domain--domain-owner111122223333\ --repositorymy_repo--formatpypi--packagemy-package
删除软件包(控制台)
在 https://console.aws.amazon.com/codesuite/codeartifact
/hom AWS CodeArtifact e 打开控制台。 -
在导航窗格中,选择存储库。
-
选择要从中删除程序包的存储库。
-
选择要删除的程序包。
-
选择删除程序包。
删除程序包版本 (AWS CLI)
可以使用 delete-package-versions 命令一次删除一个或多个程序包版本。以下示例删除 my_domain 域的 my_repo 中名为 my-package 的 PyPI 程序包的版本 4.0.0、4.0.1 和 5.0.0:
aws codeartifact delete-package-versions --domainmy_domain--domain-owner111122223333\ --repositorymy_repo--formatpypi\ --packagemy-package--versions4.0.0 4.0.1 5.0.0
示例输出:
{ "successfulVersions": { "4.0.0": { "revision": "oxwwYC9dDeuBoCt6+PDSwL6OMZ7rXeiXy44BM32Iawo=", "status": "Deleted" }, "4.0.1": { "revision": "byaaQR748wrsdBaT+PDSwL6OMZ7rXeiBKM0551aqWmo=", "status": "Deleted" }, "5.0.0": { "revision": "yubm34QWeST345ts+ASeioPI354rXeiSWr734PotwRw=", "status": "Deleted" } }, "failedVersions": {} }
您可以对同一个程序包运行 list-package-versions 来确认已删除版本:
aws codeartifact list-package-versions --domainmy_domain--domain-owner111122223333\ --repositorymy_repo--formatpypi--packagemy-package
删除软件包版本(控制台)
在 https://console.aws.amazon.com/codesuite/codeartifact
/hom AWS CodeArtifact e 打开控制台。 在导航窗格中,选择存储库。
选择要从中删除程序包版本的存储库。
选择要从中删除版本的程序包。
选择要删除的程序包版本。
选择删除。
注意
在控制台中,可以一次仅删除一个程序包版本。要一次删除多个版本,请使用 CLI。
删除 npm 软件包或软件包版本
要删除 npm 程序包或单个程序包版本,请将 --format 选项设置为 npm。要删除限定范围的 npm 程序包中的程序包版本,请使用 --namespace 选项来指定作用域。例如,要删除程序包 @types/react,请使用 --namespace types。使用 --namespace 时省略 @ 符号。
aws codeartifact delete-package-versions --domainmy_domain--domain-owner111122223333\ --repositorymy_repo--format npm --namespacetypes\ --packagereact--versions0.12.2
要删除程序包 @types/react,包括其所有版本,请执行以下操作:
aws codeartifact delete-package --domainmy_domain--domain-owner111122223333\ --repositorymy_repo--format npm --namespacetypes\ --packagereact
删除 Maven 软件包或软件包版本
要删除 Maven 程序包或单个程序包版本,请将 --format 选项设置为 maven,并使用 --namespace 选项传递 Maven 组 ID 和使用 --name 选项传递 Maven artifactID,从而指定要删除的程序包。例如,下面说明了如何删除 com.google.guava:guava 的单个版本。
aws codeartifact delete-package-versions --domainmy_domain--domain-owner111122223333\ --repositorymy_repo--format maven --namespacecom.google.guava\ --packageguava--versions27.1-jre
以下示例说明如何删除程序包 com.google.guava:guava,包括其所有版本:
aws codeartifact delete-package --domainmy_domain--domain-owner111122223333\ --repositorymy_repo--format maven --namespacecom.google.guava\ --packageguava
删除软件包或软件包版本的最佳做法
如果您确实需要删除软件包版本,作为最佳实践,建议您创建一个存储库来存储要删除的软件包版本的备份副本。你可以先调用备份存储库copy-package-versions来做到这一点:
aws codeartifact copy-package-versions --domainmy_domain--domain-owner111122223333--source-repositorymy_repo\ --destination-repositoryrepo-2--packagemy-package--format npm \ --versions6.0.2 4.0.0
复制软件包版本后,您可以调用要删除delete-package-versions的软件包或软件包版本。
aws codeartifact delete-package-versions --domainmy_domain--domain-owner111122223333\ --repositorymy_repo--formatpypi\ --packagemy-package--versions4.0.0 4.0.1 5.0.0