Urutan prioritas repositori hulu - CodeArtifact

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Urutan prioritas repositori hulu

Ketika Anda meminta versi paket dari repositori dengan satu atau beberapa repositori hulu, prioritasnya sesuai dengan urutan yang terdaftar ketika memanggil perintah create-repository atau update-repository. Ketika versi paket yang diminta ditemukan, pencarian berhenti, meskipun tidak mencari semua repositori hulu. Untuk informasi selengkapnya, lihat Menambahkan atau menghapus repositori upstream ()AWS CLI.

Gunakan perintah describe-repository untuk melihat urutan prioritas.

aws codeartifact describe-repository --repository my_repo --domain my_domain --domain-owner 111122223333

Hasilnya mungkin sebagai berikut. Hal ini menunjukkan bahwa prioritas repositori hulu adalah pertama upstream-1, kedua upstream-2, dan ketiga upstream-3.

{ "repository": { "name": "my_repo", "administratorAccount": "123456789012", "domainName": "my_domain", "domainOwner": "111122223333", "arn": "arn:aws:codeartifact:us-east-1:111122223333:repository/my_domain/my_repo", "description": "My new repository", "upstreams": [ { "repositoryName": "upstream-1" }, { "repositoryName": "upstream-2" }, { "repositoryName": "upstream-3" } ], "externalConnections": [] } }

Contoh urutan prioritas sederhana

Pada diagram berikut, repositori my_repo memiliki tiga repositori hulu. Urutan prioritas dari repositori hulu adalah upstream-1, upstream-2, upstream-3.

Diagram repositori hulu sederhana menunjukkan my_repo dengan 3 repositori hulu.

Permintaan untuk versi paket di my_repo mencari repositori dalam urutan berikut sampai ditemukan, atau sampai respons HTTP 404 Not Found dikembalikan ke klien:

  1. my_repo

  2. upstream-1

  3. upstream-2

  4. upstream-3

Jika versi paket ditemukan, pencarian berhenti, bahkan jika tidak terlihat di semua repositori hulu. Misalnya, jika versi paket ditemukan diupstream-1, pencarian berhenti dan CodeArtifact tidak melihat upstream-2 atauupstream-3.

Saat Anda menggunakan AWS CLI perintah list-package-versions untuk membuat daftar versi paketmy_repo, itu hanya terlihat dimy_repo. Versi paket tidak dicantumkan di repositori hulu.

Contoh urutan prioritas kompleks

Jika repositori hulu memiliki repositori hulu sendiri, logika yang sama digunakan untuk menemukan versi paket sebelum pindah ke repositori hulu berikutnya. Misalnya, anggaplah repositori my_repo memiliki dua repositori hulu, A dan B. Jika repositori A memiliki repositori hulu, permintaan untuk versi paket di my_repo pertama melihat di my_repo, kedua di A, lalu di repositori hulu A, dan sebagainya.

Pada diagram berikut, repositori my_repo berisi repositori hulu. Repositori hulu A memiliki dua repositori hulu, dan D memiliki satu repositori hulu. Repositori hulu pada tingkat yang sama dalam diagram muncul dalam urutan prioritas mereka, kiri ke kanan (repositori A memiliki urutan prioritas yang lebih tinggi dari repositori B, dan repositori C memiliki urutan prioritas yang lebih tinggi dari repositori D).

Diagram repositori hulu yang lebih kompleks dengan 2 repositori hulu A dan B serta repositori hulu tambahan.

Dalam contoh ini, permintaan untuk versi paket di my_repo melihat di repositori dalam urutan berikut sampai ditemukan, atau sampai manajer paket mengembalikan respons HTTP 404 Not Found kepada klien:

  1. my_repo

  2. A

  3. C

  4. D

  5. E

  6. B