À utiliser CodeArtifact avec deps.edn - CodeArtifact

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

À utiliser CodeArtifact avec deps.edn

Vous pouvez utiliserdeps.edn avecclj pour gérer les dépendances des projets Clojure. Cette section explique comment configurer l'utilisationdeps.edn d'un CodeArtifact référentiel.

Récupère les dépendances

Pour configurerClojure afin de récupérer les dépendances depuis un CodeArtifact référentiel, vous devez modifier le fichier de configuration Maven,settings.xml.

  1. Danssettings.xml, ajoutez une<servers> section contenant une référence à la variable d'CODEARTIFACT_AUTH_TOKENenvironnement afin que Clojure transmette le jeton dans les requêtes HTTP.

    Note

    Clojure s'attend à ce que le fichier settings.xml se trouve à l'adresse~/.m2/settings.xml. Si ce n'est pas le cas, créez le fichier à cet emplacement.

    <settings> ... <servers> <server> <id>codeartifact</id> <username>aws</username> <password>${env.CODEARTIFACT_AUTH_TOKEN}</password> </server> </servers> ... </settings>
  2. Si vous n'en avez pas déjà un, générez un fichier XML POM pour votre projet à l'aide declj -Spom.

  3. Dans votre fichierdeps.edn de configuration, ajoutez un référentiel correspondant à l'identifiant du serveur de Mavensettings.xml.

    :mvn/repos { "clojars" nil "central" nil "codeartifact" {:url "https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/maven/my_repo/"} }
    Note
    • tools.depsgarantit que lesclojars référentielscentral et seront d'abord vérifiés pour les bibliothèques Maven. Ensuite, les autres référentiels répertoriés dansdeps.edn seront vérifiés.

    • Pour empêcher le téléchargement direct depuis Clojars et Maven Central,centralclojars vous devez le configurer surnil.

    Assurez-vous que le jeton CodeArtifact Auth figure dans une variable d'environnement (voirTransmettre un jeton d'authentification à l'aide d'une variable d'environnement). Lors de la création du package après ces modifications, les dépendancesdeps.edn seront extraites CodeArtifact.

Publier des artefacts

  1. Mettez à jour vos paramètres Maven etdeps.edn incluez-les CodeArtifact en tant que serveur reconnu par Maven (voirRécupère les dépendances). Vous pouvez utiliser un outil tel que deps-deploy pour télécharger des artefacts CodeArtifact.

  2. Dans votrebuild.clj, ajoutez unedeploy tâche pour télécharger les artefacts requis dans lecodeartifact référentiel précédemment configuré.

    (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. Publiez l'artefact en exécutant la commande suivante :clj -T:build deploy

Pour plus d'informations sur la modification des référentiels par défaut, consultez la section Modification des référentiels par défaut dans la justification de référence de Clojure Deps et CLI.