

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` 