Il s'agit de la réexécution de la commande qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks à l'aide de l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS
PROGRAMME:
Nom
rediffusion - lance des commandes et les redémarre sur les changements de système de fichiers
UTILISATION
réexécuter [options] [--] cmd
EXEMPLES
Par exemple, si vous exécutez une application Sinatra dont le fichier principal est app.rb:
relancer ruby app.rb
Si la première partie de la commande est un .rb nom de fichier, puis rubis est facultatif, donc ce qui précède
peut également être accompli comme ceci:
relancer app.rb
Rails ne remarque pas automatiquement toutes les modifications du fichier de configuration, vous pouvez donc le forcer à redémarrer
lorsque vous modifiez un fichier de configuration comme celui-ci :
relancer --dir config rails s
Ou si vous utilisez Thin pour exécuter une application Rack configurée dans config.ru mais que vous le souhaitez
sur le port 4000 et en mode débogage, et je veux seulement regarder le appli et web sous-répertoires :
relancer --dir app,web -- démarrage léger --debug --port=4000 -R config.ru
La -- consiste à séparer les options de réexécution des options cmd. Vous pouvez également utiliser une chaîne entre guillemets pour
la commande, par exemple
relancer --dir app "thin start --debug --port=4000 -R config.ru"
Rackup peut également être utilisé pour lancer un serveur Rack, alors essayons ceci :
relancer -- rackup --port 4000 config.ru
Vous voulez imiter l'autotest https://github.com/grosser/autotest? essayer
rerun -x râteau
or
relancer -cx rspec
Et si vous utilisez Spork https://github.com/sporkrb/spork avec Rails, vous devez redémarrer
votre serveur Spork https://github.com/sporkrb/spork/issues/201 chaque fois que certains Rails
les fichiers d'environnement changent, alors pourquoi ne pas le mettre dans votre Rakefile...
desc "exécuter spork (via rediffusion)"
tâche : spork faire
sh "rerun --pattern ´{Gemfile,Gemfile.lock,spec/spec_helper.rb,.rspec,spec/factories/**,config/environment.rb,config/environments/test.rb,config/initializers/*. rb,lib/**/*.rb}´ -- spork"
fin
et commencer à utiliser râteau sale lancer votre serveur Spork ?
(Si vous utilisez Guard au lieu de Rerun, consultez guard-spork
https://github.com/guard/guard-spork pour une solution similaire.)
Que diriez-vous de régénérer vos fichiers HTML après chaque modification de votre Erector
http://erector.rubyforge.org widgets ?
rerun -x érecteur --to-html mon_site.rb
Utiliser le cèdre Heroku ? rediffusion est désormais compatible avec chef d'équipe. Exécutez tous vos processus Procfile
localement et redémarrez-les tous si nécessaire.
relancer le contremaître
OPTIONS
-d, --rép
répertoire (ou répertoires) à surveiller (par défaut = "."). Séparez plusieurs chemins avec
´,´ et/ou utilisez plusieurs -d options.
-p, --modèle
glob pour correspondre à l'intérieur du répertoire. Cela utilise le style Ruby Dir glob -- voir
http://www.ruby-doc.org/core/classes/Dir.html# M002322 pour en savoir plus.
Par défaut, il surveille les fichiers se terminant par :
rb,js,css,café,scss,sass,erb,html,haml,ru,slim,md. En plus de cela, il a également
ignore les fichiers de points, .tmp fichiers et d'autres fichiers et répertoires (comme .va et
enregistrer). Cours rediffusion --Aidez-moi pour voir la liste actuelle.
-i, --ignorer modèle
glob de fichier à ignorer (peut être défini plusieurs fois). Pour ignorer un répertoire, vous devez ajouter
par exemple --ignorer couverture.
On top of --modèle et --ignorer, we ignorer tout change à fichiers et dirs starting
avec a point.
-s, --signal
utiliser le signal spécifié (au lieu du SIGTERM par défaut) pour terminer le précédent
traiter. Cela peut être utile pour forcer le processus respectif à se terminer comme
Aussi vite que possible. (--signal KILL est l'équivalent de tuer -9)
-h, --hup
lors du redémarrage, envoyer un signal SIGHUP au lieu d'essayer de terminer le processus
et lancez-en un nouveau. Cela suppose que le processus est capable de redémarrer de lui-même (comme
par exemple la licorne est).
-c, --dégager
effacer l'écran avant chaque course
-x, --sortir
attendez-vous à ce que le programme se termine. Avec cette option, rerun vérifie la valeur de retour ;
sans cela, rerun vérifie que le processus lancé est toujours en cours d'exécution.
-b, --Contexte
désactiver les commandes à la volée, permettant au processus d'être mis en arrière-plan
-n, --Nom
définir le nom de l'application (pour l'affichage)
Aussi --version et --Aidez-moi, naturellement.
À LA VOLÉE COMMANDES
Pendant la (ré)exécution de l'application, vous pouvez faire bouger les choses en appuyant sur les touches :
· r -- redémarrer (comme si un fichier avait changé)
· c - effacer l'écran
· x or q -- exit (comme control-C)
· p -- mettre en pause/reprendre la surveillance du système de fichiers
Si vous utilisez Pry ou un débogueur en arrière-plan, vous ne voudrez peut-être pas que ces clés soient
piégé, alors utilisez le --Contexte option.
SIGNAUX
L'algorithme actuel pour tuer le processus est :
· envoyer SIGTERM http://en.wikipedia.org/wiki/SIGTERM (ou la valeur du --signal
option)
· si cela ne fonctionne pas après 4 secondes, envoyez SIGINT (aka control-C)
· si cela ne fonctionne pas après 2 secondes supplémentaires, envoyez SIGKILL (aka kill -9)
Cela semble être la façon la plus douce et unique de faire les choses, mais cela signifie que si
votre programme ignore SIGTERM, il faut 4 à 6 secondes supplémentaires pour redémarrer.
août 2015 REDIFFUSION(1)
Utiliser la réexécution en ligne à l'aide des services onworks.net