Skip to main content
Select language: current language is French
Rechercher ou poser des questions à Copilot
Ouvrir le menu
Réduire la barre latéraleDévelopper la barre latérale

Création d'une action CLI tierce

Découvrez comment créer une action permettant de configurer une interface de ligne de commande sur des exécuteurs GitHub Actions.

Dans cet article

Introduction

Vous pouvez écrire une action pour permettre aux utilisateurs d’accéder à vos serveurs via un environnement CLI configuré sur GitHub Actions les exécuteurs.

Votre action doit :

  • Permettre aux utilisateurs de spécifier facilement la version de l’interface CLI à installer
  • Prendre en charge plusieurs systèmes d’exploitation
  • S’exécuter de manière efficace pour réduire le temps d’exécution et les coûts associés
  • Utilisez des runners hébergés sur GitHub et auto-hébergés
  • Tirer parti des outils de la communauté lorsque cela est possible

Cet article explique comment écrire une action qui récupère une version spécifique de votre interface CLI, l’installe, l’ajoute au chemin et (facultativement) la met en cache. Ce type d’action (une action qui configure un outil) est souvent nommé setup-$TOOL.

Prérequis

Vous devez savoir comment écrire une action personnalisée. Pour plus d’informations, consultez « Gestion des actions personnalisées ».

Exemple

Le script suivant montre comment obtenir une version spécifiée par l’utilisateur comme entrée, télécharger et extraire la version spécifique de votre interface CLI, puis ajouter l’interface CLI au chemin.

GitHub fournit actions/toolkit, qui est un ensemble de packages qui vous aide à créer des actions. Cet exemple utilise les packages actions/core et actions/tool-cache.

JavaScript
const core = require('@actions/core');
const tc = require('@actions/tool-cache');

async function setup() {
  // Get version of tool to be installed
  const version = core.getInput('version');

  // Download the specific version of the tool, e.g. as a tarball
  const pathToTarball = await tc.downloadTool(getDownloadURL());

  // Extract the tarball onto the runner
  const pathToCLI = await tc.extractTar(pathToTarball);

  // Expose the tool by adding it to the PATH
  core.addPath(pathToCLI)
}

module.exports = setup

Pour utiliser ce script, remplacez getDownloadURL par une fonction qui télécharge votre interface CLI. Vous devez également créer un fichier de métadonnées d’action (action.yml) qui accepte une entrée version et qui exécute ce script. Pour plus d’informations sur la création d’une action, consultez « Création d’une action JavaScript ».

Pour aller plus loin

Ce modèle est utilisé dans plusieurs actions. Pour obtenir d’autres exemples, consultez :

Morty Proxy This is a proxified and sanitized view of the page, visit original site.