Skip to main content

Utilitaires de ligne de commande

GitHub Enterprise Server comprend divers utilitaires pour vous aider à résoudre des problèmes particuliers ou à effectuer des tâches spécifiques.

Vous pouvez exécuter ces commandes n’importe où sur la machine virtuelle après vous être connecté en tant qu’utilisateur administrateur SSH. Pour plus d’informations, consultez « Accès à l’interpréteur de commandes d’administration (SSH) ».

Général

ghe-annonce

Cet utilitaire permet de définir une bannière en haut de chaque page GitHub Enterprise. Vous pouvez vous en servir pour diffuser un message à l’attention de vos utilisateurs.

# Sets a message that's visible to everyone
$ ghe-announce -s MESSAGE
> Announcement message set.
# Removes a previously set message
$ ghe-announce -u
> Removed the announcement message

Pour permettre à chaque utilisateur de rejeter l’annonce pour lui-même, utilisez l’indicateur -d.

# Sets a user-dismissible message that's visible to everyone
$ ghe-announce -d -s MESSAGE
> Announcement message set.
# Removes a previously set message
$ ghe-announce -u
> Removed the announcement message, which was user
> dismissible: MESSAGE

Vous pouvez également définir une bannière d’annonce via les paramètres d’entreprise de GitHub Enterprise Server. Pour plus d’informations, consultez « Personnalisation des messages utilisateur pour votre entreprise ».

ghe-aqueduc

Cet utilitaire affiche des informations sur les travaux en arrière-plan, qu’ils soient actifs ou en file d’attente. Il indique les mêmes nombres de travaux que la barre des statistiques d’administration en haut de chaque page.

Cet utilitaire peut vous aider à déterminer si le serveur Aqueduct rencontre des problèmes de traitement des travaux en arrière-plan. Les scénarios suivants peuvent être le signe d’un problème lié à Aqueduct :

  • Le nombre de travaux en arrière-plan augmente, alors que le nombre de travaux actifs reste stable.
  • Les flux d’événements ne sont pas mis à jour.
  • Les webhooks ne sont pas déclenchés.
  • L’interface web n’est pas mise à jour après un envoi (push) Git.

Si vous pensez qu’Aqueduct ne fonctionne pas, visitez Support GitHub Enterprise pour obtenir de l’aide.

Avec cette commande, vous pouvez aussi suspendre ou reprendre des travaux en file d’attente.

$ ghe-aqueduct status
# lists queues and the number of currently queued jobs
# for all queues
$ ghe-aqueduct queue_depth --queue QUEUE
# lists the number of currently queued jobs for the
# specified queue
$ ghe-aqueduct pause --queue QUEUE
# pauses the specified queue
$ ghe-aqueduct resume --queue QUEUE
# resumes the specified queue

ghe-check-disk-usage

Cet utilitaire recherche la présence de fichiers volumineux sur le disque ou des fichiers qui ont été supprimés, mais qui ont toujours des descripteurs de fichier ouverts. Vous devez l’exécuter quand votre intention est de libérer de l’espace sur la partition racine.

ghe-check-disk-usage

ghe-cleanup-caches

Cet utilitaire nettoie divers caches qui peuvent potentiellement prendre de l’espace disque supplémentaire sur le volume racine. Si vous constatez que votre volume racine occupe de plus en plus d’espace disque au fil du temps, il serait judicieux d’exécuter cet utilitaire pour voir s’il permet de réduire l’utilisation globale.

ghe-cleanup-caches

ghe-cleanup-settings

Cet utilitaire réinitialise tous les paramètres existants de la Management Console.

Conseil : En règle générale, vous l’exécutez seulement si vous avez contacté le support et qu’ils vous ont demandé de le faire.

ghe-cleanup-settings

ghe-config

Avec cet utilitaire, vous pouvez récupérer et modifier les paramètres de configuration de votre instance GitHub Enterprise Server.

$ ghe-config core.github-hostname
# Gets the configuration value of `core.github-hostname`
$ ghe-config core.github-hostname URL
# Sets the configuration value of `core.github-hostname`
# to the specified URL
$ ghe-config -l
# Lists all the configuration values

Il vous permet de trouver l’identificateur unique universel (UUID) de votre nœud dans cluster.conf.

  ghe-config HOSTNAME.uuid

Vous permet d’exclure une liste d’utilisateurs des limites de débit de l’API REST. Une limite stricte de 120 000 requêtes s’appliquera toujours à ces utilisateurs. Les noms d’utilisateur que vous fournissez pour cette commande respectent la casse. Pour plus d’informations, consultez « Limites de débit pour l'API REST ».

$ ghe-config app.github.rate-limiting-exempt-users "hubot github-actions[bot]"
# Exempts the users hubot and github-actions[bot] from rate limits.
# Usernames are case-sensitive.

ghe-config-apply

Cet utilitaire applique les paramètres de la Management Console, recharge les services système, prépare un dispositif de stockage, recharge les services d’application et exécute les éventuelles migrations de base de données en attente. Cela revient à cliquer sur Enregistrer les paramètres dans l’interface utilisateur web de la Management Console ou à envoyer une requête POST au point de terminaison /setup/api/configure.

Vous n’aurez probablement jamais besoin de l’exécuter manuellement, mais il est disponible si vous souhaitez automatiser le processus d’enregistrement de vos paramètres via SSH.

ghe-config-apply

ghe-console

Cet utilitaire ouvre la console GitHub Rails sur votre appliance GitHub Enterprise. N’utilisez pas cette commande sans l’avis de Support GitHub Enterprise. Une utilisation incorrecte peut entraîner des dommages ou une perte de données.

ghe-console

ghe-dbconsole

Cet utilitaire ouvre une session de base de données MySQL sur votre appliance GitHub Enterprise. N’utilisez pas cette commande sans l’avis de Support GitHub Enterprise. Une utilisation incorrecte peut entraîner des dommages ou une perte de données.

ghe-dbconsole

ghe-es-index-status

Cet utilitaire retourne un résumé des index Elasticsearch au format CSV.

Imprimez un résumé d’index avec une ligne d’en-tête sur STDOUT :

$ ghe-es-index-status -do
> warning: parser/current is loading parser/ruby23, which recognizes
> warning: 2.3.3-compliant syntax, but you are running 2.3.4.
> warning: please see https://github.com/whitequark/parser#compatibility-with-ruby-mri.
> Name,Primary,Searchable,Writable,UpToDate,RepairProgress,Version
> code-search-1,true,true,true,true,100.0,72e27df7c631b45e026b42bfef059328fa040e17
> commits-5,true,true,true,true,100.0,7ed28813100c47813ef654c0ee2bb9abf21ab744
> gists-4,true,true,true,true,100.0,cf8e7d04fcf2564c902e2873c424a279cc41079d
> issues-4,false,false,false,true,100.0,d0bb08f71eebf6e7b070572aa399b185dbdc8a76
> issues-5,true,true,true,true,100.0,d0bb08f71eebf6e7b070572aa399b185dbdc8a76
> projects-2,true,true,true,true,100.0,c5cac1c4b3c66d42e609d088d174dbc3dd44469a
> pull-requests-6,true,true,true,true,100.0,6a466ad6b896a3499509990979bf9a18d7d41de3
> repos-6,true,true,true,true,100.0,6c8b5fbba0fc1e409558db411d05e092c1387082
> users-5,true,true,true,true,100.0,38984875552bb826c9ec42999f409cb2e95556eb
> wikis-4,true,true,true,true,100.0,2613dec44bd14e14577803ac1f9e4b7e07a7c234

Imprimez un résumé d’index et dirigez les résultats vers column pour une meilleure lisibilité :

$ ghe-es-index-status -do | column -ts,
> warning: parser/current is loading parser/ruby23, which recognizes
> warning: 2.3.3-compliant syntax, but you are running 2.3.4.
> warning: please see https://github.com/whitequark/parser#compatibility-with-ruby-mri.
> Name             Primary  Searchable  Writable  UpToDate  RepairProgress  Version
> code-search-1    true     true        true      true      100.0           72e27df7c631b45e026b42bfef059328fa040e17
> commits-5        true     true        true      true      100.0           7ed28813100c47813ef654c0ee2bb9abf21ab744
> gists-4          true     true        true      true      100.0           cf8e7d04fcf2564c902e2873c424a279cc41079d
> issues-4         false    false       false     true      100.0           d0bb08f71eebf6e7b070572aa399b185dbdc8a76
> issues-5         true     true        true      true      100.0           d0bb08f71eebf6e7b070572aa399b185dbdc8a76
> projects-2       true     true        true      true      100.0           c5cac1c4b3c66d42e609d088d174dbc3dd44469a
> pull-requests-6  true     true        true      true      100.0           6a466ad6b896a3499509990979bf9a18d7d41de3
> repos-6          true     true        true      true      100.0           6c8b5fbba0fc1e409558db411d05e092c1387082
> users-5          true     true        true      true      100.0           38984875552bb826c9ec42999f409cb2e95556eb
> wikis-4          true     true        true      true      100.0           2613dec44bd14e14577803ac1f9e4b7e07a7c234

ghe-legacy-github-services-report

Cet utilitaire liste les dépôts de votre appliance qui utilisent GitHub Services, méthode d’intégration qui a été abandonnée le 1er octobre 2018. Il se peut que des utilisateurs de votre appliance aient configuré GitHub Services afin de créer des notifications pour les envois (push) vers certains dépôts. Pour plus d’informations, consultez « Annonce concernant la dépréciation des Services GitHub » sur the GitHub Blog. Pour plus d’informations sur cette commande ou pour consulter les options supplémentaires, utilisez l’indicateur -h.

ghe-legacy-github-services-report

ghe-logs-tail

Cet utilitaire vous permet de journaliser la fin de tous les fichiers journaux pertinents de votre installation. Vous pouvez transmettre des options pour limiter les journaux à des ensembles spécifiques. Utilisez l’indicateur -h pour consulter les options supplémentaires.

ghe-logs-tail

ghe-maintenance

Cet utilitaire vous permet de contrôler l’état du mode de maintenance de l’installation. Il a été conçu pour être utilisé principalement par la Management Console en arrière-plan, mais il peut être utilisé directement. Pour plus d’informations, consultez « Activation et planification du mode de maintenance ».

ghe-maintenance -h

ghe-motd

Cet utilitaire affiche à nouveau le message du jour (MOTD) que les administrateurs voient quand ils accèdent à l’instance via l’interpréteur de commandes d’administration. La sortie contient une vue d’ensemble de l’état de l’instance.

ghe-motd

ghe-now

Cet utilitaire retourne le nom et le propriétaire d’un dépôt en fonction de l’ID du dépôt.

ghe-nwo REPOSITORY_ID

ghe-org-admin-promote

Utilisez cette commande pour accorder des privilèges de propriétaire d’organisation aux utilisateurs disposant de privilèges d’administrateur de site sur l’appliance ou pour accorder des privilèges de propriétaire d’organisation à un utilisateur unique au sein d’une organisation. Vous devez spécifier un utilisateur et/ou une organisation. La commande ghe-org-admin-promote demande toujours confirmation avant son exécution, sauf si vous utilisez l’indicateur -y pour contourner la confirmation.

Voici les options que vous pouvez utiliser avec l’utilitaire :

  • L’indicateur -u permet de spécifier un nom d’utilisateur. Servez-vous de cet indicateur pour accorder des privilèges de propriétaire d’organisation à un utilisateur spécifique. Omettez l’indicateur -u pour promouvoir tous les administrateurs de site dans l’organisation spécifiée.
  • L’indicateur -o permet de spécifier une organisation. Servez-vous de cet indicateur pour accorder des privilèges de propriétaire dans une organisation spécifique. Omettez l’indicateur -o pour accorder à l’administrateur de site spécifié des autorisations de propriétaire dans toutes les organisations.
  • L’indicateur -a accorde à tous les administrateurs de site des privilèges de propriétaire dans toutes les organisations.
  • L’indicateur -y contourne la confirmation manuelle.

Cet utilitaire ne peut pas promouvoir un administrateur qui n’est pas administrateur de site en tant que propriétaire de toutes les organisations. Vous pouvez promouvoir un compte d’utilisateur ordinaire en tant qu’administrateur de site avec ghe-user-promote.

Accorder à un administrateur de site spécifique des privilèges de propriétaire d’organisation dans une organisation spécifique

ghe-org-admin-promote -u USERNAME -o ORGANIZATION

Accorder à un administrateur de site spécifique des privilèges de propriétaire d’organisation dans toutes les organisations

ghe-org-admin-promote -u USERNAME

Accorder à tous les administrateurs de site des privilèges de propriétaire d’organisation dans une organisation spécifique

ghe-org-admin-promote -o ORGANIZATION

Accorder à tous les administrateurs de site des privilèges de propriétaire d’organisation dans toutes les organisations

ghe-org-admin-promote -a

ghe-reactivate-admin-login

Utilisez cette commande pour déverrouiller immédiatement la Management Console après un verrouillage de compte. Pour configurer des stratégies d’authentification pour votre instance GitHub Enterprise Server, consultez « Configuration des limites de débit ».

ghe-reactivate-admin-login

ghe-saml-mapping-csv

Cet utilitaire permet aux administrateurs de générer ou de mettre à jour les mappages SAML NameID pour les utilisateurs sur un instance. L’utilitaire peut générer un fichier CSV qui liste tous les mappages existants. Vous pouvez également mettre à jour les mappages pour les utilisateurs de votre instance en modifiant le fichier résultant, puis en utilisant l’utilitaire pour affecter de nouveaux mappages à partir du fichier.

Pour générer un fichier CSV contenant une liste de tous les mappages SAML NameID utilisateur sur l’instance, exécutez la commande suivante.

ghe-saml-mapping-csv -d

Par défaut, l’utilitaire écrit le fichier dans /data/user/tmp.

Si vous envisagez de mettre à jour les mappages, pour vous assurer que l’utilitaire peut accéder au fichier, nous vous recommandons de garder le fichier à l’emplacement par défaut.

Pour préparer la mise à jour des mappages, modifiez le fichier et apportez les modifications souhaitées. Pour voir le résultat de la mise à jour des mappages avec les nouvelles valeurs de votre fichier CSV modifié, effectuez une exécution test. Exécutez la commande suivante, en remplaçant /PATH/TO/FILE par le chemin du fichier que vous avez modifié.

ghe-saml-mapping-csv -u -n -f /PATH/TO/FILE

Pour mettre à jour les mappages SAML sur l’instance avec les nouvelles valeurs du fichier, exécutez la commande suivante en remplaçant /PATH/TO/FILE par le chemin du fichier que vous avez modifié.

ghe-saml-mapping-csv -u -f /PATH/TO/FILE

ghe-service-list

Cet utilitaire permet de lister tous les services qui ont été démarrés ou arrêtés (en cours d’exécution ou en attente) sur votre appliance.

$ ghe-service-list
active
  - alambic
  - alive
  - aqueduct-lite
  - authzd
  - babeld
  - codeload
  - consul, process 17114
  - consul-template, process 19493
  - driftwood
  - elasticsearch
  - enterprise-manage-unicorn, process 9359
  - ghe-user-disk, process 2545
  - git-daemon
  - github-env
  - github-gitauth
  - github-resqued
  - github-stream-processors
  - github-timerd
  - github-unicorn
  - gitrpcd
  - governor
  - gpgverify
  - grafana-server, process 19314
  - graphite-web, process 20189
  - hookshot-go
  - kafka-lite
  - kredz
  - lfs-server
  - mail-replies
  - memcached
  - minio
  - mysql
  - nginx
  - nomad, process 19562
  - pages
  - postfix
  - redis
  - spokesd
  - spokes-sweeper
  - svnbridge
  - token-scanning-api
  - token-scanning-backfill-worker
  - token-scanning-hydro-consumer
  - token-scanning-incremental-worker
  - token-scanning-udp-backfill-worker
  - treelights
  - turboscan
  - viewscreen

inactive
  - wireguard

ghe-set-password

Cet utilitaire vous permet de définir un nouveau mot de passe de l’administrateur du site racine pour l’authentication vers Management Console. Pour plus d’informations, consultez « Gestion de l’accès à la console de gestion ».

ghe-set-password

ghe-setup-network

Cet utilitaire vous permet de configurer l’interface réseau principale.

Pour accéder au mode visuel, qui vous guidera tout au long de la configuration des paramètres réseau :

ghe-setup-network -v

Utilisez l’indicateur -h pour consulter les options supplémentaires.

ghe-ssh-check-host-keys

Cet utilitaire vérifie les clés d’hôte SSH existantes par rapport à la liste des clés d’hôte SSH connues pour avoir fuité.

ghe-ssh-check-host-keys

Si une clé d’hôte ayant fuité est trouvée, l’utilitaire se ferme avec l’état 1 et le message :

> One or more of your SSH host keys were found in the blacklist.
> Please reset your host keys using ghe-ssh-roll-host-keys.

Si aucune clé d’hôte ayant fuité n’est trouvée, l’utilitaire se ferme avec l’état 0 et le message :

> The SSH host keys were not found in the SSH host key blacklist.
> No additional steps are needed/recommended at this time.

ghe-ssh-roll-host-keys

Cet utilitaire annule les clés d’hôte SSH et les remplace par des clés nouvellement générées.

$ sudo ghe-ssh-roll-host-keys
Proceed with rolling SSH host keys? This will delete the
existing keys in /etc/ssh/ssh_host_* and generate new ones. [y/N]

# Press 'Y' to confirm deleting, or use the -y switch to bypass this prompt

> SSH host keys have successfully been rolled.

ghe-ssh-weak-fingerprints

Cet utilitaire retourne un rapport sur les clés SSH faibles connues stockées sur l’appliance GitHub Enterprise. Vous pouvez éventuellement révoquer des clés utilisateur par une action en bloc. L’utilitaire signale les clés système faibles, que vous devez révoquer manuellement dans la Management Console.

# Print a report of weak user and system SSH keys
$ ghe-ssh-weak-fingerprints

# Revoke all weak user keys
$ ghe-ssh-weak-fingerprints --revoke

ghe-ssl-acme

Cet utilitaire vous permet d’installer un certificat Let’s Encrypt sur votre appliance GitHub Enterprise. Pour plus d’informations, consultez « Configuration de TLS ».

Vous pouvez utiliser l’indicateur -x pour supprimer la configuration ACME.

ghe-ssl-acme -e

ghe-ssl-ca-certificate-install

Cet utilitaire vous permet d’installer un certificat d’autorité de certification racine personnalisé sur votre serveur GitHub Enterprise. Le certificat doit être au format PEM. Par ailleurs, si votre fournisseur de certificats inclut plusieurs certificats d’autorité de certification dans un même fichier, vous devez les diviser en fichiers individuels pour les transmettre ensuite à ghe-ssl-ca-certificate-install un par un.

Exécutez cet utilitaire pour ajouter une chaîne de certificats à des fins de vérification de signature de commit S/MIME. Pour plus d’informations, consultez « À propos de la vérification des signatures de commit ».

Exécutez cet utilitaire quand votre instance GitHub Enterprise Server ne parvient pas à se connecter à un autre serveur parce que celui-ci utilise un certificat SSL auto-signé ou un certificat SSL pour lequel il ne fournit pas le bundle d’autorité de certification nécessaire. Une façon de le vérifier est d’exécuter openssl s_client -connect host:port -verify 0 -CApath /etc/ssl/certs à partir de votre instance GitHub Enterprise Server. Si le certificat SSL du serveur distant peut être vérifié, votre SSL-Session doit avoir un code de retour égal à 0, comme indiqué ci-dessous.

SSL-Session:
    Protocol  : TLSv1
    Cipher    : AES128-SHA
    Session-ID: C794EBCC3CBC10F747C9AFC029C03C1048FC99CFC34D13D7444E0F267C58DF4C
    Session-ID-ctx:
    Master-Key: 02A7C47CFD6EEC87D3C710E9DD87390E04EF82DDD7514AE03127D5DC1945FC0CAEFB5395791AEA598667EFA61B9EA8C5
    Key-Arg   : None
    Start Time: 1394581597
    Timeout   : 300 (sec)
    Verify return code: 0 (ok)

Si, en revanche, le certificat SSL du serveur distant ne peut pas être vérifié, votre SSL-Session doit avoir un code de retour différent de zéro :

SSL-Session:
    Protocol  : TLSv1
    Cipher    : AES128-SHA
    Session-ID: 82CB288051A6DB66094C50A69CF1292AEE7E54C6B01B659B98AB336F8C33863E
    Session-ID-ctx:
    Master-Key: 01B025B2F764043A27919A8D1355AAECD8844FF0831B1D664042334790574A6F4025BAB085D4ED71D71AAB3091B849E5
    Key-Arg   : None
    Start Time: 1394581782
    Timeout   : 300 (sec)
    Verify return code: 27 (certificate not trusted)

Voici les options supplémentaires que vous pouvez utiliser avec l’utilitaire :

  • L’indicateur -r vous permet de désinstaller un certificat d’autorité de certification.
  • L’indicateur -h affiche des informations supplémentaires sur l’utilisation.
ghe-ssl-ca-certificate-install -c CERTIFICATE_PATH

Pour appliquer la configuration, exécutez la commande suivante. Durant une exécution de configuration, les services sur votre instance GitHub Enterprise Server peuvent redémarrer, ce qui peut entraîner un bref temps d’arrêt pour les utilisateurs.

Shell
ghe-config-apply

ghe-ssl-certificate-setup

Cet utilitaire vous permet de mettre à jour un certificat SSL pour votre instance GitHub Enterprise Server.

Pour plus d’informations sur cette commande ou pour consulter les options supplémentaires, utilisez l’indicateur -h.

/usr/local/share/enterprise/ghe-ssl-certificate-setup

ghe-ssl-generate-csr

Cet utilitaire vous permet de générer une clé privée et une demande de signature de certificat (CSR), que vous pouvez partager avec une autorité de certification commerciale ou privée pour obtenir un certificat valide à utiliser avec votre instance. Pour plus d’informations, consultez « Configuration de TLS ».

Pour plus d’informations sur cette commande ou pour consulter les options supplémentaires, utilisez l’indicateur -h.

ghe-ssl-generate-csr

ghe-storage-extend

Certaines plateformes ont besoin de ce script pour développer le volume utilisateur. Pour plus d’informations, consultez « Augmentation de la capacité de stockage ».

ghe-storage-extend

ghe-version

Cet utilitaire imprime la version, la plateforme et la build de votre instance GitHub Enterprise Server.

ghe-version

ghe-webhook-logs

Cet utilitaire retourne les journaux de remise de webhooks pour permettre aux administrateurs de les examiner et d’identifier les problèmes éventuels.

ghe-webhook-logs

Pour afficher tous les échecs de remises de hooks au cours de la dernière journée :

ghe-webhook-logs -f -a YYYY-MM-DD

Le format de date doit être YYYY-MM-DD, YYYY-MM-DD HH:MM:SS ou YYYY-MM-DD HH:MM:SS (+/-) HH:M.

Pour afficher la charge utile complète des hooks, le résultat et les exceptions éventuelles pour la remise :

ghe-webhook-logs -g DELIVERY_GUID

Clustering

ghe-cluster-balance

Cet utilitaire vous permet d’appliquer une distribution uniforme des allocations entre vos nœuds de cluster en vérifiant l’état des allocations de votre cluster, puis en rééquilibrant les allocations problématiques. Pour plus d’informations, consultez « Rééquilibrage des charges de travail de cluster ».

Pour générer une liste de travaux pouvant être équilibrés et leur répartition d’allocation associée :

ghe-cluster-balance status

Pour générer les nombres d’allocations pour un travail donné ou une liste de travaux délimités par des virgules :

ghe-cluster-balance -j JOB

Pour rééquilibrer les allocations problématiques pour un travail donné ou une liste de travaux délimitée par des virgules :

ghe-cluster-balance rebalance -j JOB

Vous pouvez utiliser les indicateurs suivants avec ghe-cluster-balance rebalance.

IndicateurDescription
-j/--job-namesSpécifie les travaux à rééquilibrer. Accepte un nom de travail ou une liste de noms délimitée par des virgules.
-n/--dry-runGénère la sortie des opérations Nomad que l’utilitaire exécute, sans les exécuter réellement. Peut être utilisé en tandem avec -j/--job-name.
-y/--yesIgnorer l’invite utilisateur.
w/--workersSpécifie le nombre maximal de travaux simultanés à arrêter et attend la fin de la réallocation. La valeur par défaut est 4.
-t/--timeoutSpécifie le nombre de secondes à attendre avant qu’une allocation soit arrêtée pour qu’un travail soit remplacé. La valeur par défaut est de 300 secondes.

Pour générer la sortie des scripts d’achèvement pour l’interpréteur de commandes donné :

ghe-cluster-balance completion

Pour afficher une brève description de l’utilitaire et des sous-commandes valides :

ghe-cluster-balance help

ghe-cluster-maintenance

Avec l’utilitaire ghe-cluster-maintenance, vous pouvez définir ou annuler le mode maintenance pour chaque nœud d’un cluster.

$ ghe-cluster-maintenance -h
# Shows options
$ ghe-cluster-maintenance -q
# Queries the current mode
$ ghe-cluster-maintenance -s
# Sets maintenance mode
$ ghe-cluster-maintenance -s "MESSAGE"
# Sets maintenance mode with a custom message
$ ghe-cluster-maintenance -m "MESSAGE"
# Updates the custom message
$ ghe-cluster-maintenance -u
# Unsets maintenance mode

ghe-cluster-repl-bootstrap

Cet utilitaire configure la réplication à haute disponibilité sur un ensemble secondaire de nœuds de cluster. Pour plus d’informations, consultez « Configuration de la réplication à haute disponibilité pour un cluster ».

ghe-cluster-repl-bootstrap

ghe-cluster-repl-teardown

Cet utilitaire désactive la réplication vers des nœuds réplicas pour un cluster dans une configuration de haute disponibilité. Pour plus d’informations, consultez « Configuration de la réplication à haute disponibilité pour un cluster ».

ghe-cluster-repl-teardown

ghe-cluster-status

Contrôlez l’intégrité de vos nœuds et services dans un déploiement cluster de GitHub Enterprise Server.

ghe-cluster-status

ghe-cluster-support-bundle

Cet utilitaire crée un tarball de bundle de support contenant des journaux importants de chacun des nœuds d’une configuration de géoréplication ou de clustering.

Par défaut, la commande crée le tarball dans /tmp, mais vous pouvez aussi utiliser cat pour placer le tarball dans STDOUT et ainsi faciliter le streaming via SSH. Cela est utile dans le cas où l’interface utilisateur web ne répond pas ou si le téléchargement d’un bundle de support à partir de /setup/support ne fonctionne pas. Vous devez utiliser cette commande si vous souhaitez générer un bundle étendu contenant des journaux plus anciens. Vous pouvez aussi utiliser cette commande pour charger le bundle de support de cluster directement sur le support GitHub Enterprise.

Pour créer un bundle standard :

ssh -p 122 admin@HOSTNAME -- 'ghe-cluster-support-bundle -o' > cluster-support-bundle.tgz

Pour créer un bundle standard comprenant les données des 2 derniers jours :

ssh -p 122 admin@HOSTNAME -- "ghe-cluster-support-bundle -p 2days  -o" > support-bundle.tgz

Pour créer un bundle étendu comprenant les données des 8 derniers jours :

ssh -p 122 admin@HOSTNAME -- ghe-cluster-support-bundle -x -o' > cluster-support-bundle.tgz

Pour envoyer un bundle au Support GitHub :

ssh -p 122 admin@HOSTNAME -- 'ghe-cluster-support-bundle -u'

Pour envoyer un bundle au Support GitHub et l’associer à un ticket :

ssh -p 122 admin@HOSTNAME -- 'ghe-cluster-support-bundle -t TICKET_ID'

ghe-cluster-failover

Grâce à l’utilitaire ghe-cluster-failover, vous pouvez basculer vers votre cluster de réplicas. Pour plus d’informations, consultez « Lancement d’un basculement vers votre cluster réplica ».

ghe-cluster-failover

ghe-dpages

Cet utilitaire vous permet de gérer le serveur GitHub Pages distribué.

ghe-dpages

Pour afficher un résumé de l’emplacement et de l’intégrité du dépôt :

ghe-dpages status

Pour évacuer un service de stockage GitHub Pages avant d’évacuer un nœud de cluster :

ghe-dpages evacuate pages-server-UUID

ghe-remove-node

Cet utilitaire supprime un nœud d’un cluster. Si vous remplacez un nœud, une fois que vous avez configuré un nœud de remplacement, vous pouvez utiliser cette commande pour mettre l’ancien nœud hors connexion. Pour plus d’informations, consultez « Remplacement d’un nœud de cluster ».

Vous devez exécuter cette commande à partir du nœud MySQL principal de votre cluster, qui est généralement le nœud désigné comme mysql-master dans votre fichier de configuration de cluster (cluster.conf). Vous pouvez utiliser cette commande pour supprimer n’importe quel nœud, à l’exception du nœud mysql-master ou redis-master. Pour plus d’informations, consultez « Initialisation du cluster ».

ghe-remove-node HOSTNAME

La commande effectue les opérations suivantes :

  • Évacue les données de tous les services de données s’exécutant sur le nœud, de sorte que les nœuds restants dans votre cluster contiennent des copies de données
  • Marque le nœud comme hors connexion dans votre configuration, applique cette modification au reste des nœuds du cluster et arrête le trafic acheminé vers le nœud

Vous pouvez exécuter la commande à l’aide des indicateurs suivants.

IndicateurDescription
-ne/--no-evacuateIgnore l’évacuation des services de données (avertissement : peut entraîner une perte de données).
-v/--verboseImprime des informations supplémentaires sur la console.
-h/--helpAffiche le texte d’aide de la commande.

Remarques :

  • Cette commande ne peut être utilisée que pour supprimer un nœud d’une configuration de cluster. Il ne peut pas être utilisé pour supprimer un nœud d’une configuration à haute disponibilité.
  • Cette commande ne prend pas en charge l’exécution parallèle. Pour supprimer plusieurs nœuds, vous devez attendre la fin de cette commande avant de l’exécuter pour un autre nœud.

ghe-spokesctl

Cet utilitaire vous permet de gérer la réplication des dépôts sur les serveurs Git distribués.

ghe-spokesctl

Pour afficher les serveurs dans lesquels le dépôt est stocké :

ghe-spokesctl routes

Pour évacuer les services de stockage sur un nœud de cluster :

ghe-spokesctl server set evacuating git-server-UUID

ghe-storage

Cet utilitaire vous permet d’évacuer tous les services de stockage avant d’évacuer un nœud de cluster.

ghe-storage evacuate storage-server-UUID

nes

Cet utilitaire vous permet de surveiller l’intégrité des nœuds de cluster avec Node Eligibility Service. Par défaut, Node Eligibility Service est désactivé. Pour plus d’informations, consultez « Surveillance de l’intégrité de vos nœuds de cluster avec Node Eligibility Service ».

Pour afficher l’intégrité des nœuds du cluster :

nes get-cluster-health

Pour vérifier les paramètres TTL :

nes get-node-ttl all

Pour définir la durée TTL de l’état fail en minutes :

nes set-node-ttl fail MINUTES

La durée TTL de l’état fail doit être plus longue que la durée TLL de l’état warn.

Pour définir la durée TTL de l’état warn en minutes :

nes set-node-ttl warn TIME

Pour vérifier si Node Eligibility Service peut effectuer une action administrative lorsqu’un nœud avec le nom d’hôte HOSTNAME passe hors connexion :

nes get-node-adminaction HOSTNAME

Pour autoriser Node Eligibility Service à effectuer automatiquement une action administrative lorsqu’un nœud avec le nom d’hôte HOSTNAME passe hors connexion :

nes set-node-adminaction approved HOSTNAME

Pour révoquer la capacité de Node Eligibility Service à mettre le nœud avec le nom d’hôte HOSTNAME hors connexion :

nes set-node-adminaction approved HOSTNAME

Pour mettre à jour manuellement l’éligibilité d’un nœud pour le rajouter au cluster :

nes set-node-eligibility eligible HOSTNAME

Git

ghe-btop

Interface de type top pour les opérations Git actives.

ghe-btop [ <port number> | --help | --usage ]

ghe-governor

Cet utilitaire permet d’analyser le trafic Git. Il interroge les fichiers de données Governor situés sous /data/user/gitmon. GitHub conserve une heure de données par fichier pour deux semaines. Pour plus d’informations, consultez Analyse du trafic Git avec Governor dans la GitHub Community.

ghe-governor <subcommand> <column> [options]
ghe-governor -h
Usage: ghe-governor [-h] <subcommand> args

OPTIONS:
  -h | --help        Show this message.

Valid subcommands are:
  aggregate              Find the top (n) groups of queries for a grouping function and metric
  health                 Summarize all recent activity on one or more servers
  top                    Find the top (n) queries for a given metric
  dump                   Dump individual operations
  test-quotas            Check quota information

Try ghe-governor <subcommand> --help for more information on the arguments each subcommand takes.

ghe-repo

Cet utilitaire vous permet de passer au répertoire d’un dépôt et d’ouvrir un interpréteur de commandes interactif en tant qu’utilisateur git. Vous pouvez effectuer une inspection manuelle d’un dépôt ou en assurer la maintenance via des commandes comme git-* ou git-nw-*.

ghe-repo USERNAME/REPONAME

ghe-repo-gc

Cet utilitaire permet de repackager manuellement un réseau de dépôts pour optimiser le stockage de packs. Si vous disposez d’un dépôt volumineux, l’exécution de cette commande peut contribuer à en réduire la taille globale. GitHub Enterprise exécute automatiquement cette commande pendant toute votre interaction avec un réseau de dépôts.

ghe-repo-gc USERNAME/REPONAME

Vous pouvez ajouter l’argument facultatif --prune pour supprimer des objets Git inaccessibles qui ne sont pas référencés à partir d’une branche, d’une balise ou d’une autre référence. Cela est particulièrement utile pour supprimer immédiatement les informations sensibles précédemment effacées. Consulter « Suppression de données sensibles dans un dépôt ».

Si vous utilisez une topologie de déploiement avec plusieurs nœuds, vous devez exécuter la commande sur tous les nœuds afin d’éviter que des données sensibles ne persistent sur d’autres nœuds et ne soient potentiellement exposées lors d’un basculement. Par exemple, pour une configuration de cluster, vous pouvez utiliser la commande suivante.

ghe-cluster-each -r git -- "ghe-repo-gc --prune USERNAME/REPONAME"

GitHub Actions

ghe-actions-check

Cet utilitaire vérifie que tous les services pour GitHub Actions sont sains. Pour plus d’informations, consultez « Bien démarrer avec GitHub Actions pour GitHub Enterprise Server » et « Résolution des problèmes liés à GitHub Actions pour votre entreprise ».

ghe-actions-check

ghe-actions-precheck

Cet utilitaire teste la configuration du stockage d’objets blob pour GitHub Actions sur votre instance GitHub Enterprise Server. Vous pouvez vous en servir pour vérifier votre configuration de stockage avant d’activer GitHub Actions pour votre instance.

Pour plus d’informations sur la configuration de GitHub Actions, consultez « Bien démarrer avec GitHub Actions pour GitHub Enterprise Server ».

Remarque : Cet utilitaire ne fonctionne qu’avec les configurations qui utilisent une connexion basée sur les informations d’identification au fournisseur de stockage. Pour tester les configurations OpenID Connect (OIDC), utilisez ghe-actions-test-storage-with-oidc.

ghe-actions-precheck -p [PROVIDER] -cs ["CONNECTION-STRING"]

Si votre système de stockage est bien configuré, vous obtenez la sortie suivante.

All Storage tests passed

ghe-actions-test-storage-with-oidc

Cet utilitaire vérifie que le fournisseur de stockage d’objets blob pour GitHub Actions sur votre instance GitHub Enterprise Server est valide lorsque OpenID Connect (OIDC) est utilisé.

Remarque : cet utilitaire fonctionne uniquement avec les configurations qui utilisent une configuration OpenID Connect (OIDC). Pour tester les configurations basées sur les informations d’identification, utilisez ghe-actions-precheck.

ghe-actions-test-storage-with-oidc -p [PROVIDER] -cs ["CONNECTION-STRING"]

ghe-actions-stop

Cet utilitaire arrête l’exécution des GitHub Actions sur votre instance GitHub Enterprise Server.

Remarques:

  • En règle générale, vous l’exécutez seulement si vous avez contacté le support et qu’ils vous ont demandé de le faire.
  • Dans les configurations de haute disponibilité, exécutez cette commande à partir du serveur principal.

ghe-actions-start

Cet utilitaire redémarre les GitHub Actions sur votre instance GitHub Enterprise Server après qu’elles ont été arrêtées.

Remarques:

  • En règle générale, vous l’exécutez seulement si vous avez contacté le support et qu’ils vous ont demandé de le faire.
  • Dans les configurations de haute disponibilité, exécutez cette commande à partir du serveur principal.

Si votre système est bien configuré, vous obtenez la sortie suivante :

Actions was enabled!

GitHub Packages

ghe-check-blob-connection

Cet utilitaire vérifie qu’un fournisseur de stockage d’objets blob pour GitHub Packages est valide sur votre instance GitHub Enterprise Server.

ghe-check-blob-connection --help

Si une connexion a été configurée précédemment, des tests peuvent être effectués en exécutant directement la commande sans aucun paramètre.

ghe-check-blob-connection

Si votre système est bien configuré, vous obtenez la sortie suivante :

All Storage tests passed

Haute disponibilité

ghe-repl-promote

Cette commande désactive la réplication sur un nœud réplica existant et convertit le nœud réplica en nœud principal à l’aide des mêmes paramètres que le nœud principal d’origine. Tous les services de réplication sont activés. Pour plus d’informations, consultez « Lancement d’un basculement vers votre appliance réplica ».

La promotion d’un réplica ne configure pas automatiquement la réplication pour les appliances existantes. Après avoir promu un réplica, si vous le souhaitez, vous pouvez configurer la réplication à partir du nouveau réplica principal vers des appliances existantes et le réplica principal précédent.

ghe-repl-promote

ghe-repl-setup

Exécutez cet utilitaire sur un nœud existant pour commencer à activer une configuration de haute disponibilité. L’utilitaire met le nœud en mode veille avant de commencer la réplication avec ghe-repl-start. Pour plus d’informations, consultez « Création d’un réplica à haute disponibilité ».

Après avoir exécuté l’utilitaire, la configuration suivante se produit sur le nœud.

  • Un tunnel VPN WireGuard chiffré est établi pour la communication entre les nœuds.
  • Les services de base de données sont configurés pour la réplication et démarrés.
  • Les services d’application sont désactivés. Les tentatives d’accès au nœud réplica via HTTP ou HTTPS, Git ou d’autres protocoles pris en charge affichent le message « Serveur en mode de réplication », une page de maintenance ou un message d’erreur.

Lorsque vous exécutez cet utilitaire, remplacez PRIMARY-NODE-IP par l’adresse IP du nœud principal de votre instance.

ghe-repl-setup PRIMARY-NODE-IP

ghe-repl-start

Cet utilitaire commence la réplication de tous les magasins de données sur un nœud. Exécutez cet utilitaire après avoir exécuté ghe-repl-setup. Pour plus d’informations, consultez « Création d’un réplica à haute disponibilité ».

ghe-repl-start

ghe-repl-status

Cet utilitaire affiche l’état de réplication sur un nœud en retournant un état OK, WARNING ou CRITICAL pour le flux de réplication de chaque magasin de données. Pour plus d’informations, consultez « Surveillance d’une configuration de haute disponibilité ».

  • Si l’un des canaux de réplication est dans un état WARNING, la commande s’arrête avec le code 1.
  • Si vous n’avez pas démarré la réplication, la commande s’arrête avec du code 1.
  • Si l’un des canaux est dans un état CRITICAL, la commande s’arrête avec le code 2.
  • La sortie est conforme aux attentes du plug-in check_by_ssh de Nagios. Pour plus d’informations, consultez le plug-in check_by_ssh dans la page officielle des plug-ins Nagios.
ghe-repl-status

Les options -v et -vv fournissent des détails supplémentaires sur l’état de réplication de chaque magasin de données.

ghe-repl-status -v

ghe-repl-stop

Cette commande désactive temporairement la réplication pour tous les magasins de données sur un nœud réplica existant. Tous les services de réplication sont arrêtés. Pour reprendre la réplication, utilisez ghe-repl-start.

ghe-repl-stop

ghe-repl-teardown

Cet utilitaire désactive complètement la réplication sur un nœud réplica existant, ce qui supprime la configuration de réplica. Vous pouvez exécuter la commande suivante à partir d’un nœud réplica, mais si le nœud réplica est inaccessible, vous pouvez également exécuter la commande à partir du nœud principal.

ghe-repl-teardown

ghe-repl-stop-all

Cet utilitaire désactive la réplication de tous les magasins de données sur un nœud. Exécutez cet utilitaire à partir du nœud principal avant de mettre à niveau les réplicas. Pour plus d’informations, consultez « Mise à niveau avec un package de mise à niveau ».

ghe-repl-start-all

Cet utilitaire commence la réplication de tous les magasins de données sur un nœud. Exécutez cet utilitaire à partir du nœud principal après la mise à niveau des réplicas. Pour plus d’informations, consultez « Mise à niveau avec un package de mise à niveau ».

Importer et exporter

ghe-migrator

ghe-migrator est un outil à haute-fidélité pour vous aider à migrer d’une instance GitHub vers une autre. Vous pouvez regrouper vos instances ou déplacer organisation, utilisateurs, équipes et autres dépôts de GitHub.com vers GitHub Enterprise.

Pour plus d’informations, consultez nos guides sur la migration de données vers et depuis votre entreprise.

git-import-detect

À partir d’une URL, détectez le type de système de gestion du contrôle de code source qui se trouve à l’autre extrémité. Dans le cadre d’une importation manuelle, cela est probablement déjà connu, mais cela peut être très utile dans les scripts automatisés.

git-import-detect

git-import-hg-raw

Cet utilitaire permet d’importer un dépôt Mercurial dans ce dépôt Git. Pour plus d’informations, consultez « Importation à partir d’autres systèmes de gestion de versions avec l’interpréteur de commandes d’administration ».

git-import-hg-raw

git-import-svn-raw

Cet utilitaire permet d’importer l’historique Subversion et les données de fichier dans une branche Git. Il s’agit d’une copie directe de l’arborescence, ignorant toute distinction de tronc ou de branche. Pour plus d’informations, consultez « Importation à partir d’autres systèmes de gestion de versions avec l’interpréteur de commandes d’administration ».

git-import-svn-raw

git-import-tfs-raw

Cet utilitaire permet d’importer à partir de TFVC (Team Foundation Version Control). Pour plus d’informations, consultez « Importation à partir d’autres systèmes de gestion de versions avec l’interpréteur de commandes d’administration ».

git-import-tfs-raw

git-import-rewrite

Cet utilitaire permet de réécrire le dépôt importé. Il vous permet de renommer les auteurs et, pour Subversion et TFVC, de créer des branches Git basées sur des dossiers. Pour plus d’informations, consultez « Importation à partir d’autres systèmes de gestion de versions avec l’interpréteur de commandes d’administration ».

git-import-rewrite

Licence

ghe-license

Cet utilitaire vous permet d’interagir avec votre licence active actuelle ou avec de nouvelles licences sans avoir à les importer au préalable. Vous pouvez également appliquer directement la licence pour rendre les changements effectifs à l’aide de --apply. L’application des modifications à l’aide de l’utilitaire ghe-license évite l’exécution d’une configuration et redémarre uniquement les services concernés.

Vous pouvez consulter les commandes et les indicateurs possibles à l’aide de ghe-license -h.

Vous pouvez également gérer les licences à l’aide de l’API REST ou de GitHub CLI. Consultez « Points de terminaison d’API REST pour la gestion de GitHub Enterprise Server » et « Administration de votre instance à l’aide de l’interface CLI GitHub. »

Affiche les informations relatives à la licence. Vous pouvez également utiliser l’indicateur -j pour le formatage JSON.

ghe-license info
# "advanced_security_enabled" : true
# "advanced_security_seats" : 0
# "cluster_support" : false
# "company" : "GitHub"
# "croquet_support" : true
# "custom_terms" : true
# "evaluation" : false
# "expire_at" : "2025-01-01T23:59:59-08:00"
# "insights_enabled" : true
# "insights_expire_at" : "2025-01-01T23:59:59.999-08:00"
# "learning_lab_evaluation_expires" : "2023-01-01T23:59:59.000-08:00"
# "learning_lab_seats" : 100
# "perpetual" : false
# "reference_number" : "123456"
# "seats" : 0
# "ssh_allowed" : true
# "support_key" : null
# "unlimited_seating" : true

Vérifiez la licence.

ghe-license check
# License is valid.

Toutes les commandes sont exécutées sur la licence existante. Toutefois, vous pouvez également fournir une licence à partir de STDOUT à l’aide de --pipe.

cat license | ghe-license import --pipe
# License imported at /data/user/common/enterprise.ghl.
# License synchronized.

Vous pouvez également fournir une licence en attribuant un chemin d’accès au fichier à la variable d’environnement GHE_LICENSE_FILE.

GHE_LICENSE_FILE=/path/license ghe-license import
# License imported at /data/user/common/enterprise.ghl.
# License synchronized.

Sécurité

ghe-find-insecure-git-operations

Cet utilitaire recherche les journaux de votre instance et identifie les opérations Git sur SSH qui utilisent des algorithmes ou des fonctions de hachage non sécurisés, notamment les chiffrements DSA, RSA-SHA-1, HMAC-SHA-1 et CBC. Vous pouvez utiliser la sortie pour prendre en charge la transition de chaque client vers une connexion SSH plus sécurisée. Pour plus d’informations, consultez the GitHub Blog et « Configuration des connexions SSH sur votre instance ».

ghe-find-insecure-git-operations

Support

ghe-diagnostics

Cet utilitaire effectue diverses vérifications et collecte des informations sur votre installation que vous pouvez envoyer au service de support pour aider au diagnostic des problèmes que vous rencontrez.

Pour l’heure, la sortie de cet utilitaire équivaut aux informations de diagnostic téléchargées à partir de la Management Console, mais il se peut que des améliorations supplémentaires soient apportées au fil du temps qui ne seront pas disponibles dans l’interface utilisateur web. Pour plus d’informations, consultez « Fournir des données au support GitHub ».

ghe-diagnostics

ghe-support-bundle

Remarque : Si votre instance GitHub Enterprise Server est dans une configuration de géoréplication ou si votre instance est un cluster, vous devez utiliser la commande ghe-cluster-support-bundle pour récupérer le bundle de support. Pour plus d’informations, consultez « Utilitaires de ligne de commande ».

Cet utilitaire permet de crée un tarball de bundle de support contenant des journaux importants de votre instance.

Par défaut, la commande crée le tarball dans /tmp, mais vous pouvez aussi utiliser cat pour placer le tarball dans STDOUT et ainsi faciliter le streaming via SSH. Cela est utile dans le cas où l’interface utilisateur web ne répond pas ou si le téléchargement d’un bundle de support à partir de /setup/support ne fonctionne pas. Vous devez utiliser cette commande si vous souhaitez générer un bundle étendu contenant des journaux plus anciens. Vous pouvez aussi utiliser cette commande pour charger le bundle de support directement sur le support GitHub Enterprise.

Pour créer un bundle standard :

ssh -p 122 admin@HOSTNAME -- 'ghe-support-bundle -o' > support-bundle.tgz

Pour créer un bundle standard comprenant les données des 2 derniers jours :

ssh -p 122 admin@HOSTNAME -- "ghe-support-bundle -p 2days  -o" > support-bundle.tgz

Pour créer un bundle étendu comprenant les données des 8 derniers jours :

ssh -p 122 admin@HOSTNAME -- 'ghe-support-bundle -x -o' > support-bundle.tgz

Pour envoyer un bundle au Support GitHub :

ssh -p 122 admin@HOSTNAME -- 'ghe-support-bundle -u'

Pour envoyer un bundle au Support GitHub et l’associer à un ticket :

ssh -p 122 admin@HOSTNAME -- 'ghe-support-bundle -t TICKET_ID'

ghe-support-upload

Cet utilitaire permet d’envoyer des informations de votre appliance vers le support GitHub Enterprise. Vous pouvez soit spécifier un fichier local, soit fournir un flux de données d’un volume maximal de 100 Mo via STDIN. Les données chargées peuvent éventuellement être associées à un ticket de support.

Pour envoyer un fichier au Support GitHub et l’associer à un ticket :

ghe-support-upload -f FILE_PATH -t TICKET_ID

Pour charger des données via STDIN et les associer à un ticket :

ghe-repl-status -vv | ghe-support-upload -t TICKET_ID -d "Verbose Replication Status"

Dans cet exemple, ghe-repl-status -vv envoie les informations d’état détaillées d’une appliance réplica. Vous devez remplacer ghe-repl-status -vv par les données spécifiques que vous voulez transmettre en continu vers STDIN, et Verbose Replication Status par une brève description des données. En règle générale, vous l’exécutez seulement si vous avez contacté le support et qu’ils vous ont demandé de le faire.

Mise à niveau de GitHub Enterprise Server

ghe-check-background-upgrade-jobs

Lors d’une mise à niveau vers une version de fonctionnalité, cet utilitaire affiche l’état des tâches en arrière-plan sur votre instance GitHub Enterprise Server. Si vous exécutez des mises à niveau consécutives, vous devez utiliser cet utilitaire pour vérifier que toutes les tâches en arrière-plan sont terminées avant de passer à la mise à niveau suivante.

ghe-check-background-upgrade-jobs

ghe-migrations

Lors d’une mise à niveau vers une version de fonctionnalité, cet utilitaire affiche l’état des migrations de bases de données actives sur votre instance GitHub Enterprise Server. La sortie comprend un identificateur de version pour la migration, le nom de la migration, l’état de la migration et la durée actuelle de la migration.

Pour afficher la liste des migrations :

ghe-migrations

Par défaut, l’utilitaire génère un tableau de 10 lignes. Pour ajuster la hauteur du tableau dans les lignes :

ghe-migrations -height LINES

Par défaut, le visualiseur s’actualise toutes les secondes. Pour spécifier la durée en secondes de l’actualisation du visualiseur :

ghe-migrations -refresh_rate SECONDS

ghe-update-check

Cet utilitaire permet de vérifier s’il existe une nouvelle version corrective de GitHub Enterprise. Si c’est le cas et s’il y a suffisamment d’espace disponible sur votre instance, celle-ci télécharge le package. Par défaut, il est enregistré dans /var/lib/ghe-updates. Un administrateur peut ensuite effectuer la mise à niveau.

Un fichier contenant l’état du téléchargement est disponible à l’emplacement /var/lib/ghe-updates/ghe-update-check.status.

Pour rechercher la dernière version de GitHub Enterprise, utilisez le commutateur -i.

ssh -p 122 admin@HOSTNAME -- 'ghe-update-check'

ghe-upgrade

Cet utilitaire permet d’installer ou de vérifier un package de mise à niveau. Vous pouvez aussi utiliser cet utilitaire pour annuler une version corrective en cas d’échec ou d’interruption d’une mise à niveau. Pour plus d’informations, consultez « Vue d'ensemble du processus de mise à niveau ».

Pour vérifier un package de mise à niveau :

ghe-upgrade --verify UPGRADE-PACKAGE-FILENAME

Pour installer un package de mise à niveau :

ghe-upgrade UPGRADE-PACKAGE-FILENAME

Quand vous restaurez une mise à niveau, vous devez utiliser un fichier de package de mise à niveau avec l’extension .pkg. Les fichiers de package de patch à chaud avec l’extension .hpkg ne sont pas pris en charge.

ghe-upgrade --allow-patch-rollback EARLIER-RELEASE-UPGRADE-PACKAGE.pkg

Un redémarrage est nécessaire après l’exécution de cette commande. La restauration n’affecte pas la partition de données, car les migrations ne sont pas exécutées sur les versions de patch.

ghe-upgrade-scheduler

Cet utilitaire permet de gérer l’installation planifiée de packages de mise à niveau. Vous pouvez afficher, créer ou supprimer des installations planifiées. Vous devez créer des planifications à l’aide d’expressions cron. Pour plus d’informations, consultez l’article Wikipédia sur Cron.

L’utilitaire ghe-upgrade-scheduler est parfaitement adapté à la planification des mises à niveau avec patch à chaud qui ne nécessitent ni mode de maintenance ni redémarrage dans la plupart des cas. Cet utilitaire n’est pas pratique pour les mises à niveau complètes du package qui nécessitent qu’un administrateur définisse manuellement le mode de maintenance, redémarre l’instance et annule le mode de maintenance. Pour plus d’informations sur les différents types de mise à niveau, consultez « Mise à niveau avec un package de mise à niveau ».

Pour planifier une nouvelle installation pour un package :

ghe-upgrade-scheduler -c "0 2 15 12 *" UPGRADE-PACKAGE-FILENAME

Pour afficher les installations planifiées d’un package :

$ ghe-upgrade-scheduler -s UPGRADE PACKAGE FILENAME
> 0 2 15 12 * /usr/local/bin/ghe-upgrade -y -s UPGRADE-PACKAGE-FILENAME > /data/user/common/UPGRADE-PACKAGE-FILENAME.log 2>&1

Pour supprimer les installations planifiées d’un package :

ghe-upgrade-scheduler -r UPGRADE PACKAGE FILENAME

User Management

ghe-license usage

Cet utilitaire permet d’exporter une liste des utilisateurs de l’installation au format JSON. Si votre instance est connectée à GitHub Enterprise Cloud, GitHub Enterprise Server utilise ces informations pour transmettre les informations de licence à GitHub Enterprise Cloud. Pour plus d’informations, consultez « Enabling GitHub Connect for GitHub.com ».

Par défaut, la liste d’utilisateurs dans le fichier JSON obtenu est chiffrée. Passez en revue les indicateurs facultatifs via ghe-license --help.

ghe-license usage

ghe-org-membership-update

Cet utilitaire applique le paramètre par défaut de visibilité d’appartenance à une organisation à tous les membres de votre instance. Pour plus d’informations, consultez « Configuration de la visibilité de l’appartenance à une organisation ». Le paramètre peut être défini sur public ou private.

ghe-org-membership-update --visibility=SETTING

ghe-user-csv

Cet utilitaire permet d’exporter une liste de tous les utilisateurs de l’installation au format CSV. Le fichier CSV comprend l’adresse e-mail, le type d’utilisateur (par exemple, administrateur, utilisateur), le nombre de dépôts à disposition, le nombre de clés SSH, le nombre d’appartenances à une organisation, la dernière adresse IP journalisée, etc. Utilisez l’indicateur -h pour voir plus d’options.

ghe-user-csv -o > users.csv

ghe-user-demote

Cet utilitaire permet de rétrograder l’utilisateur spécifié du statut d’administrateur à celui d’utilisateur normal. Nous vous recommandons d’utiliser l’interface utilisateur web pour effectuer cette action, mais proposez cet utilitaire si l’utilitaire ghe-user-promote est exécuté par erreur et que vous devez à nouveau rétrograder un utilisateur à partir de l’interface CLI.

ghe-user-demote USERNAME

ghe-user-promote

Cet utilitaire permet de promouvoir le compte d’utilisateur spécifié en administrateur de site.

ghe-user-promote USERNAME

ghe-user-suspend

Cet utilitaire permet de suspendre l’utilisateur spécifié, l’empêchant ainsi de se connecter, d’envoyer (push) ou de tirer (pull) à partir de vos dépôts.

ghe-user-suspend USERNAME

ghe-user-unsuspend

Cet utilitaire permet de rétablir l’utilisateur spécifié, lui permettant ainsi de se connecter, d’envoyer (push) et de tirer (pull) à partir de vos dépôts.

ghe-user-unsuspend USERNAME