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
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 plus d’informations, consultez Ajouter ou supprimer des référentiels en amont ()AWS CLI.
Utilisez la describe-repository
commande pour voir l'ordre de priorité.
aws codeartifact describe-repository --repository
my_repo
--domainmy_domain
--domain-owner111122223333
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
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 estupstream-1
,upstream-2
,upstream-3
.
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 :
-
my_repo
-
upstream-1
-
upstream-2
-
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 dansupstream-1
, la recherche s'arrête et CodeArtifact ne porte pas sur upstream-2
ouupstream-3
.
Lorsque vous utilisez la AWS CLI commande list-package-versions
pour répertorier les versions du packagemy_repo
, elle n'y apparaît quemy_repo
. Il ne répertorie pas les versions des packages dans les référentiels en amont.
Exemple d'ordre de priorité complexe
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
etB
. 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 deA
, 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érentielB
, et le référentiel C
a un ordre de priorité plus élevé que le référentielD
).
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 :
-
my_repo
-
A
-
C
-
D
-
E
-
B