Skip to main content

DĂ©finition d’une spĂ©cification minimale pour les machines de codespaces

Vous pouvez Ă©viter que les types de machines n’ayant pas suffisamment de ressources soient utilisĂ©s pour GitHub Codespaces pour votre dĂ©pĂŽt.

Qui peut utiliser cette fonctionnalité ?

People with write permissions to a repository can create or edit the codespace configuration.

Vue d’ensemble

Chaque codespace que vous crĂ©ez est hĂ©bergĂ© sur une machine virtuelle distincte. Quand vous crĂ©ez un codespace Ă  partir d’un dĂ©pĂŽt, vous avez gĂ©nĂ©ralement le choix entre diffĂ©rents types de machines virtuelles. Chaque type de machine possĂšde des ressources diffĂ©rentes (cƓurs de processeurs, mĂ©moire, stockage). Le type de machine utilisĂ© par dĂ©faut est celui qui a le moins de ressources. Pour plus d’informations, consultez « Modification du type de machine pour votre espace de code Â».

Si votre projet a besoin d’un certain niveau de puissance de calcul, vous pouvez configurer GitHub Codespaces de sorte que seuls les types de machines satisfaisant Ă  ces exigences puissent ĂȘtre utilisĂ©s par dĂ©faut ou sĂ©lectionnĂ©s par les utilisateurs. Cette configuration s’effectue dans un fichier devcontainer.json.

Les codespaces non publiĂ©s (codespaces créés Ă  partir d’un modĂšle qui ne sont pas liĂ©s Ă  un rĂ©fĂ©rentiel sur GitHub) s’exĂ©cutent toujours sur une machine virtuelle avec les mĂȘmes spĂ©cifications. Vous ne pouvez pas changer le type d’ordinateur d’un codespace non publiĂ©.

Important

L'accĂšs Ă  certains types de machines peut ĂȘtre restreint au niveau de l'organisation. En rĂšgle gĂ©nĂ©rale, cette limite permet d’éviter que les utilisateurs choisissent des machines avec des ressources plus Ă©levĂ©es qui sont facturĂ©es plus cher. Si votre dĂ©pĂŽt fait l’objet d’une stratĂ©gie au niveau de l’organisation liĂ©e aux types de machines, faites attention de ne pas dĂ©finir une spĂ©cification minimale qui ne permettra pas Ă  vos utilisateurs de sĂ©lectionner un type de machine disponible. Pour plus d’informations, consultez « Restriction de l’accĂšs aux types de machines Â».

DĂ©finition d’une spĂ©cification minimale de machine

  1. Vous pouvez configurer les codespaces créés pour votre dĂ©pĂŽt en ajoutant des paramĂštres Ă  un fichier devcontainer.json. Si votre dĂ©pĂŽt ne contient pas encore de fichier devcontainer.json, vous pouvez en ajouter un maintenant. Consultez Ajout d’une configuration de conteneur de dĂ©veloppement Ă  votre dĂ©pĂŽt.

  2. Modifiez le fichier devcontainer.json en ajoutant la propriĂ©tĂ© hostRequirements au niveau supĂ©rieur du fichier, dans l’objet JSON englobant. Par exemple :

    JSON
    "hostRequirements": {
       "cpus": 8,
       "memory": "8gb",
       "storage": "32gb"
    }
    

    Vous pouvez spĂ©cifier tout ou partie des options suivantes : cpus, memory et storage.

    Pour vĂ©rifier les spĂ©cifications des types de machines GitHub Codespaces actuellement disponibles pour votre dĂ©pĂŽt, suivez le processus de crĂ©ation d’un codespace jusqu’au choix des types de machines. Pour plus d’informations, consultez « CrĂ©ation d’un codespace pour un dĂ©pĂŽt Â».

  3. Enregistrez le fichier et commitez vos changements dans la branche nécessaire du dépÎt.

    Maintenant, quand vous créez un codespace pour cette branche du dépÎt et que vous accédez aux options de configuration de création, vous pouvez uniquement sélectionner les types de machines qui correspondent aux ressources que vous avez spécifiées ou qui les dépassent.

    Capture d’écran d’une liste de types d’ordinateurs. Les options 2 et 4 cƓurs sont Ă©tiquetĂ©es « En dessous des exigences de conteneur de dĂ©veloppement ».

Pour aller plus loin