Commit e6e26275 authored by Kourser's avatar Kourser
Browse files

Les variables ajoutées se relisent avant d'être subies

Compléter un .env posait les valeurs de .env.example et rendait la main. Ce
sont des exemples : un SMTP_HOST vide, un serveur média sur des ports que
personne n'a choisis. Les laisser sans rien dire revient à décider à la place
de l'exploitant, et à lui faire découvrir au démarrage ce qu'on ne lui a pas
demandé.

Chaque clé ajoutée est donc proposée, sa valeur du moment en défaut, entrée
pour la garder. La revue elle-même se refuse d'un mot : ce qui vient d'être
ajouté vaut mieux que rien, même non relu.

Ce qui n'est pas proposé
  Les secrets tirés au sort. Les relire n'apprend rien et invite à saisir une
  valeur plus faible que celle qu'on remplace.

  Ceux qui viennent d'ailleurs — SMTP_PASSWORD, APNS_KEY, FCM_KEY. Ce script
  ne les demande à aucune invite, et cette règle vaut ici comme partout
  ailleurs. Ils sont nommés à la fin, parce qu'une clé vide et muette se
  découvre au premier envoi qui échoue.

awk et non sed
  La valeur peut porter des « / », des « & » ou des « \ », que le
  remplacement de sed interprète — « & » y rappelle le motif entier. Échapper
  trois caractères dans deux dialectes coûte plus cher que de passer la valeur
  par l'environnement, où rien ne la relit.

Contrôlé
  Sur un .env réel d'avant le passage à l'anglais : dix-sept clés proposées,
  les quatre secrets tirés et les deux secrets externes écartés. Les valeurs
  saisies arrivent intactes, y compris « Nom & Cie <a/b@c.test> » et
  « smtp.a/b&c.test », qui auraient perdu leur sens avec sed. Aucune valeur
  d'origine altérée, aucun doublon, mode 600 conservé. Refuser la revue laisse
  les exemples en place et nomme quand même ce qui reste à coller.

Co-Authored-By: default avatarClaude Opus 5 <noreply@anthropic.com>
parent 71a4a840
Loading
Loading
Loading
Loading