

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

# Urutan prioritas repositori hulu
<a name="repo-upstream-search-order"></a>

 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](repo-upstream-add.md#repo-upstream-add-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
<a name="upstream-priority-order-simple"></a>

 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.\]](http://docs.aws.amazon.com/id_id/codeartifact/latest/ug/images/upstream-diagram-simple.png)


 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` 

1.  `upstream-1` 

1.  `upstream-2` 

1.  `upstream-3` 

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

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

## Contoh urutan prioritas kompleks
<a name="upstream-search-order-complex"></a>

 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.\]](http://docs.aws.amazon.com/id_id/codeartifact/latest/ug/images/upstream-diagram-complex.png)


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` 

1.  `A` 

1.  `C` 

1.  `D` 

1.  `E` 

1.  `B` 