Stocker des packages Java dans Artifact Registry

Ce guide de démarrage rapide vous explique comment configurer un dépôt Maven Artifact Registry privé et y importer un package.


Pour obtenir des instructions détaillées sur cette tâche directement dans la console Google Cloud, cliquez sur Visite guidée :

Visite guidée


Avant de commencer

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Artifact Registry API.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the Artifact Registry API.

    Enable the API

Lancer Cloud Shell

Dans ce guide de démarrage rapide, vous allez utiliser Cloud Shell, qui est un environnement shell permettant de gérer les ressources hébergées Google Cloud.

Cloud Shell est préinstallé avec la Google Cloud CLI et Java. gcloud CLI fournit l'interface de ligne de commande principale pour Google Cloud.

Lancez Cloud Shell :

  1. Accédez à Google Cloud Console.

    Google Cloud Console

  2. Dans la barre d'outils de la console Google Cloud, cliquez sur Activer Cloud Shell :

Une session Cloud Shell s'ouvre dans un cadre situé en bas de la console. Cette interface système vous permet d'exécuter les commandes gcloud.

Créer un dépôt de packages Java

Créez le dépôt pour vos artefacts Java.

  1. Créez le dépôt :

Console

  1. Ouvrez la page Dépôts de la console Google Cloud.

    Ouvrir la page "Dépôts"

  2. Cliquez sur Créer un dépôt.

  3. Spécifiez quickstart-java-repo comme nom de dépôt.

  4. Choisissez Maven comme format et Standard comme mode.

  5. Sous Type d'emplacement, sélectionnez Région, puis l'emplacement us-central1.

  6. Cliquez sur Créer.

    Le dépôt est ajouté à la liste des dépôts.

gcloud

  1. Exécutez la commande suivante pour créer un dépôt de packages Java dans le projet actuel quickstart-java-repo à l'emplacement us-central1.

    gcloud artifacts repositories create quickstart-java-repo --repository-format=maven \
    --location=us-central1 --description="Java package repository"
    
  2. Exécutez la commande suivante pour vérifier que votre dépôt a bien été créé :

    gcloud artifacts repositories list
    

    Exécutez la commande gcloud artifacts pour obtenir plus d'informations sur les commandes Artifact Registry.

Configurer Maven

  1. Choisissez un projet Maven simple que vous souhaitez utiliser.

    Si vous n'avez pas de projet simple disponible, vous pouvez créer le projet Maven in 5 minutes.

    Dans ce guide de démarrage rapide, nous partons du principe que votre projet simple ne dispose pas dépendances de parent ou de plug-in stockées dans Artifact Registry. Pour en savoir plus sur la configuration d'un projet Maven avec des dépendances dans Artifact Registry, consultez la section S'authentifier avec un assistant d'identification.

  2. Pour simplifier les commandes gcloud, définissez le dépôt par défaut sur quickstart-java-repo et l'emplacement par défaut sur us-central1. Une fois les valeurs définies, vous n'avez pas besoin de les spécifier dans les commandes gcloud nécessitant un dépôt ou un emplacement.

    Pour définir le dépôt, exécutez la commande suivante :

    gcloud config set artifacts/repository quickstart-java-repo
    

    Pour définir l'emplacement, exécutez la commande suivante :

    gcloud config set artifacts/location us-central1
    

    Pour plus d'informations sur ces commandes, consultez la documentation gcloud config set.

  3. Exécutez la commande suivante pour imprimer les paramètres du dépôt quickstart-java-repo par défaut.

    gcloud artifacts print-settings mvn
    

    La sortie de la commande gcloud ressemble à l'extrait suivant, où PROJECT est l'ID de votre projet.

    <distributionManagement>
      <snapshotRepository>
        <id>artifact-registry</id>
        <url>artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo</url>
      </snapshotRepository>
      <repository>
        <id>artifact-registry</id>
        <url>artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo</url>
      </repository>
    </distributionManagement>
    
    <repositories>
      <repository>
        <id>artifact-registry</id>
        <url>artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo</url>
        <releases>
          <enabled>true</enabled>
        </releases>
        <snapshots>
          <enabled>true</enabled>
        </snapshots>
      </repository>
    </repositories>
    
    <build>
      <extensions>
        <extension>
          <groupId>com.google.cloud.artifactregistry</groupId>
          <artifactId>artifactregistry-maven-wagon</artifactId>
          <version>2.2.3</version>
        </extension>
      </extensions>
    </build>
    
  4. Ajoutez les paramètres au fichier pom.xml pour votre projet Maven. La structure suivante montre le positionnement relatif de chaque élément principal. Reportez-vous à la documentation de référence POM de Maven pour en savoir plus sur la structure du fichier.

    <project xmlns="http://maven.apache.org/POM/4.0.0"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
                          http://maven.apache.org/xsd/maven-4.0.0.xsd">
    
      <!-- Build Settings -->
      <build>
        ...
        <extensions>...</extensions>
      </build>
    
      <!-- Environment Settings -->
      <repositories>...</repositories>
      <distributionManagement>...</distributionManagement>
    </project>
    

Votre projet Maven peut désormais importer des packages dans votre dépôt.

Configurer Gradle

Créer un projet Gradle simple pour déployer un package dans Artifact Registry que vous avez créé. Si vous n'avez pas de build Gradle de test, vous pouvez suivre le tutoriel d'introduction Gradle ; pour créer un build Gradle simple.

Pour simplifier les commandes gcloud, définissez le dépôt par défaut sur quickstart-java-repo et l'emplacement par défaut sur us-central1. Une fois les valeurs définies, vous n'avez pas besoin de les spécifier dans les commandes gcloud nécessitant un dépôt ou un emplacement.

Pour définir le dépôt, exécutez la commande suivante :

gcloud config set artifacts/repository quickstart-java-repo

Pour définir l'emplacement, exécutez la commande suivante :

gcloud config set artifacts/location us-central1

Pour plus d'informations sur ces commandes, consultez la documentation gcloud config set.

  1. Ajoutez les paramètres pour connecter le dépôt au fichier build.gradle. La commande suivante affiche les paramètres à ajouter pour le dépôt par défaut quickstart-java-repo.

    gcloud artifacts print-settings gradle
    

    La sortie de la commande gcloud ressemble à l'exemple suivant, où PROJECT est l'ID de votre projet.

    plugins {
      id "maven-publish"
      id "com.google.cloud.artifactregistry.gradle-plugin" version "2.2.3"
          }
    
    publishing {
      repositories {
        maven {
          url "artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo"
        }
      }
    }
    
    repositories {
      maven {
        url "artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo"
      }
    }
    
  2. Vérifiez que le fichier build.gradle inclut une section dédiée aux publications. Si ce n'est pas le cas, ajoutez-la à votre fichier build.gradle.

    La section publications est un enfant de publishing, comme indiqué. dans l'exemple suivant:

    publishing {
      publications {
           mavenJava(MavenPublication) {
              groupId  'maven.example.id'
              from components.java
           }
      }
      repositories {
        maven {
          url "artifactregistry://us-central1-maven.pkg.dev/PROJECT/quickstart-java-repo"
        }
      }
    }
    

    Vous pouvez également ajouter la configuration du dépôt à vos fichiers init.gradle ou settings. Pour en savoir plus sur ces options, consultez la page Configurer l'authentification.

    Importer un package dans le dépôt

    Pour Maven, vous pouvez utiliser mvn deploy et mvn release pour ajouter des packages au dépôt.

    Pour Gradle, exécutez la commande gradle publish pour importer un package dans le dépôt.

    Afficher le package dans le dépôt

    Pour vérifier que votre package a bien été ajouté au dépôt :

    Console

    1. Ouvrez la page Dépôts de la console Google Cloud.

      Ouvrir la page "Dépôts"

    2. Dans la liste des dépôts, cliquez sur le dépôt quickstart-java-repo.

      La page Packages répertorie les packages du dépôt.

    gcloud

    1. Pour lister les packages dans le dépôt quickstart-java-repo, exécutez la commande suivante :

      gcloud artifacts packages list --repository=quickstart-java-repo
      

      Le résultat doit ressembler à ce qui suit :

      Listing items under project <project-id>, location us-central1,\
      repository quickstart-java-repo.
      
      PACKAGE: maven.example.id:gradle-demo
      CREATE_TIME: 2022-01-20T22:46:07
      UPDATE_TIME: 2022-01-20T22:46:07
      

      maven.example.id:gradle-demo correspond à l'ID de package.

      Pour afficher les versions d'un package, exécutez la commande suivante :

      gcloud artifacts versions list --package=PACKAGE
      

      PACKAGE correspond à l'ID de package.

Effectuer un nettoyage

Pour éviter que les ressources utilisées sur cette page soient facturées sur votre compte Google Cloud, procédez comme suit :

Avant de supprimer le dépôt, assurez-vous que tous les packages que vous souhaitez conserver sont disponibles à un autre emplacement.

Pour supprimer le dépôt :

Console

  1. Ouvrez la page Dépôts de la console Google Cloud.

    Ouvrir la page "Dépôts"

  2. Dans la liste des dépôts, sélectionnez le dépôt quickstart-java-repo.

  3. Cliquez sur Supprimer.

gcloud

  1. Pour supprimer le dépôt quickstart-java-repo, exécutez la commande suivante :

    gcloud artifacts repositories delete quickstart-java-repo
    
  2. Si vous souhaitez supprimer le dépôt par défaut et les paramètres d'emplacement que vous avez définis pour la configuration gcloud active, exécutez les commandes suivantes :

    gcloud config unset artifacts/repository
    gcloud config unset artifacts/location
    

Étape suivante