如何将每个工件从 Nexus 传输到 AWS CodeArtifact?

问题描述 投票:0回答:1

根据公司规定,我应该将每个工件从 Nexus 迁移到另一个解决方案,最好是 AWS CodeArtifact。

我们也有托管、代理和组类型的存储库,主要是 Maven 和 nuget。

到目前为止,我最好的想法是使用 Nexus REST API 并创建某种脚本来自动下载所有工件,并将它们上传回 AWS CA,但我不确定这是否是最佳解决方案。保持文件夹结构与 Nexus Web UI 上的相同也很重要。

我对 Nexus 和工件存储库总体来说还很陌生,所以任何提示将不胜感激。

amazon-web-services maven nexus aws-codeartifact nexus3-api
1个回答
0
投票

我认为确实最好使用使用 Nexus REST API 的脚本来下载包并通过 AWS CLI 将其发布到 CodeArtifact。您可以使用 publish-package-version 命令来实现此目的。您唯一需要做的就是将命令的确切参数与 Nexus 的属性相匹配。

domain=...  # From codeartifact
repo=...    # From codeartifact
format=...  # maven || nuget
package=... # From nexus
version=... # From nexus
content=... # From nexus
name=...    # From nexus
hash=...    # From nexus

aws codeartifact publish-package-version \
  --domain $domain \
  --repository $repo \
  --format $format \
  --package $package \
  --package-version $version \
  --asset-content $content \
  --asset-name $name \
  --asset-sha256 $hash
© www.soinside.com 2019 - 2024. All rights reserved.