Commandes Just
Les commandes ci-dessous sont toutes exécutées avec just 🡕.
just <commande> <arguments>Chaque commande est préfixée d’une icône indiquant son contexte d’utilisation :
- 💠 Commun : disponible dans tous les contextes.
- 🔆 Framework : spécifique au framework DNF amont (
dnf/). - ✳️ Projet : spécifique au projet consommateur (mon réseau).
- 🔗 Co-développement : projet consommateur qui contient un clone du framework.
Commandes disponibles
Section intitulée « Commandes disponibles »Les recettes vivent dans dnf/just/. Le Justfile du projet importe un
fichier d’amorçage, qui détermine les commandes disponibles en fonction du
contexte.
| Contexte | Ligne du Justfile | Commandes |
|---|---|---|
| Framework | import 'just/dnf.just' | 💠 🔆 |
| Projet consommateur | import? 'dnf/just/project.just' | 💠 ✳️ |
| Co-développement | import 'dnf/just/codev.just' | 💠 ✳️ 🔗 |
Dans un projet consommateur, dnf/ est le lien vers le store Nix posé par
nix run .#init. Le ? de import? laisse just démarrer tant que ce lien
n’existe pas.
Le co-développement remplace ce lien par un clone git du framework. Les recettes
🔆 unit-tests, check-recipes, simulate, simulate-debug, fixtures et
pkg-update s’y lancent aussi depuis la racine. Les modèles de projet portent
la ligne codev.just, commentée.
Commandes de développement
Section intitulée « Commandes de développement »Communes à tous les contextes, ces commandes aident à maintenir le code et à générer les fichiers déclaratifs.
💠 develop / d
Section intitulée « 💠 develop / d »Lance nix develop -c zsh pour obtenir un shell avec les outils du projet.
just develop💠 clean / c ⭐
Section intitulée « 💠 clean / c ⭐ »Exécute la chaîne complète : statix fix → check-code → generate → format → _fix_fs_permissions.
just clean💠 format
Section intitulée « 💠 format »Lance treefmt sur tous les fichiers avec la config partagée du framework. En
co-développement, formate aussi dnf/.
just format💠 generate
Section intitulée « 💠 generate »Régénère les default.nix des dossiers de modules et, dans un projet, les
fichiers var/generated/*.nix depuis etc/config.yaml. Sème aussi
usr/machines/<hôte>/ pour chaque hôte doté d’un bloc disko (voir Dossier
machine).
just generateCommandes de vérification
Section intitulée « Commandes de vérification »Lancez ces vérifications avant de déployer pour détecter les régressions.
Enchaîne la vérification du code (check-code), les tests unitaires DNF et la
vérification du flake (check-flake). Les tests unitaires ne tournent que sur
un clone du framework : un dnf/ lié au store a été testé avant sa
publication.
just check💠 check-code
Section intitulée « 💠 check-code »Analyse statique avec statix et détection du code mort avec deadnix, sur
tous les fichiers *.nix.
just check-code💠 check-flake
Section intitulée « 💠 check-flake »Lance nix flake check en filtrant les avertissements connus des outputs
non standards de DNF (colmena, colmenaHive, homeManagerModules, libTests,
mkNodes, secretsPlan, version).
just check-flakeCommandes du framework
Section intitulée « Commandes du framework »Dans le dépôt du framework (dnf/). Les tests et pkg-update se lancent aussi
à la racine d’un projet de co-développement.
🔆 unit-tests ⭐
Section intitulée « 🔆 unit-tests ⭐ »Lance nix-unit sur les tests libTests du framework.
just unit-tests🔆 check-recipes
Section intitulée « 🔆 check-recipes »Vérifie que les trois amorçages (dnf, project, codev) se chargent, et que
chaque appel just <recette> imbriqué désigne une recette de son propre
contexte. just ne résout ces appels qu’à l’exécution : la CI lance la
même vérification.
just check-recipes🔆 simulate [scénario]
Section intitulée « 🔆 simulate [scénario] »Lance les scénarios de test NixOS (NixOS Test Driver).
| Argument | Effet |
|---|---|
| (vide) | Liste les scénarios disponibles |
all | Exécute tous les scénarios (nix flake check) |
full | Régénère les fixtures puis exécute tout |
<nom> | Exécute un scénario nommé |
just simulate # listerjust simulate all # tout exécuterjust simulate modules-node-console-git🔆 simulate-debug <scénario>
Section intitulée « 🔆 simulate-debug <scénario> »Lance le driver interactif d’un scénario (REPL Python).
just simulate-debug modules-node-console-git🔆 fixtures <action>
Section intitulée « 🔆 fixtures <action> »Gère les fixtures de test : génération, vérification d’absence de dérive, régénération des clés et secrets jetables.
| Action | Effet |
|---|---|
generate | Régénère var/generated/ pour tous les espaces de test |
check | Vérifie l’absence de dérive sans modifier l’arbre |
gen-secrets | Régénère les clés et secrets de test (jetables) |
just fixtures check🔆 pkg-update <paquet> [version]
Section intitulée « 🔆 pkg-update <paquet> [version] »Met à jour un paquet de dnf/pkgs/ vers sa dernière version amont, ou vers
version si elle est donnée, avec
nix-update 🡕. Voir Les paquets hors
nixpkgs.
just pkg-update rename-simplejust pkg-update fleet-update 0.2.0 # version explicite (train de release)🔆 version
Section intitulée « 🔆 version »Affiche la version du framework, sa révision, son dernier tag et la release du générateur qu’il épingle.
just version🔆 changelog
Section intitulée « 🔆 changelog »Affiche l’entrée que porterait la prochaine release, sans rien écrire. Requiert
git-cliff, fourni par la devShell (just develop).
just changelog🔆 bump [niveau]
Section intitulée « 🔆 bump [niveau] »Monte la version, ajoute l’entrée du CHANGELOG, commite et tague le framework, sans pousser. Voir Publier une version.
just bump # niveau déduit des commitsCommandes d’installation
Section intitulée « Commandes d’installation »L’installation d’un nouvel hôte suit un enchaînement précis.
✳️ install <hôte> [user] [ip]
Section intitulée « ✳️ install <hôte> [user] [ip] »Formate les disques via disko et installe NixOS via nixos-anywhere.
L’argument ip vaut auto par défaut : l’adresse est calculée comme pour
full-install, inutile de la relever.
La recette dépose aussi sur la cible, avant l’installation du système, la
clé age /etc/sops/age/infra.key et, sur un hôte chiffré, la clé d’hôte SSH de
son initrd : sops fonctionne dès la première activation et le tout premier
démarrage écoute déjà sur le port 2222. Le volume est formaté avec la
passphrase partagée du parc, il n’y a donc rien à saisir.
just install myserverjust install myserver nixos 10.0.0.5 # IP personnaliséejust install myserver nix auto test # VM test uniquement✳️ full-install <hôte> [user] [ip] ⭐
Section intitulée « ✳️ full-install <hôte> [user] [ip] ⭐ »Chaîne complète : install + attente reboot + unlock + configure +
apply + gc + reboot.
L’adresse de départ est calculée toute seule : nom de l’hôte dans sa propre zone, adresse de passage réservée s’il est branché ailleurs. Voir Machines hors de leur zone.
Après le redémarrage, la machine n’est pas forcément revenue au même
endroit : la recette sonde toutes ses adresses connues, sur les ports
22 et 2222, et poursuit sur celle qui répond. Un hôte chiffré est déverrouillé
au passage par just unlock.
Le redémarrage final n’est pas décoratif : apply active l’espace
utilisateur mais pas le noyau ni l’initrd, et ce reboot est la seule preuve
automatique que la machine repart toute seule. Sur un hôte chiffré, il
prouve du même coup que le déverrouillage à distance fonctionne, pendant que
vous êtes encore devant et non à la première coupure de courant. unlock est
donc rappelé juste après.
just full-install myserverjust full-install myserver nixos 10.0.3.42 # adresse forcée✳️ install-key <hôte>
Section intitulée « ✳️ install-key <hôte> »Formate un périphérique USB avec disko et installe NixOS dessus. Scelle l’hôte
comme install.
just install-key myusbhost✳️ install-here <hôte> <login> [empreinte] [yes] [passphrase]
Section intitulée « ✳️ install-here <hôte> <login> [empreinte] [yes] [passphrase] »Installe la machine sur laquelle elle tourne, démarrée sur l’ISO générique DNF,
comme poste d’administration du projet : disko efface son disque, les clés
naissent sur la cible (bootstrap-keys), puis nixos-install. Le projet
rejoint /etc/nixos du nouveau système, propriété de login. Un disque
chiffré demande le fichier de sa passphrase, qui devient la passphrase partagée
du parc ; la clé SSH d’initrd est déposée sur la cible.
just install-here poste alice '<empreinte>'✳️ backup-admin <périphérique> [passphrase] [racine]
Section intitulée « ✳️ backup-admin <périphérique> [passphrase] [racine] »Écrit sur une clé USB, sans la formater, une sauvegarde chiffrée par age de ce
que rien d’autre ne remplace : la clé de déploiement nix (qui donne la
clé age d’admin), la clé age d’infra et le projet (git bundle). Fichier
dnf-backup-<domaine>.tar.age, avec un README.txt en clair ; une
sauvegarde précédente du même réseau est gardée, renommée à sa date.
périphérique: une partition de la clé,/dev/disk/by-label/SECOURSpar exemple ;passphrase: un fichier qui la contient ; sinon, age la demande ;racine: le système qui porte les clés,/mntdepuis l’installeur.
darkone new la lance après l’installation.
just backup-admin /dev/disk/by-label/SECOURS✳️ backup-check <périphérique> [passphrase] [racine]
Section intitulée « ✳️ backup-check <périphérique> [passphrase] [racine] »Relit la sauvegarde de backup-admin, mêmes arguments, et la compare aux clés
et au dernier commit du projet.
✳️ configure <hôte> [ip]
Section intitulée « ✳️ configure <hôte> [ip] »Enchaîne copy-id → copy-hw → push-key → luks (ce dernier ne fait rien
sur un hôte non chiffré).
L’adresse est résolue une fois et transmise à toute la chaîne. Si l’hôte est
branché hors de sa zone, la redirection SSH est posée dans la foulée, pour que
l’apply qui suit l’atteigne : just roaming-clear <hôte> une fois la
machine revenue chez elle.
just configure myserver✳️ copy-id <hôte>
Section intitulée « ✳️ copy-id <hôte> »Vérifie que la clé de déploiement nix ouvre bien l’hôte cible, et pousse la
clé privée partagée sur les passerelles (synchronisation des certificats
TLS depuis le HCS).
just copy-id myserver✳️ copy-hw <hôte>
Section intitulée « ✳️ copy-hw <hôte> »Exécute nixos-generate-config --show-hardware-config à distance et sauvegarde
le résultat dans usr/machines/<hôte>/hardware/hardware-configuration.nix,
puis enchaîne detect-hw.
just copy-hw myserver✳️ detect-hw <hôte> [ip] [user]
Section intitulée « ✳️ detect-hw <hôte> [ip] [user] »Relève sur la machine les modules noyau de ses cartes réseau filaires et les
écrit dans usr/machines/<hôte>/hardware/detected-hardware.nix (fichier généré,
importé automatiquement). Ils ne rejoignent l’initrd que s’il a du réseau,
pour le déverrouillage LUKS à distance.
Détecte aussi une machine virtuelle (systemd-detect-virt) : aucun
firmware n’y est chargé (darkone.system.hardware.virtual).
Appelé par install (utilisateur nixos de l’ISO) et par copy-hw.
just detect-hw myserver✳️ push-key <hôte>
Section intitulée « ✳️ push-key <hôte> »Transfère la clé age /etc/sops/age/infra.key vers l’hôte cible.
just push-key myserver✳️ host-info <hôte> [ip]
Section intitulée « ✳️ host-info <hôte> [ip] »Affiche l’adresse MAC de la première interface active d’une machine, pour la
déclarer dans etc/config.yaml avant de l’installer. Utile quand l’hôte n’a
pas encore de réservation DHCP et n’est donc joignable que par l’adresse
dynamique relevée sur son écran.
just host-info myserver 10.0.0.50✳️ luks <hôte> [action] [ip]
Section intitulée « ✳️ luks <hôte> [action] [ip] »Provisionne le chiffrement d’un hôte : passphrases partagée et par hôte
dans sops, clé SSH de l’initrd dans sops puis sur la cible, manifeste
usr/secrets/luks.json, IP WAN des passerelles. Voir
Chiffrement des disques (LUKS).
| Action | Effet |
|---|---|
| (défaut) | Prépare les secrets, puis converge la machine |
pre | Moitié hors ligne seulement, sans toucher à la machine |
passwd | Fait tourner la passphrase par hôte, puis converge |
show | Audit en lecture seule : keyslots et déverrouillage distant |
just luks myserverjust luks myserver showjust luks myserver passwd✳️ roaming [hôte] [ip]
Section intitulée « ✳️ roaming [hôte] [ip] »Redirige SSH vers un hôte branché hors de sa zone, le temps de l’installation. Colmena s’adresse à un nœud par son nom, qui désigne son adresse d’origine ; cette redirection le renvoie là où la machine se trouve vraiment.
Posée par just configure quand c’est nécessaire, retirée par full-install
en fin de course. Sans argument, affiche les redirections en cours.
just roaming # afficherjust roaming myserver # rediriger (adresse calculée)✳️ roaming-clear [hôte]
Section intitulée « ✳️ roaming-clear [hôte] »Retire la redirection d’un hôte, ou toutes si aucun n’est donné.
just roaming-clear myserverjust roaming-clear✳️ configure-admin-host ⭐
Section intitulée « ✳️ configure-admin-host ⭐ »Configure la machine d’administration : clés SSH, clés age SOPS,
.sops.yaml, secrets par défaut, clé de signature Harmonia, et tous les
secrets internes que réclament les services déclarés (clients OAuth2,
sauvegarde, jetons de service…).
just configure-admin-host✳️ bootstrap-keys [racine] [login] [empreinte]
Section intitulée « ✳️ bootstrap-keys [racine] [login] [empreinte] »Crée les clés et le squelette sops d’une machine qui n’a pas encore de compte
nix, sous la racine donnée (/, ou /mnt depuis l’installateur).
configure-admin-host s’appuie sur la même mécanique. L’empreinte d’un compte
(mkpasswd, entre apostrophes) est facultative.
just bootstrap-keys /mnt alice '<empreinte>'✳️ build-iso [arch]
Section intitulée « ✳️ build-iso [arch] »Construit l’image ISO d’installation pour l’architecture donnée. Elle embarque
la clé publique d’administration (usr/secrets/nix.pub) : just full-install s’y connecte sans mot de passe.
just build-iso # x86_64-linux (défaut)just build-iso "aarch64-linux"Commandes de déploiement
Section intitulée « Commandes de déploiement »Les commandes apply* reposent sur colmena 🡕
et rafraîchissent d’abord le verrou DNF via update-dnf. fleet-update pilote
une mise à jour complète avec des commandes Nix natives.
✳️ apply <cible> [action] / a ⭐
Section intitulée « ✳️ apply <cible> [action] / a ⭐ »Déploie la configuration sur une ou plusieurs cibles.
| Paramètre | Description |
|---|---|
cible | Nom d’hôte, motif ('*'), liste (a,b), tag colmena (@server) |
action | switch (défaut), boot, test, build |
just apply @all # tous les hôtesjust apply myserver # switch (défaut)just apply myserver boot # bootjust apply 'db-*' # tous les hôtes commençant par db-✳️ apply-verbose <c> [a] / av ⭐
Section intitulée « ✳️ apply-verbose <c> [a] / av ⭐ »Idem apply avec --verbose --show-trace.
just apply-verbose myserver✳️ apply-local [action] / al ⭐
Section intitulée « ✳️ apply-local [action] / al ⭐ »Applique la configuration sur la machine courante.
just apply-local✳️ apply-silenced <cible> [action]
Section intitulée « ✳️ apply-silenced <cible> [action] »Active le mode maintenance Alertmanager avant d’appliquer, le désactive après.
just apply-silenced myserver✳️ fleet-update [options]
Section intitulée « ✳️ fleet-update [options] »Met à jour, construit et déploie tout le parc par vagues. Voir Mettre à jour le parc avec fleet-update.
just fleet-update # tout le parc, interface interactivejust fleet-update --on '+server' # les hôtes d'un profiljust fleet-update --build-only # construire sans rien activerjust fleet-update --help # toutes les options✳️ update-flake
Section intitulée « ✳️ update-flake »Met à jour les entrées flake de la racine. En co-développement, met d’abord à
jour celles de dnf/ et les commite (chore(flake):, amendé si le dernier
commit de dnf/ en est déjà un).
just update-flake✳️ update-dnf
Section intitulée « ✳️ update-dnf »Synchronise flake.lock avec le HEAD local de dnf/ (co-développement).
just update-dnfCommandes d’administration
Section intitulée « Commandes d’administration »Ces commandes permettent d’interagir avec les hôtes du parc : maintenance, redémarrage, nettoyage et réparation du boot.
✳️ enter <hôte> / e ⭐
Section intitulée « ✳️ enter <hôte> / e ⭐ »Ouvre une session SSH interactive en tant que nix@<hôte>, sur le port 22
seulement. Un hôte hors de sa zone est retrouvé par dnf-locate (voir
Joindre un hôte en déplacement).
Un hôte qui attend sa passphrase LUKS relève de just unlock.
just enter myserver✳️ unlock <hôte> [ip] [délai]
Section intitulée « ✳️ unlock <hôte> [ip] [délai] »Répond au prompt LUKS d’un hôte resté dans son initrd, sans humain :
la passphrase est lue dans sops et poussée par le sshd du port 2222. Attend que
l’hôte apparaisse (un point par tentative), ce qui permet de l’enchaîner juste
après un redémarrage. Appelée automatiquement par just full-install. Aucune
passphrase stockée acceptée : depuis un terminal, la demande est présentée.
Sur un hôte sans volume LUKS, c’est un no-op journalisé.
just unlock myserver✳️ remote-desktop <hôte> [ro|rw|login] / rd ⭐
Section intitulée « ✳️ remote-desktop <hôte> [ro|rw|login] / rd ⭐ »Ouvre le bureau à distance d’un hôte. ro (défaut) observe la session
graphique déjà ouverte, rw y prend la main ; les deux échouent si
personne n’est connecté. login ouvre à la place votre propre session
derrière un écran de login GDM. Aucun port n’est ouvert sur l’hôte : le flux
passe par un tunnel SSH monté par nix. Voir
Bureau à distance.
just rd mypc # observationjust rd mypc rw # prise en mainjust rd mypc login # session à soi, via GDM✳️ reboot <hôte>
Section intitulée « ✳️ reboot <hôte> »Redémarre l’hôte via colmena exec.
just reboot myserverjust reboot 'web-*' # tous les web-*✳️ halt <hôte>
Section intitulée « ✳️ halt <hôte> »Arrête (poweroff) l’hôte via colmena exec, après confirmation.
just halt myserver✳️ gc <hôte> [keep] ⭐
Section intitulée « ✳️ gc <hôte> [keep] ⭐ »Supprime les anciennes générations, nettoie le store puis régénère les entrées
de démarrage (switch-to-configuration boot). keep fixe ce qui est conservé :
keep | Générations conservées |
|---|---|
| (vide) | La courante uniquement, tous profils (nix-collect-garbage -d) |
N (1 à 99) | Les N dernières du profil système, courante incluse |
Nd (1 à 99) | Celles de moins de N jours, plus celle active à cette date |
# Nettoyage des hôtes dont le nom commence par "server-"just gc "server-*" # Garde uniquement la génération courantejust gc "server-*" 3 # Garde les 3 dernières générations, courante inclusejust gc "server-*" 3d # Supprime les générations de plus de 3 jours✳️ nfs-cleanup <hôtes> [mode]
Section intitulée « ✳️ nfs-cleanup <hôtes> [mode] »Nettoie les dossiers personnels d’un hôte sorti du partage NFS : liens XDG
morts supprimés, sauvegardes .bak restaurées. check (défaut) n’écrit rien et
affiche ce que ferait apply. hôtes est une liste séparée par des virgules,
ou all. Voir Sortir du partage NFS des homes.
just nfs-cleanup myserver # simulation, n'écrit rienjust nfs-cleanup myserver apply # exécution✳️ fix-boot <hôte>
Section intitulée « ✳️ fix-boot <hôte> »Réinstalle le bootloader avec NIXOS_INSTALL_BOOTLOADER=1.
just fix-boot myserver✳️ fix-gdm-greeters <hôtes> [check|apply]
Section intitulée « ✳️ fix-gdm-greeters <hôtes> [check|apply] »Réaligne les UID des comptes gdm-greeter* sur ceux de nixpkgs.
Voir Dépannage.
just fix-gdm-greeters poste-01,poste-02 # diagnostic, n'écrit rienjust fix-gdm-greeters poste-01,poste-02 applyCommandes de gestion des secrets
Section intitulée « Commandes de gestion des secrets »Les mots de passe et clés sont chiffrés avec SOPS. Ces commandes les gèrent sans manipuler les fichiers chiffrés à la main.
✳️ sops ⭐
Section intitulée « ✳️ sops ⭐ »Ouvre usr/secrets/secrets.yaml dans vim (via l’utilisateur nix).
just sops✳️ invite <user> [mode] [hash] ⭐
Section intitulée « ✳️ invite <user> [mode] [hash] ⭐ »Accueille un utilisateur ou réinitialise ses accès : mot de passe de session, lien Kanidm, invitation au coffre-fort, fiche d’accueil à copier. Un accès déjà défini n’est remplacé qu’après confirmation.
| Mode | Pour | Lien Kanidm |
|---|---|---|
normal / n (défaut) | Non technicien | 1 h, pour l’admin |
advanced / a | Technicien | 24 h, pour l’utilisateur |
just invite alice # non technicienjust invite alice advanced # technicienjust invite alice a '<hash>' # technicien, empreinte envoyée à distanceVoir Créer un compte utilisateur.
✳️ passwd-default
Section intitulée « ✳️ passwd-default »Enregistre le mot de passe de référence du parc (empreinte bcrypt dans sops).
Ne configure aucun compte : just passwd <utilisateur> s’en charge.
just passwd-default✳️ passwd <utilisateur> [empreinte] ⭐
Section intitulée « ✳️ passwd <utilisateur> [empreinte] ⭐ »Met à jour le mot de passe de session d’un utilisateur, ou enregistre
l’empreinte qu’il a envoyée (mkpasswd -m sha-512, entre apostrophes).
just passwd darkonejust passwd darkone '<empreinte>'✳️ yubikey <utilisateur> [clé] [action]
Section intitulée « ✳️ yubikey <utilisateur> [clé] [action] »Enrôle une YubiKey (main par défaut, ou backup) pour un utilisateur : PAM
(session/sudo), LUKS et lien d’enrôlement Kanidm, en un seul passage sur le
poste admin. action=revoke révoque la clé sur tout le parc au prochain
déploiement. Voir Authentification forte.
just yubikey darkone # enrôle la clé principalejust yubikey darkone backup # enrôle la clé de secoursjust yubikey darkone main revoke✳️ rotate init|push-keys|finalize
Section intitulée « ✳️ rotate init|push-keys|finalize »Rotation de la clé age /etc/sops/age/infra.key en 3 étapes avec vérifications
d’intégrité.
| Étape | Action |
|---|---|
init | Génère une nouvelle clé, conserve l’ancienne, rechiffre les secrets |
push-keys | Pousse la clé combinée (nouvelle + ancienne) vers tous les hôtes |
finalize | Vérifie que tous les hôtes ont la nouvelle clé, supprime l’ancienne |
just rotate initjust rotate push-keysjust rotate finalizeCommandes avancées
Section intitulée « Commandes avancées »Ces commandes couvrent des fonctionnalités spécifiques : provisionnement du bot d’alertes Matrix et gestion de la réplication Kanidm.
✳️ configure-alert-bot
Section intitulée « ✳️ configure-alert-bot »Crée ou rafraîchit le bot Matrix, le secret webhook et les salons d’alertes
et d’incidents depuis la section network.matrix de config.yaml. Le compte
du bot est créé sur l’hôte Matrix avec dnf-mas, par ssh.
just configure-alert-bot✳️ send-msg
Section intitulée « ✳️ send-msg »Envoie un message dans un salon d’alertes (warnings ou incidents), corps
markdown sur l’entrée standard. Salons et jeton viennent du projet :
l’appelant n’écrit que le texte. Codes de sortie : 10 rien de configuré,
11 message refusé par le serveur.
just send-msg warnings < rapport.md✳️ idm-sync-certs
Section intitulée « ✳️ idm-sync-certs »Collecte les certificats de réplication Kanidm de tous les nœuds du parc
vers usr/secrets/replication/.
just idm-sync-certs✳️ idm-fix-replica <suppl> <cons>
Section intitulée « ✳️ idm-fix-replica <suppl> <cons> »Analyse la santé de la réplication Kanidm sans rien modifier. Prend le nœud supplier (HCS) et la liste des consumers (gateways, séparés par des virgules).
just idm-fix-replica hcs agate,gwCommandes de co-développement
Section intitulée « Commandes de co-développement »À la racine d’un projet de co-développement. Les commandes git travaillent sur
tous les dépôts du projet (par défaut src/*/, dnf, doc, et la
racine). L’alias court de git est g.
🔗 git <cmd> [projet]
Section intitulée « 🔗 git <cmd> [projet] »Exécute n’importe quelle commande git sur un ou tous les projets.
just git "log --oneline -5" # derniers commits de tous projetsjust git "status" dnf # git status sur dnf/ seulementjust git "remote -v" # remotes de tous les projets🔗 commit <message> [projet] ⭐
Section intitulée « 🔗 commit <message> [projet] ⭐ »add -A + commit -m sur un ou tous les projets. Si le message est
identique au dernier commit, la recette amende au lieu de créer un nouveau
commit.
Sur tous les projets, la racine passe en dernier, après update-dnf : son
commit épingle la révision de dnf/ qui vient d’être commitée.
just commit "fix(net): update dns config"just commit "fix(net): update dns config" dnf # dnf/ seulement🔗 amend [projet] ⭐
Section intitulée « 🔗 amend [projet] ⭐ »Ajoute les modifications en cours au dernier commit de chaque projet
(--no-edit). Sur tous les projets, le verrou de la racine est ensuite
réaligné sur dnf/.
just amend🔗 status [projet] ⭐
Section intitulée « 🔗 status [projet] ⭐ »Affiche le statut git d’un ou tous les projets.
just status🔗 diff [projet]
Section intitulée « 🔗 diff [projet] »Affiche le diff git d’un ou tous les projets.
just diff🔗 push [projet] ⭐
Section intitulée « 🔗 push [projet] ⭐ »Vérifie la présence d’une branche amont et de commits en avance avant de pousser.
just push🔗 pull [projet]
Section intitulée « 🔗 pull [projet] »Tire les dernières modifications d’un ou tous les projets.
just pull🔗 git-last-log
Section intitulée « 🔗 git-last-log »Affiche le dernier message de commit de tous les projets, formaté et aligné.
just git-last-log🔗 git-show-repos
Section intitulée « 🔗 git-show-repos »Affiche la liste des dépôts sur lesquels les commandes git itèrent.
just git-show-repos🔗 gen-build
Section intitulée « 🔗 gen-build »Construit le binaire du générateur (src/generator/).
just gen-build🔗 gen-test
Section intitulée « 🔗 gen-test »Lance les tests unitaires du générateur.
just gen-test🔗 cat [hôte] ⭐
Section intitulée « 🔗 cat [hôte] ⭐ »Enchaîne clean → amend → apply-local test (ou apply-verbose <hôte>).
just cat # teste en localjust cat myserver # applique sur myserver🔗 versions
Section intitulée « 🔗 versions »Affiche la version, le dernier tag et la branche de chaque dépôt, puis la release du générateur épinglée par le framework.
just versions🔗 release [niveau]
Section intitulée « 🔗 release [niveau] »Publie tout l’écosystème (générateur, fleet-update, framework, documentation
et modèles de projet) après les vérifications et les simulations. Voir Le train de
release.
just releaseRécapitulatif des alias
Section intitulée « Récapitulatif des alias »| Alias | Commande | Contexte |
|---|---|---|
a | apply | ✳️ |
al | apply-local | ✳️ |
av | apply-verbose | ✳️ |
c | clean | 💠 |
d | develop | 💠 |
e | enter | ✳️ |
g | git | 🔗 |
amend | git-amend | 🔗 |
commit | git-commit | 🔗 |
diff | git-diff | 🔗 |
pull | git-pull | 🔗 |
push | git-push | 🔗 |
status | git-status | 🔗 |
rd | remote-desktop | ✳️ |