Publier des artefacts avec Gradle
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019
Avec Azure Artifacts, vous pouvez gérer efficacement vos dépendances à partir d’un seul flux, en stockant différents types de packages à un seul endroit. Azure Artifacts permet aux développeurs de publier et de consommer des packages à partir de différentes sources et de les partager en fonction des paramètres de visibilité du flux. Dans cet article, vous allez apprendre à vous connecter à un flux Azure Artifacts et à publier vos packages à l’aide de Gradle.
Prérequis
Créez une Organisation Azure DevOps et un Projet si ce n’est pas déjà fait.
Créez un flux si vous n’en avez pas déjà un.
Téléchargez et installez Gradle.
Installez le Kit de développement Java (JDK) version 8 ou ultérieure.
Créer un jeton d’accès personnel
Pour vous authentifier auprès de votre flux, vous devez d’abord créer un jeton d’accès personnel avec l’empaquetage des étendues lecture et écriture :
Connectez-vous à votre organization Azure DevOps, puis accédez à votre projet.
Sélectionnez Paramètres utilisateur, puis jetons d’accès personnels.
Sélectionnez Nouveau jeton et renseignez les champs requis. Veillez à sélectionner l’étendue de lecture et d’écriture d’empaquetage.>
Sélectionnez Créer lorsque vous avez terminé. Copiez votre jeton et enregistrez-le dans un emplacement sécurisé, car vous en aurez besoin pour l’étape suivante.
Configuration du projet
Avant de configurer votre projet, vérifiez que Gradle est installé et que vous avez ajouté le plug-in Paramètres Maven à votre fichier build.gradle comme suit :
plugins {
id 'maven-publish'
}
Configurer build.gradle
Si un fichier build.gradle n’existe pas à la racine de votre projet, créez un fichier et nommez-le : build.gradle.
Ajoutez la section suivante à votre fichier build.gradle dans les référentiels et les conteneurs publishing.repositorys :
maven { url 'https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/maven/v1' //for organization-scoped feeds use this format: 'https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/maven/v1' name '<FEED_NAME>' credentials(PasswordCredentials) authentication { basic(BasicAuthentication) } }
Voici un exemple de ce à quoi doit ressembler votre fichier build.gradle :
repositories {
mavenCentral()
maven {
url 'https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/maven/v1' //for organization-scoped feeds use this format: 'https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/maven/v1'
name '<FEED_NAME>'
credentials(PasswordCredentials)
authentication {
basic(BasicAuthentication)
}
}
}
publishing {
publications {
library(MavenPublication) {
from components.java
}
}
repositories {
maven {
url 'https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/maven/v1' //for organization-scoped feeds use this format: 'https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/maven/v1'
name '<FEED_NAME>'
credentials(PasswordCredentials)
authentication {
basic(BasicAuthentication)
}
}
}
}
Configurer gradle.properties
Ouvrez le fichier gradle.properties situé dans le répertoire .gradle de votre dossier d’accueil (~/.gradle/gradle.properties). Si le fichier n’existe pas, créez-en un.
Ajoutez l’extrait de code suivant, en remplaçant les espaces réservés par le nom de votre flux, le nom de l’organisation et le jeton d’accès personnel que vous avez créé précédemment.
# Substitute FEED_NAME with the same name specified as the 'name' of the maven repository in build.gradle. # The value of the username is arbitrary but should not be blank. [FEED_NAME]Username=[ORGANIZATION_NAME] [FEED_NAME]Password=[PERSONAL_ACCESS_TOKEN]
Publier vos packages
Exécutez la commande suivante dans votre répertoire de projet pour publier votre package dans votre flux :
gradle publish