compositeur de mise à jour continue d'écraser les paramètres.yml lors de l'utilisation de valeurs personnalisées
J'ai quelques entrées personnalisées dans mes paramètres.yml, chaque fois que je lance un compositeur de mise à jour, il veut ajouter les entrées manquantes, qui, même pire remplace mon entrées personnalisées. Comment puis-je arrêter?
par exemple avant de composer la mise à jour
#parameters.yml
# Env = GLOBAL
parameters:
# DB settings - GLOBAL
database_driver: pdo_mysql
database_host: 127.0.0.1
database_port: 3306
#mailer settings
mailer_to: yo@yo.com
mailer_from: yo@site.com
mailer_transport: smtp
mailer_subject: ":-| Something is broken!"
# Framework use - GLOBAL
locale: en
après
#parameters.yml
# This file is auto-generated during the composer install
parameters:
database_driver: pdo_mysql
database_host: 127.0.0.1
database_port: 3306
mailer_transport: smtp
locale: en
database_name:
database_user:
database_password:
mailer_host:
mailer_user:
mailer_password:
secret:
Heureusement, mon repo et mon fichier de travail par le biais de mon ide sont deux fichiers différents et doivent être synchronisés. après je lance le compositeur de mise à jour, lorsque je lance la synchronisation, j'ai télécharger tous les fichiers de mon IDE, sauf pour les paramètres.yml, je l'ai repousser jusqu'à remplacer celui qui vient de s'auto créé.
Je tiens à éliminer cette source de tracas, comme je l'ai garder ma db mots de passe par/env fichier.
EDIT: Quand j'essaie de remplir les inutiles vars valeurs factices par micropression, la situation s'envenime.
$ composer update
Loading composer repositories with package information
Updating dependencies (including require-dev)
Generating autoload files
Updating the "app/config/parameters.yml" file
Some parameters are missing. Please provide them.
database_name: null
database_user: null
database_password: null
mailer_host: null
mailer_user: null
mailer_password: null
secret: null
[Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException]
You have requested a non-existent parameter "mailer_from".
Script Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::clearCache handling the post-update-cmd event terminated with an exception
[RuntimeException]
An error occurred when executing the "'cache:clear --no-warmup'" command.
La coutume param est à l'origine des problèmes lui-même.
Alors maintenant je vais jetter un oeil à mon nouveau fichier généré, et il semble que ce
# This file is auto-generated during the composer install
parameters:
database_driver: pdo_mysql
database_host: 127.0.0.1
database_port: 3306
mailer_transport: smtp
locale: en
database_name: null
database_user: null
database_password: null
mailer_host: null
mailer_user: null
mailer_password: null
secret: null
Mais ce que j'en ai besoin-à-dire après la régénération, idéalement, est-ce
/**
* my custom comment and copyright/legal tamper warning
*/
# Env = GLOBAL
parameters:
# DB settings - GLOBAL
database_driver: pdo_mysql
database_host: 127.0.0.1
database_port: 3306
#mailer settings
mail_to: me@site.com
mail_from: site@site.com
mail_transport: smtp
mail_subject: ":-| Something is broken!"
# Framework use - GLOBAL
locale: en
Le reste de mes paramètres sont situés sur un autre fichier de paramètres, qui est d'inclure dynamiquement en fonction de ce que env charges, et dispose de différents db creds sur chacun d'eux.
MODIFIER par @AlpineCoder réponse:
mon latests conclusions pourquoi l'ajout de valeurs factices ne marche pas
Quand je l'ai ajouter à mes paramètres.yml
#dummy values to avoid regeneration
database_name: dummyvalue
database_user: dummyvalue
database_password: dummyvalue
mailer_host: dummyvalue
mailer_user: dummyvalue
mailer_password: dummyvalue
secret: dummyvalue
De ne plus me demande de remplir ces valeurs, c'est grand, cependant, il régénère le fichier, suppression de tous mes valeurs personnalisées, me laissant avec cette
# This file is auto-generated during the composer install
parameters:
database_driver: pdo_mysql
database_host: 127.0.0.1
database_port: 3306
mailer_transport: smtp
locale: en
database_name: dummyvalue
database_user: dummyvalue
database_password: dummyvalue
mailer_host: dummyvalue
mailer_user: dummyvalue
mailer_password: dummyvalue
secret: dummyvalue
OriginalL'auteur blamb | 2015-02-18
Vous devez vous connecter pour publier un commentaire.
Vous avez deux options, soit de remplir vos paramètres.yml.dist ou vous pouvez aller à votre compositeur.fichier json et dans le post-mise à jour-cmd et post-install-cmd vous devriez voir quelque chose comme
si vous supprimez cette ligne, vos paramètres ne seront plus modifiés lorsque vous exécutez compositeur.
Si vous êtes à la collaboration avec d'autres personnes, la mise à jour de vos paramètres.yml.dist sera probablement la meilleure façon d'y aller même si, comme il aidera leur rappeler qu'ils doivent remplir de nouveaux paramètres lorsque de nouveaux sont introduits.
hmm, il se sent maladroit que je obtenir le prix de ce qui est l'un des plus consultés de questions sur la pile, mais aucun de mes commentaires ont d'ajouter de la valeur, en fonction de vote, et ma question n'est pas même obtenir des votes suivants. pas sûr de ce que cela signifie.. quelqu'un a un peu d'amour autour d'ici pour les bonnes questions et commentaires? Permet d'obtenir cette pile de travail ici pour nous 🙂
"mise à jour de votre
parameters.yml.dist
" est la réponse que je cherchais. Ce devrait être la première chose à mentionner.OriginalL'auteur Derick F
Si vous ajoutez les paramètres personnalisés (et par défaut /dummy valeur) à la
parameters.yml.dist
fichier, il ne devrait pas vous poser /remplacer vos valeurs personnalisées dans leparameters.yml
fichier.ok voir mes modifications, pourquoi cela n'a pas fonctionné pour moi
OriginalL'auteur AlpineCoder