Tech Hub

@ Solution Architecture Works

Automatisez votre workflow avec GitHub Actions – Partie 2 sur 2

Qu’est-ce que GitHub Packages ?

Temps estimé :5 minutes 65 vues

GitHub Packages est un service de gestion de paquets qui facilite la publication de paquets publics ou privés à côté de votre code source.

Remarque

Si vous ne connaissez pas encore GitHub, consultez le module Introduction à GitHub.

GitHub Packages est un registre de paquets

GitHub Packages vous permet de partager les dépendances de votre projet au sein de votre organisation ou publiquement.

Lorsque vous travaillez sur un projet avec des dépendances de paquets, il est essentiel de pouvoir leur faire confiance, de comprendre leur code et de vous connecter à la communauté qui les a créés. Au sein d’une organisation, il est également important de pouvoir identifier rapidement ce qui a été approuvé pour votre usage.

GitHub Packages utilise la même interface GitHub familière pour rechercher des paquets publics sur l’ensemble de GitHub, ou des paquets privés au sein de votre organisation ou de vos dépôts.

Un gestionnaire de paquets standard

GitHub Packages est compatible avec les clients de gestion de paquets courants, ce qui vous permet de publier des paquets avec les outils de votre choix. Si votre dépôt est plus complexe, vous pouvez publier plusieurs paquets de types différents. Vous pouvez également utiliser des webhooks ou GitHub Actions pour personnaliser entièrement vos workflows de publication et post-publication.

Vous publiez un paquet open source ? De nombreux projets open source hébergent leur code sur GitHub, ce qui vous permet de publier des versions préliminaires de vos paquets pour les tester au sein de votre communauté, puis de promouvoir facilement certaines versions vers le registre public de votre choix.

Compatibilité de GitHub Packages avec les gestionnaires de paquets

Au moment de la rédaction, GitHub Packages est compatible avec les gestionnaires de paquets suivants :

  • npm, le gestionnaire de paquets pour NodeJS
  • NuGet, le gestionnaire de paquets pour .NET
  • RubyGems, le gestionnaire de paquets pour Ruby
  • Maven et Gradle, deux gestionnaires de paquets pour Java

GitHub Packages est aussi un registre de conteneurs

Des applications complètes aux utilitaires en ligne de commande (CLI), les conteneurs sont une autre manière de distribuer du code. GitHub Packages permet de publier et de distribuer des images de conteneurs. Une fois publiées (publiquement ou en privé), ces images peuvent être utilisées depuis n’importe où, notamment :

  • Dans votre environnement de développement local
  • Comme image de base dans votre environnement de développement GitHub Codespaces
  • Comme étape à exécuter dans votre workflow CI/CD (Intégration Continue / Déploiement Continu) avec GitHub Actions
  • Sur un serveur ou un service cloud

Comparer GitHub Packages à GitHub Releases

GitHub Packages est utilisé pour publier des versions de vos bibliothèques dans un flux de paquets standard ou un registre de conteneurs. Il est conçu pour tirer parti du fonctionnement spécifique du gestionnaire de paquets utilisé, comme le lien vers le dépôt dans lequel le paquet a été créé, ainsi que la version du code utilisée.

GitHub Releases, quant à lui, est utilisé pour publier un ensemble de logiciels empaquetés, accompagnés de notes de version et de liens vers des fichiers binaires. Vous pouvez télécharger ces versions directement via une URL unique et les relier au commit spécifique à partir duquel elles ont été créées. Les téléchargements se font uniquement sous forme d’archives tarball ou ZIP.

Identité et autorisations unifiées

Imaginons que vous travaillez sur un projet hébergé sur GitHub : JavaScript pour le front-end avec npm, et Java pour le back-end. Vous devez alors gérer au moins trois ensembles différents d’identifiants et d’autorisations : pour Git, npm et les dépôts Maven.

Avec GitHub Packages, vous pouvez utiliser un seul ensemble d’identifiants pour votre dépôt de code source, votre registre npm privé, et votre registre Maven ou Gradle privé. Les paquets publiés via GitHub héritent de la visibilité et des autorisations définies au niveau du dépôt. Un nouveau membre de l’équipe a besoin d’un accès en lecture au paquet et à son code ? Donnez-lui simplement un accès en lecture au dépôt, et c’est réglé !

Construire et publier des paquets depuis GitHub

GitHub Actions est une autre fonctionnalité de GitHub qui permet d’automatiser vos workflows logiciels. Vous pouvez compiler, tester et déployer votre code directement depuis GitHub.

💡 Astuce

Si vous souhaitez en savoir plus sur GitHub Actions, consultez le module Créer des workflows d’intégration continue (CI) avec GitHub Actions.

En combinant GitHub Actions et GitHub Packages, vous pouvez créer un workflow qui compile et teste votre code, puis le publie sur GitHub Packages simplement en poussant du code dans votre dépôt.


Dans la prochaine unité, nous apprendrons à utiliser ce workflow pour publier sur GitHub Packages et le GitHub Container Registry.

Share this Doc

Qu’est-ce que GitHub Packages ?

Or copy link

CONTENTS