2016-04-06 2 views
0

Private pub gem nécessite un serveur Faye supplémentaire pour gérer les files d'attente de messages. Il est démarré en parallèle au serveur rails avec commande: rackup private_pub.ru -s thin -E productionTravis CI. Comment faire passer les spécifications qui utilisent le serveur Faye?

Ce serveur est également nécessaire pour que certaines spécifications passent. Donc j'inclure son ordre de démarrage dans .travis.yml:

language: ruby 
services: 
    - postgresql 
    - rack 

before_script: 
    - rackup private_pub.ru -s thin -E production 
    - cp config/database.yml.travis config/database.yml 
    - psql -c 'create database travis_ci_test;' -U postgres 

mais lors de la construction de cette commande génère l'erreur:

0.00s$ rackup private_pub.ru -s thin -E production 
/home/travis/build.sh: line 45: rackup: command not found 
The command "rackup private_pub.ru -s thin -E production" failed and exited with 127 during . 

Qu'est-ce que je fais mal?

Répondre

1

La commande de rackup n'est pas trouvée. Vous voulez exécuter rackup en utilisant exec Bundler comme celui-ci (rack en supposant, etc. est dans votre Gemfile):

before_script: 
    - bundle exec rackup private_pub.ru -s thin -E production & 

En utilisant exec bundle utilise ce qui est dans votre Gemfile au lieu de ce qui est sur le système (dans ce cas, ce n'est pas sur le système, donc vous obtenez une erreur). Voici un bon lien qui explique un peu plus sur l'exec rack et bundle: https://robots.thoughtbot.com/but-i-dont-want-to-bundle-exec

Sur Travis, vous n'avez pas non plus besoin d'ajouter un rack aux services, il suffit de l'avoir dans votre Gemfile. :)

+0

Presque travaillé) Ce processus a démarré et bloqué la génération. Comment pourrais-je l'extraire du processus de construction principal, car il devrait être exécuté en parallèle pour recevoir et envoyer des messages websocket? –

+0

Je pensais que je l'ai trouvé - je dois ajouter et à la fin de la ligne de commande: - bundle exec rackup private_pub.ru -s mince -E production & –

+1

Hey! Totalement oublié cela et, désolé à ce sujet! J'ai édité la réponse pour les futurs utilisateurs. :) – sinthetix