翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
アップストリームリポジトリでの API 動作
アップストリームリポジトリに接続されているリポジトリで特定の CodeArtifact APIs を呼び出す場合、パッケージまたはパッケージバージョンがターゲットリポジトリまたはアップストリームリポジトリに保存されているかどうかによって、動作が異なる場合があります。これらのAPIの動作については、こちらを参照してください。
CodeArtifact APIsCodeArtifact リファレンス」を参照してください。
パッケージやパッケージバージョンを参照するほとんどのAPIは、指定されたパッケージバージョンがターゲットリポジトリに存在しない場合、ResourceNotFound
エラーを返します。これは、パッケージまたはパッケージバージョンがアップストリームリポジトリに存在する場合にも当てはまります。実際には、これらのAPIを呼び出すとき、アップストリームリポジトリは無視されます。それらのAPIは次のとおりです:
DeletePackageVersions
DescribePackageVersion
GetPackageVersionAsset
GetPackageVersionReadme
ListPackages
ListPackageVersionAssets
ListPackageVersionDependencies
ListPackageVersions
UpdatePackageVersionsStatus
この動作を確認するには、target-repo
とupstream-repo
の2つのリポジトリがあります:target-repo
は空で、アップストリームリポジトリとして設定されているupstream-repo
を持っています。upstream-repo
にはnpmパッケージlodash
が含まれます。
lodash
パッケージを含むupstream-repo
上にある DescribePackageVersion
APIを呼び出すと、次の結果が得られます。
{ "packageVersion": { "format": "npm", "packageName": "lodash", "displayName": "lodash", "version": "4.17.20", "summary": "Lodash modular utilities.", "homePage": "https://lodash.com/", "sourceCodeRepository": "https://github.com/lodash/lodash.git", "publishedTime": "2020-10-14T11:06:10.370000-04:00", "licenses": [ { "name": "MIT" } ], "revision": "Ciqe5/9yicvkJT13b5/LdLpCyE6fqA7poa9qp+FilPs=", "status": "Published" }
空でありながらアップストリームとして設定されている upstream-repo
を持つ target-repo
上の同じ API を呼び出すと、以下の結果が得られます。
An error occurred (ResourceNotFoundException) when calling the DescribePackageVersion operation: Package not found in repository. RepoId:
repo-id
, Package = PackageCoordinate{packageType=npm, packageName=lodash},
CopyPackageVersions
APIの動作は異なります。デフォルトでは、CopyPackageVersions
API は、ターゲットリポジトリに格納されているパッケージバージョンのみをコピーします。パッケージバージョンがアップストリームリポジトリに格納されているが、ターゲットリポジトリには保存されていない場合、コピーされません。アップストリームリポジトリにのみ格納されているパッケージのパッケージバージョンを含めるには、APIリクエストのincludeFromUpstream
の値をtrue
にセットします。
CopyPackageVersions
APIの詳細については、リポジトリ間でのパッケージのコピー を参照してください。