Usar CodeArtifact con deps.edn - CodeArtifact

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.

Usar CodeArtifact con deps.edn

Se usa deps.edn con clj para administrar las dependencias de los proyectos de Clojure. En esta sección se muestra cómo configurar deps.edn para usar un repositorio de CodeArtifact.

Extraer dependencias

Para configurar Clojure para recuperar dependencias de un repositorio de CodeArtifact, debe editar el archivo de configuración de Maven, settings.xml.

  1. En settings.xml, añada una sección <servers> con una referencia a la variable de entorno CODEARTIFACT_AUTH_TOKEN para que Clojure pase el token en las solicitudes HTTP.

    nota

    Clojure espera que el archivo settings.xml esté ubicado en ~/.m2/settings.xml. Si está en otro lugar, cree el archivo en esta ubicación.

    <settings> ... <servers> <server> <id>codeartifact</id> <username>aws</username> <password>${env.CODEARTIFACT_AUTH_TOKEN}</password> </server> </servers> ... </settings>
  2. Si aún no tiene uno, genere un XML POM para su proyecto utilizando clj -Spom.

  3. En su archivo de configuración deps.edn, añada un repositorio que coincida con el identificador del servidor de Maven settings.xml.

    :mvn/repos { "clojars" nil "central" nil "codeartifact" {:url "https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/maven/my_repo/"} }
    nota
    • tools.deps garantiza que los repositorios central y clojars se comprueben primero para ver si hay bibliotecas de Maven. Después, se revisarán los demás repositorios listados en deps.edn.

    • Para evitar que se descarguen directamente desde Clojars y Maven Central, hay que configurar central y clojars en nil.

    Asegúrese de tener el token de autenticación de CodeArtifact en una variable de entorno (consulte Pasar un token de autenticación mediante una variable de entorno). Al compilar el paquete después de estos cambios, las dependencias en deps.edn se obtendrán de CodeArtifact.

    nota

    Si quiere utilizar un punto de conexión de pila doble, use el punto de conexión codeartifact.region.on.aws.

Publicar artefactos

  1. Actualice su configuración de Maven y deps.edn para incluir CodeArtifact como un servidor reconocido por Maven (consulte Extraer dependencias). Puede usar una herramienta como deps-deploy para cargar artefactos en CodeArtifact.

  2. En su build.clj, añada una tarea deploy para cargar los artefactos necesarios en el repositorio codeartifact previamente configurado.

    (ns build (:require [deps-deploy.deps-deploy :as dd])) (defn deploy [_] (dd/deploy {:installer :remote :artifact "PATH_TO_JAR_FILE.jar" :pom-file "pom.xml" ;; pom containing artifact coordinates :repository "codeartifact"}))
  3. Publique el artefacto ejecutando el comando clj -T:build deploy:

Para obtener más información sobre la modificación de los repositorios predeterminados, consulte Modificación de los repositorios predeterminados en Clojure Deps y CLI Reference Rationale.