

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Ordre de priorité du référentiel en amont
<a name="repo-upstream-search-order"></a>

 Lorsque vous demandez une version de package à partir d'un référentiel comportant un ou plusieurs référentiels en amont, leur priorité correspond à l'ordre dans lequel ils ont été répertoriés lors de l'appel de la `update-repository` commande `create-repository` or. Lorsque la version du package demandée est trouvée, la recherche s'arrête, même si la recherche n'a pas été effectuée dans tous les référentiels en amont. Pour de plus amples informations, veuillez consulter [Ajouter ou supprimer des référentiels en amont ()AWS CLI](repo-upstream-add.md#repo-upstream-add-cli). 

 Utilisez la `describe-repository` commande pour voir l'ordre de priorité.

```
aws codeartifact describe-repository --repository {{my_repo}} --domain {{my_domain}} --domain-owner {{111122223333}}
```

 Le résultat peut être le suivant. Cela montre que la priorité du dépôt en amont est `upstream-1` la première, `upstream-2` la deuxième et la `upstream-3` troisième. 

```
{
    "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": []
    }
}
```

## Exemple d'ordre de priorité simple
<a name="upstream-priority-order-simple"></a>

 Dans le schéma suivant, le `my_repo` référentiel comporte trois référentiels en amont. L'ordre de priorité des référentiels en amont est`upstream-1`,`upstream-2`,`upstream-3`. 

![Schéma de référentiel en amont simple montrant my_repo avec 3 référentiels en amont.](http://docs.aws.amazon.com/fr_fr/codeartifact/latest/ug/images/upstream-diagram-simple.png)


 Une demande de version de package in `my_repo` recherche les référentiels dans l'ordre suivant jusqu'à ce qu'elle soit trouvée ou jusqu'à ce qu'une `Not Found` réponse HTTP 404 soit renvoyée au client : 

1.  `my_repo` 

1.  `upstream-1` 

1.  `upstream-2` 

1.  `upstream-3` 

Si la version du package est trouvée, la recherche s'arrête, même si elle n'a pas été recherchée dans tous les référentiels en amont. Par exemple, si la version du package est trouvée dans`upstream-1`, la recherche s'arrête et CodeArtifact ne porte pas sur `upstream-2` ou`upstream-3`. 

 Lorsque vous utilisez la AWS CLI commande `list-package-versions` pour répertorier les versions du package`my_repo`, elle n'y apparaît que`my_repo`. Il ne répertorie pas les versions des packages dans les référentiels en amont. 

## Exemple d'ordre de priorité complexe
<a name="upstream-search-order-complex"></a>

 Si un dépôt en amont possède ses propres référentiels en amont, la même logique est utilisée pour trouver une version de package avant de passer au dépôt en amont suivant. Supposons, par exemple, que votre `my_repo` référentiel comporte deux référentiels en amont, `A` et`B`. Si le référentiel `A` possède des référentiels en amont, une demande de version de package apparaît d'`my_repo`abord `my_repo``A`, puis dans les référentiels en amont de`A`, et ainsi de suite. 

 Dans le schéma suivant, le `my_repo` référentiel contient les référentiels en amont. `A`Le référentiel en amont comporte deux référentiels en amont et en `D` possède un en amont. Les référentiels en amont situés au même niveau dans le diagramme apparaissent dans leur ordre de priorité, de gauche à droite (le référentiel `A` a un ordre de priorité plus élevé que le référentiel`B`, et le référentiel `C` a un ordre de priorité plus élevé que le référentiel`D`). 

![Un schéma de référentiel en amont plus complexe avec 2 référentiels en amont A et B et des référentiels en amont supplémentaires.](http://docs.aws.amazon.com/fr_fr/codeartifact/latest/ug/images/upstream-diagram-complex.png)


Dans cet exemple, une demande de version de package est consultée dans `my_repo` les référentiels dans l'ordre suivant jusqu'à ce qu'elle soit trouvée ou jusqu'à ce qu'un gestionnaire de packages renvoie une `Not Found` réponse HTTP 404 au client : 

1.  `my_repo` 

1.  `A` 

1.  `C` 

1.  `D` 

1.  `E` 

1.  `B` 