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à.
Compatibilità con Python
CodeArtifact supporta l'API PyPI Simple Repository su/simple/<project>/, utilizzata da pip twineuv, e altri client Python. I client scelgono tra le risposte HTML e JSON utilizzando l'intestazione della richiesta. Accept
Supporto dell'API Simple Repository
CodeArtifact implementa la versione 1.1 dell'API PyPI Simple Repository come definita da PEP 503, PEP 691
I seguenti tipi di contenuto dell'Acceptintestazione sono supportati sull'endpoint: /simple/<project>/
application/vnd.pypi.simple.v1+json: risposta JSON (PEP 691, PEP 700).application/vnd.pypi.simple.v1+html: risposta HTML (PEP 503).application/vnd.pypi.simple.latest+json: passa all'ultima versione JSON supportata.application/vnd.pypi.simple.latest+html: passa all'ultima versione HTML supportata.text/html*/*, o nessunaAcceptintestazione: risposta HTML (impostazione predefinita per la compatibilità con le versioni precedenti).
Se un client specifica un'Acceptintestazione che non include nessuno dei tipi di contenuto supportati, restituisce. CodeArtifact 406 Not Acceptable
Le risposte JSON includono i campi PEP 700 e versions size i campi PEP upload-time 691. Le risposte HTML hanno lo stesso tempo di caricamento per artefatto di un attributo su ciascun collegamento dell'artefatto. data-upload-time
I upload-time campi size and potrebbero mancare per le versioni dei pacchetti memorizzate nella cache prima dell'attivazione dell'acquisizione dei metadati per asset. Quando un client richiede un pacchetto di questo tipo tramite l'API JSON Simple Repository, CodeArtifact recupera nuovamente i metadati dal registro upstream e compila i campi mancanti. Non è richiesta alcuna azione da parte del cliente e le richieste successive per la stessa versione del pacchetto restituiscono i metadati completi.
pip23.0 e versioni successive e uv invia l'Acceptintestazione JSON per impostazione predefinita, in modo che la maggior parte dei client riceva JSON senza alcuna configurazione aggiuntiva.
Esempio: richiedere JSON per un progetto
L'esempio seguente utilizza curl per recuperare la risposta dell'API JSON Simple Repository per il progetto. requests Ottieni l'URL del repository da e il token aws codeartifact get-repository-endpoint di autorizzazione da. aws codeartifact get-authorization-token
curl --header "Accept: application/vnd.pypi.simple.v1+json" \ --header "Authorization: Bearer $CODEARTIFACT_AUTH_TOKEN" \ "https://my_domain-111122223333.d.codeartifact.region.amazonaws.com/pypi/my_repo/simple/requests/"
Nota
L'endpoint CodeArtifact PyPI accetta l'autenticazione HTTP Basic (nome utenteaws, password impostati sul token di autorizzazione) o l'autenticazione tramite token Bearer. Le configurazioni pip e twine le configurazioni mostrate altrove in questa guida utilizzano HTTP Basic.
L'esempio seguente mostra una tipica risposta JSON (troncata per brevità). I upload-time campi versionssize, e provengono da PEP 700; i campi hashesrequires-python, e yanked provengono da PEP 691.
{ "meta": { "api-version": "1.1" }, "name": "requests", "versions": [ "2.31.0", "2.32.0", "2.32.3" ], "files": [ { "filename": "requests-2.32.3-py3-none-any.whl", "url": "2.32.3/requests-2.32.3-py3-none-any.whl", "hashes": { "sha256": "70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6", "md5": "df6df19f49fc7ae54ee5ff2dd3d22d2c" }, "requires-python": ">=3.8", "size": 64928, "upload-time": "2024-05-29T15:37:49.123456Z", "yanked": false } ] }
API PyPI non supportate
CodeArtifact non supporta le seguenti API PyPI:
L'API JSON di PyPI Warehouse, che fornisce endpoint JSON
a livello di progetto e di versione in. /pypi/Si tratta di un'API separata dalla variante JSON PEP 691 dell'API Simple Repository, che supporta. CodeArtifactL'endpoint dell'elenco dei progetti.
/simple/È supportato solo l'endpoint/simple/<project>/di dettaglio del progetto.
Per ulteriori informazioni sulle API PyPI, consulta il riferimento alle API Legacy sul sito Web
supporto per i comandi pip
Le sezioni seguenti riepilogano i comandi pip supportati dai CodeArtifact repository, oltre ai comandi specifici che non sono supportati.
Comandi supportati che interagiscono con un repository
Questa sezione elenca pip i comandi in cui il pip client effettua una o più richieste al registro con cui è stato configurato. È stato verificato che questi comandi funzionino correttamente quando vengono richiamati su un CodeArtifact repository.
| Comando | Description |
|---|---|
|
Installa pacchetti. |
|
|
Scarica i pacchetti. |
CodeArtifact non implementapip search. Se hai configurato pip con un CodeArtifact repository, l'esecuzione pip search cercherà e mostrerà i pacchetti da PyPI
Comandi lato client supportati
Questi comandi non richiedono alcuna interazione diretta con un repository, quindi CodeArtifact non è necessario fare nulla per supportarli.
| Comando | Description |
|---|---|
|
Disinstalla i pacchetti. |
|
|
Visualizza i pacchetti installati nel formato dei requisiti. |
|
|
Elenca i pacchetti installati. |
|
|
sh |
Mostra informazioni sui pacchetti installati. |
|
Verifica che i pacchetti installati abbiano dipendenze compatibili. |
|
|
Gestisci la configurazione locale e globale. |
|
|
Costruisci ruote in base alle tue esigenze. |
|
|
Calcola gli hash degli archivi dei pacchetti. |
|
|
Aiuta a completare i comandi. |
|
|
Mostra informazioni utili per il debug. |
|
|
aiuto |
Mostra l'aiuto per i comandi. |