Skip to main content
Skip to content

À propos des sandboxs cloud pour GitHub Copilot

Les bacs à sable cloud sont des environnements isolés que GitHub héberge, où Copilot exécute vos sessions cloud sans utiliser votre machine.

À propos des environnements de test cloud

Un bac à sable dans le cloud est un environnement Linux isolé qu’GitHub crée pour une session Copilot. Lorsque vous travaillez dans un ou plusieurs référentiels, Copilot clone chacun dans le sandbox, exécute des commandes et des tests et y apporte des modifications. Étant donné que la session ne s’exécute pas sur votre ordinateur, vous pouvez exécuter plusieurs sessions en parallèle sans utiliser de ressources locales, et vous n’avez pas besoin de rester connecté pendant que Copilot fonctionne.

Vous ne créez pas ou ne gérez pas vous-même des environnements de test cloud. GitHub en crée un lorsque vous démarrez une session qui s’exécute dans le cloud.

Poursuivre les sessions d’un client à l’autre

Étant donné que les sessions de bac à sable cloud s’exécutent dans une infrastructure hébergée par GitHub, vous pouvez récupérer une Copilot session sur n’importe quel client, quel que soit l’emplacement où la session a été démarrée à l’origine. Cela permet des flux de travail plus flexibles sans avoir à copier des fichiers ou à réinstaller des dépendances.

Décharger des flux de travail nécessitant beaucoup de ressources de calcul

Vous pouvez exécuter plusieurs Copilot sessions en parallèle dans le cloud sans consommer de ressources locales. Cela permet à votre environnement local de rester léger et réactif tout en faisant évoluer le travail piloté par des agents.

Bacs à sable dans le cloud et bac à sable local

Les sandboxes cloud et le sandbox local résolvent différents problèmes. Un bac à sable dans le cloud déplace l’ensemble de la session hors de votre machine. Le bac à sable local conserve la session sur votre ordinateur, mais limite les ressources auxquelles Copilot peut accéder.

Remarque

Les environnements isolés cloud et l’isolation locale sont des technologies distinctes. Un sandbox hébergé dans le cloud est un environnement GitHubhébergé qui prend en charge l’ensemble de la session. L’isolation locale en bac à sable est un ensemble de restrictions du système d’exploitation sur votre propre ordinateur. Les paramètres, les stratégies et les commandes de l’un ne s’appliquent pas à l’autre.

Environnements de test cloudBac à sable local
Où Copilot s’exécuteDans un environnement Linux isolé hébergé sur GitHubSur votre ordinateur
Qu’est-ce que c’est pourExécution de sessions sans utiliser votre machineLimiter les ressources auxquelles les commandes de Copilot peuvent accéder sur votre ordinateur
Où vous l’utilisezSessions dans le cloud que vous démarrez avec Copilot sur le site web GitHub, GitHub Mobile, Slack, Microsoft Teams, le GitHub Copilot app, Visual Studio Code, et le Copilot SDK
Copilot CLI et le/la GitHub Copilot app
Comment l’utiliserAucune configuration distincte. Il est disponible lorsque vous utilisez les fonctionnalités Copilot qui s’y exécutent.Activez-le dans Copilot CLI ou dans le GitHub Copilot app, ou votre entreprise peut l’exiger.

Pour plus d’informations sur le bac à sable local, consultez À propos du bac à sable local pour GitHub Copilot.

Cas d’utilisation de Copilot avec des sandboxes cloud

Par défaut, Copilot exécute une session cloud dans un bac à sable cloud quand vous le démarrez à partir de l’un de ces emplacements :

  • Interface de conversation sur le GitHub site web
  • GitHub Mobile
  • Slack et Microsoft Teams
  • GitHub Copilot app.
  • Visual Studio Code
  • Sessions dans le Copilot SDK

Dans Copilot CLI, les sessions s’exécutent sur votre ordinateur par défaut. Vous pouvez également démarrer une session dans un bac à sable dans le cloud. Voir Démarrage d’une session cloud à partir de Copilot CLI.

Choix de l’emplacement d’exécution de Copilot

Copilot peut exécuter une session dans l’un de ces environnements :

  • Cloud : Copilot exécute la session dans un bac à sable cloud hébergé par GitHub.
  • Actions : Copilot cloud agent exécute la session dans un job GitHub Actions, sur un runner hébergé par GitHub ou un runner que vous configurez.

Les sessions peuvent également s’exécuter sur votre propre ordinateur, par exemple dans Copilot CLI ou le GitHub Copilot app. Ces sessions n’utilisent pas de sandbox cloud.

Où vous pouvez choisir entre le cloud et les actions, Cloud est la valeur par défaut. Vous choisissez l’environnement au démarrage de la session et vous ne pouvez pas le modifier par la suite. Pour utiliser un autre environnement, démarrez une nouvelle session.

La façon dont vous choisissez et les environnements parmi lesquels vous pouvez choisir dépendent du client à partir duquel vous démarrez la session. Pour connaître les étapes dans chaque client, consultez Démarrage des sessions GitHub Copilot.

Choisissez Actions si votre dépôt dépend des personnalisations qui fonctionnent uniquement sur GitHub Actions, telles que les étapes d’installation, les runners plus volumineux ou auto-hébergés ou un environnement de développement Windows. Sinon, utilisez Cloud. Pour plus d’informations, consultez Personnalisation d’une session de bac à sable cloud.

Démarrage d’une session cloud à partir de Copilot CLI

Pour démarrer une session Copilot CLI dans un bac à sable dans le cloud, exécutez :

Shell
copilot --cloud

L’option --cloud de ligne de commande lance une session interactive Copilot CLI à l’intérieur d’un bac à sable cloud. Vous pouvez inviter Copilot à effectuer des tâches, exécuter des commandes shell et effectuer une itération sur le code, de la même façon que dans une session locale. Les commandes exécutées par Copilot s’exécutent dans le bac à sable cloud, et non sur votre ordinateur local.

L’option --cloud s’applique uniquement à la session que vous démarrez avec celle-ci. Pour exécuter une autre session dans un bac à sable cloud, redémarrez le CLI avec --cloud. Vous ne pouvez utiliser --cloud que pour les sessions interactives. Vous ne pouvez donc pas le combiner avec les options -i ou -p.

Cycle de vie de session

Lorsque vous revenez à une session, elle reprend avec vos fichiers et le travail en cours intacts. Pendant qu’une session est arrêtée, le sandbox cloud conserve un instantané de son état afin de pouvoir reprendre là où vous vous étiez arrêté.

Isolation et accès réseau

Chaque bac à sable cloud est isolé de votre machine et des autres sessions. Étant donné que la session ne s’exécute pas sur votre ordinateur, les commandes que Copilot exécute dans un bac à sable cloud ne peuvent pas lire ou modifier les fichiers sur votre ordinateur.

L’accès réseau à partir d’un bac à sable cloud suit les mêmes paramètres de pare-feu que ceux de Copilot cloud agent, y compris la liste verte recommandée et les règles de liste verte personnalisées ajoutées par les propriétaires de l’organisation ou du référentiel. Pour plus d’informations, consultez « Personnalisation ou désactivation du pare-feu pour GitHub Copilot ».

Si Copilot doit atteindre un hôte qui n’est pas sur la liste verte, ajoutez l’hôte à la liste verte, puis démarrez une nouvelle session. Les modifications de liste verte ne s’appliquent pas aux sessions qui sont déjà en cours d’exécution.

Personnalisation d’une session de bac à sable cloud

Vous pouvez personnaliser vos paramètres de bac à sable cloud à github.com/copilot/customize. Vous pouvez également apporter vos instructions personnelles, compétences et agents personnalisés aux sessions de bac à sable cloud à l’aide d’un référentiel dotfiles avec un répertoire racine .copilot . Les fichiers dotfiles sont copiés lorsqu’un sandbox est créé ou réactivé, sans exécuter de scripts d’installation. Cette personnalisation n’est pas disponible dans les sessions basées sur GitHub Actions. Pour obtenir des conseils d’installation, consultez Personnalisation de vos sessions cloud.

D’autres personnalisations utilisent GitHub Actions, de sorte qu’elles s’appliquent uniquement aux sessions qui s’exécutent sur Actions : Voici :

  • Étapes d’installation dans un fichier copilot-setup-steps.yml, y compris les étapes permettant de se connecter aux fournisseurs de cloud avec OpenID Connect (OIDC)
  • Runners plus grands et auto-hébergés
  • environnements de développement Windows

Si votre dépôt dépend de l’un de ces éléments, choisissez Actions lorsque vous déléguez la tâche. Pour plus d’informations, consultez Configurer l’environnement de développement pour les agents sur GitHub Actions.

Si un niveau de personnalisation supérieur est requis, vous pouvez inscrire une machine Linux ou un espace de code en tant qu’environnement personnalisé et le sélectionner dans un client qui prend en charge des environnements personnalisés. Contrairement à un sandbox dans le cloud, vous gérez l’hôte, ses outils, ses dépendances et son cycle de vie. Consultez « Création d’un environnement personnalisé pour les agents ».

Access

Les sandboxes cloud utilisent votre authentification existante Copilot. Vous n’avez pas besoin de configurer un fournisseur de cloud distinct, de gérer des clés API ou de configurer l’infrastructure.

Les sandboxes cloud n’ont pas de stratégie d’accès distincte. Si vous obtenez Copilot via une organisation ou une entreprise, la Copilot in the cloud politique contrôle si vous pouvez démarrer des sessions qui s’exécutent dans un bac à sable cloud. La règle est activée par défaut. Pour plus d’informations pour les administrateurs, consultez Gestion des bacs à sable cloud pour votre organisation ou entreprise.

Billing

Le bac à sable cloud est facturé en fonction de l’utilisation. GitHub mesure l’utilisation du bac à sable cloud sur trois mètres :

CompteurDescriptionUnitéPrix (USD)
ComputeDurée d’exécution d’une session de bac à sable dans le cloud.seconde de vCPU0,000024 $
MemoryMémoire allouée à une session de bac à sable dans le cloud lorsqu’elle est en cours d’exécution.Gio-seconde0,000003 $
StockageStockage d’instantanés pour les sessions arrêtées.GiB mois0,005 USD

Pour plus d’informations sur la façon dont l’utilisation du bac à sable cloud est mesurée et facturée, consultez Facturation des bacs à sable cloud et locaux pour GitHub Copilot.

Pour en savoir plus