Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Python-Kompatibilität
CodeArtifact unterstützt die PyPI Simple Repository-API unter/simple/<project>/,, und anderen pip Python-Clientstwine, die vonuv,, verwendet wird. Kunden wählen mithilfe des Accept Anforderungsheaders zwischen HTML- und JSON-Antworten.
Einfache Repository-API-Unterstützung
CodeArtifact implementiert Version 1.1 der PyPI Simple Repository API, wie in PEP 503, PEP
Die folgenden Accept Header-Inhaltstypen werden auf dem Endpunkt unterstützt: /simple/<project>/
application/vnd.pypi.simple.v1+json: JSON-Antwort (PEP 691, PEP 700).application/vnd.pypi.simple.v1+html: HTML-Antwort (PEP 503).application/vnd.pypi.simple.latest+json: wird in die neueste unterstützte JSON-Version aufgelöst.application/vnd.pypi.simple.latest+html: wird in die neueste unterstützte HTML-Version aufgelöst.text/html,*/*, oder keinAcceptHeader: HTML-Antwort (Standard aus Gründen der Abwärtskompatibilität).
Gibt ein Client einen Accept Header an, der keinen der unterstützten Inhaltstypen enthält, wird CodeArtifact zurückgegeben406 Not Acceptable.
JSON-Antworten umfassen die PEP 700-Felder versions und upload-time zusammen mit den PEP 691-Feldern. size HTML-Antworten haben dieselbe Uploadzeit pro Artefakt wie ein data-upload-time Attribut auf jedem Artefakt-Link.
Die upload-time Felder size und fehlen möglicherweise für Paketversionen, die zwischengespeichert wurden, bevor die Erfassung der Metadaten pro Asset aktiviert wurde. Wenn ein Client ein solches Paket über die JSON Simple Repository API anfordert, werden die Metadaten CodeArtifact erneut aus der Upstream-Registrierung abgerufen und die fehlenden Felder gefüllt. Es ist kein Eingreifen des Kunden erforderlich, und nachfolgende Anfragen für dieselbe Paketversion geben die vollständigen Metadaten zurück.
pip23.0 und höher und uv sendet standardmäßig den Accept JSON-Header, sodass die meisten Clients JSON ohne zusätzliche Konfiguration erhalten.
Beispiel: JSON für ein Projekt anfordern
Im folgenden Beispiel wird curl die Antwort der JSON Simple Repository API für das requests Projekt abgerufen. Ruft die Repository-URL von aws codeartifact get-repository-endpoint und das Autorisierungstoken von abaws 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/"
Anmerkung
Der CodeArtifact PyPI-Endpunkt akzeptiert entweder die HTTP Basic-Authentifizierung (Benutzernameaws, Passwort, das auf Ihr Autorisierungstoken festgelegt ist) oder die Bearer-Token-Authentifizierung. Die pip twine Konfigurationen, die an anderer Stelle in diesem Handbuch gezeigt werden, verwenden HTTP Basic.
Das folgende Beispiel zeigt eine typische JSON-Antwort (der Kürze halber gekürzt). Die upload-time Felder versionssize, und stammen aus PEP 700; die Felder hashesrequires-python, und stammen aus PEP yanked 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 } ] }
Nicht unterstützte PyPI-APIs
CodeArtifact unterstützt die folgenden PyPI-APIs nicht:
Die PyPI Warehouse JSON-API, die JSON-Endpunkte
auf Projekt- und Release-Ebene unter bereitstellt. /pypi/Dies ist eine separate API von der PEP 691 JSON-Variante der Simple Repository-API, die diese unterstützt. CodeArtifactDer Endpunkt der Projektliste.
/simple/Nur der Endpunkt mit den Projektdetails/simple/<project>/wird unterstützt.
Weitere Informationen zu den PyPI-APIs finden Sie in der Legacy-API-Referenz
Unterstützung für Pip-Befehle
In den folgenden Abschnitten werden die Pip-Befehle zusammengefasst, die von CodeArtifact Repositorys unterstützt werden, zusätzlich zu bestimmten Befehlen, die nicht unterstützt werden.
Unterstützte Befehle, die mit einem Repository interagieren
In diesem Abschnitt sind pip Befehle aufgeführt, bei denen der pip Client eine oder mehrere Anfragen an die Registry stellt, mit der er konfiguriert wurde. Es wurde überprüft, ob diese Befehle korrekt funktionieren, wenn sie in einem CodeArtifact Repository aufgerufen werden.
| Befehl | Description |
|---|---|
|
Installiere Pakete. |
|
|
Pakete herunterladen. |
CodeArtifact implementiert nichtpip search. Wenn Sie pip mit einem CodeArtifact Repository konfiguriert haben, pip search werden beim Ausführen Pakete von PyPI
Unterstützte clientseitige Befehle
Diese Befehle erfordern keine direkte Interaktion mit einem Repository und müssen daher auch CodeArtifact nichts tun, um sie zu unterstützen.
| Befehl | Description |
|---|---|
|
Pakete deinstallieren. |
|
|
Gibt installierte Pakete im Anforderungsformat aus. |
|
|
Listet die installierten Pakete auf. |
|
|
sh |
Zeigt Informationen über installierte Pakete an. |
|
Stellen Sie sicher, dass die installierten Pakete kompatible Abhängigkeiten haben. |
|
|
Verwalten Sie die lokale und globale Konfiguration. |
|
|
Baue Räder nach deinen Anforderungen. |
|
|
Berechnet die Hashes von Paketarchiven. |
|
|
Hilft bei der Befehlsvervollständigung. |
|
|
Zeigt Informationen an, die für das Debuggen nützlich sind. |
|
|
help |
Zeigt Hilfe für Befehle an. |