Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Compatibilidad con Python
CodeArtifact admite la API PyPI Simple Repository /simple/<project>/ en, utilizada pip por twineuv, y otros clientes de Python. Los clientes eligen entre las respuestas HTML y JSON mediante el encabezado de la Accept solicitud.
Compatibilidad con la API de repositorio simple
CodeArtifact implementa la versión 1.1 de la API PyPI Simple Repository tal como se define en PEP 503, PEP 691
El punto final admite los siguientes tipos de contenido de Accept encabezado: /simple/<project>/
application/vnd.pypi.simple.v1+json: respuesta JSON (PEP 691, PEP 700).application/vnd.pypi.simple.v1+html: respuesta HTML (PEP 503).application/vnd.pypi.simple.latest+json: se resuelve con la última versión de JSON compatible.application/vnd.pypi.simple.latest+html: pasa a la última versión HTML compatible.text/html,*/*, o sinAcceptencabezado: respuesta HTML (predeterminada para la compatibilidad con versiones anteriores).
Si un cliente especifica un Accept encabezado que no incluye ninguno de los tipos de contenido admitidos, CodeArtifact devuelve406 Not Acceptable.
Las respuestas de JSON incluyen los campos PEP 700 y versionssize, upload-time junto con los campos PEP 691. Las respuestas HTML tienen el mismo tiempo de carga por artefacto que el data-upload-time atributo de cada enlace de artefacto.
Es posible que falten upload-time los campos size y en las versiones de paquetes almacenadas en caché antes de habilitar la captura de metadatos por activo. Cuando un cliente solicita un paquete de este tipo a través de la API JSON Simple Repository, CodeArtifact recupera los metadatos del registro original y rellena los campos que faltan. El cliente no requiere ninguna acción, y las solicitudes posteriores de la misma versión del paquete devuelven los metadatos completos.
pip23.0 y versiones posteriores y uv envían el Accept encabezado JSON de forma predeterminada, por lo que la mayoría de los clientes reciben JSON sin ninguna configuración adicional.
Ejemplo: solicitar JSON para un proyecto
El siguiente ejemplo se utiliza curl para obtener la respuesta de la API JSON Simple Repository para el requests proyecto. Obtenga la URL del repositorio y aws codeartifact get-repository-endpoint el token de autorización deaws 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
El punto final de CodeArtifact PyPI acepta la autenticación básica HTTP (awsnombre de usuario y contraseña configurados en su token de autorización) o la autenticación con token de portador. Las twine configuraciones pip y que se muestran en otras partes de esta guía utilizan HTTP Basic.
El siguiente ejemplo muestra una respuesta JSON típica (truncada por motivos de brevedad). Los upload-time campos versionssize, y son del PEP 700; los campos hashesrequires-python, y son del 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 } ] }
APIs PyPI no compatibles
CodeArtifact no admite las siguientes API de PyPI:
La API XML-RPC PyPI
. La API JSON de PyPI Warehouse, que proporciona puntos finales JSON
a nivel de proyecto y a nivel de versión en. /pypi/Se trata de una API independiente de la variante PEP 691 JSON de la API Simple Repository, que sí es compatible. CodeArtifactEl punto final
/simple/de la lista de proyectos. Solo se admite el punto final/simple/<project>/de detalles del proyecto.
Para obtener más información sobre las API de PyPI, consulta la referencia sobre las API antiguas en el sitio web
soporte de comandos pip
En las siguientes secciones se resumen los comandos pip que admiten los CodeArtifact repositorios, además de los comandos específicos que no lo son.
Temas
Comandos compatibles que interactúan con un repositorio
En esta sección se enumeran los comandos pip en los que el cliente pip realiza una o más solicitudes al registro con el que se ha configurado. Se ha comprobado que estos comandos funcionan correctamente cuando se invocan en un repositorio. CodeArtifact
CodeArtifact no implementapip search. Si lo has configurado pip con un CodeArtifact repositorio, al ejecutar pip search se buscarán y mostrarán los paquetes de PyPI
Comandos del lado del cliente compatibles
Estos comandos no requieren ninguna interacción directa con un repositorio, por lo que CodeArtifact no es necesario hacer nada para respaldarlos.
| Comando | Description (Descripción) |
|---|---|
|
Desinstalar paquetes. |
|
|
Salida de paquetes instalados en formato de requisitos. |
|
|
Ver una lista de los paquetes instalados. |
|
|
Mostrar información acerca de los paquetes instalados. |
|
|
Comprobar que los paquetes instalados tengan dependencias compatibles. |
|
|
Administrar la configuración local y global. |
|
|
Construir ruedas a partir de sus necesidades. |
|
|
Calcular los hashes de los archivos de los paquetes. |
|
|
Ayuda a completar los comandos. |
|
|
Mostrar información útil para depuración. |
|
|
help |
Mostrar la ayuda para los comandos. |