Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Ordine di priorità del repository upstream
Quando richiedi una versione del pacchetto da un repository con uno o più repository upstream, la loro priorità corrisponde all'ordine in cui erano elencati quando si chiamava il comando or. create-repository
update-repository
Quando viene trovata la versione del pacchetto richiesta, la ricerca si interrompe, anche se non è stata effettuata la ricerca in tutti gli archivi upstream. Per ulteriori informazioni, consulta Aggiungi o rimuovi i repository upstream ()AWS CLI.
Usa il describe-repository
comando per vedere l'ordine di priorità.
aws codeartifact describe-repository --repository
my_repo
--domainmy_domain
--domain-owner111122223333
Il risultato potrebbe essere il seguente. Mostra che la priorità del repository upstream è la upstream-1
prima, la upstream-2
seconda e upstream-3
la terza.
{ "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": [] } }
Semplice esempio di ordine di priorità
Nel diagramma seguente, il my_repo
repository ha tre repository upstream. L'ordine di priorità dei repository upstream è,,. upstream-1
upstream-2
upstream-3
![Semplice diagramma del repository upstream che mostra my_repo con 3 repository upstream.](images/upstream-diagram-simple.png)
Una richiesta per una versione del pacchetto my_repo
cerca nei repository nel seguente ordine finché non viene trovata o finché non viene restituita una risposta HTTP 404 al client: Not Found
-
my_repo
-
upstream-1
-
upstream-2
-
upstream-3
Se viene trovata la versione del pacchetto, la ricerca si interrompe, anche se non è stata cercata in tutti gli archivi upstream. Ad esempio, se la versione del pacchetto viene trovata inupstream-1
, la ricerca si interrompe e CodeArtifact non viene eseguita la ricerca in upstream-2
o. upstream-3
Quando si utilizza il AWS CLI comando list-package-versions
per elencare le versioni del pacchettomy_repo
, viene eseguita la ricerca solo inmy_repo
. Non elenca le versioni dei pacchetti negli archivi upstream.
Esempio di ordine di priorità complesso
Se un repository upstream ha i propri repository upstream, viene utilizzata la stessa logica per trovare una versione del pacchetto prima di passare al successivo repository upstream. Ad esempio, supponiamo che il repository abbia due my_repo
repository upstream e. A
B
Se il repository A
ha repository upstream, una richiesta per una versione del pacchetto viene my_repo
dapprima inserita my_repo
A
, poi negli archivi upstream di e così via. A
Nel diagramma seguente, il repository contiene repository upstream. my_repo
Il repository upstream A
ha due repository upstream e un repository upstream. D
I repository upstream allo stesso livello del diagramma vengono visualizzati nel loro ordine di priorità, da sinistra a destra (il repository ha un ordine di priorità più elevato rispetto al repository e il repository A
ha un ordine di priorità più elevato rispetto al repositoryB
). C
D
![Un diagramma di repository upstream più complesso con 2 repository upstream A e B e repository upstream aggiuntivi.](images/upstream-diagram-complex.png)
In questo esempio, una richiesta per una versione del pacchetto viene visualizzata nei my_repo
repository nell'ordine seguente finché non viene trovata o finché un gestore di pacchetti non restituisce una risposta HTTP 404 al client: Not Found
-
my_repo
-
A
-
C
-
D
-
E
-
B