Vraag Bundler - laad meerdere Gemfiles


Gewoon nieuwsgierig als er een eenvoudige manier is om meer dan één Gemfile vanuit een Ruby-applicatie te laden.

Als je je (heel verstandig) afvraagt ​​waarom ik zo gek zou doen ...

De situatie is dat ik één meesterserver heb (die zijn eigen vereisten heeft) die, in implementatie, modules van om het even welk aantal andere wegen op de systemen kan laden, en elk pad, nu, heeft zijn eigen Gemfile voor de gemmen gebruikt door die module.

Op dit moment kom ik voorbij door het Gemfile van de server te bewerken om alle edelstenen op te nemen die door een van de modules worden gebruikt, en dat lijkt te werken, maar het is absoluut onelegant.


17
2017-11-01 05:21


oorsprong


antwoorden:


Een Gemfile is "gewoon Ruby". Je kunt zoeken naar andere Gemfiles die je nodig hebt en deze opnemen, als je wilt ...

Update: zie http://madebynathan.com/2010/10/19/how-to-use-bundler-with-plugins-extensions/


14
2017-11-02 22:38



Ik gebruik dit in mijn Gemfile:

if File.exists?('Gemfile.devel') then
  eval File.read('Gemfile.devel'), nil, 'Gemfile.devel'
end

Het laatste argument om te eval maakt uitzonderingen in Gemfile.devel verschijnen met de juiste bestandsnaam.


13
2018-01-03 19:25



Ik vond ook deze oplossing die gebruikt wordt eval_gemfile  http://gavinmorrice.com/blog/posts/32-how-to-load-one-gemfile-from-another-gemfile-in-ruby


3
2017-08-11 14:08



Als ik je vraag begrijp, capistrano is een bundler bewuste manier om implementatie te doen.


0
2017-11-02 21:44