<div dir="ltr">Hi Kerry =)<div><br></div><div>Some of my colleagues at Pivotal Labs have <a href="https://www.google.co.uk/search?q=site%3Apivotallabs.com+rails+engines&rlz=1C5CHFA_enUS578US578&oq=site%3Apivotallabs.com+rails+engines&aqs=chrome..69i57j69i58.5271j0j7&sourceid=chrome&es_sm=91&ie=UTF-8">blogged</a> a fair amount on this Rails engines including shared dependencies, migrations and more. We also have an internal<a href="https://github.com/pivotal/pivotal-styles-sass"> live style guide</a> which is a Rails Engine (you can see the <a href="https://github.com/pivotal/pivotal-styles-sass/blob/master/lib/pivotal/sass.rb">secret sauce</a> here). There's a decent talk on the live style guide <a href="http://original.livestream.com/pivotallabs/video?clipId=pla_5a76d100-ea64-4552-9d44-15078c26ace5">aspect here</a> which might be relevant.</div><div><br></div><div>I think engines does make sense in some cases, but Rails doesn't make it easy for a developer to have a seamless experience as some of the blogs will discuss above.</div><div><br></div><div>On your first point, you could always use URL rewriting (via httpd/nginx) to send requests to different apps to keep them separate. Then using single sign on, and shared styles you might be able to achieve the desired result, and keep the applications isolated.</div><div><br></div><div>Robbie</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, May 19, 2015 at 10:10 AM, Alejandro Andres <span dir="ltr"><<a href="mailto:alej@redradix.com" target="_blank">alej@redradix.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">I've done something similar, sepparating the apps by subdomain, using the same rails app. That way you have a 'namespace' for each app (the subdomain). For shared data I had an api subdomain (but beware because then you'll have to use CORS)<div><br></div><div>Hope it helps :)</div></div><div class="gmail_extra"><br clear="all"><div><div><div dir="ltr"><div>-</div>Alejandro Andrés<div>Partner at <span style="background-color:rgb(255,255,255)"><a href="http://redradix.com/" target="_blank"><font>redradix.com</font></a></span></div></div></div></div>
<br><div class="gmail_quote"><div><div class="h5">On Tue, May 19, 2015 at 11:08 AM, Kerry Buckley <span dir="ltr"><<a href="mailto:kerryjbuckley@gmail.com" target="_blank">kerryjbuckley@gmail.com</a>></span> wrote:<br></div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="h5"><div dir="ltr">Hi LRUG,<div><br></div><div>I have a small Rails app used by a closed set of internal users, and am about to create another, for the same users (or at least an overlapping group). They've asked that the two apps (and potentially more over time) are presented as one integrated front end, rather than users having to visit multiple URLs, log in separately etc.</div><div><br></div><div>I'm wondering what the best approach to this is. I don't want to go to the extreme of a JS front end with the Rails apps just presenting JSON APIs, so the main options seem to be:</div><div><br></div><div>* Separate apps with matching layouts, and headers, with some kind of single sign-on</div><div>* One big app with namespaced routes, controllers etc to try and keep things vaguely separated</div><div>* Separate apps into Rails engines, mounted in a master app that manages sessions etc</div><div><br></div><div>I'm kind of leaning towards the third option, but I've never used Rails engines before, and I'm not 100% sure how that approach would work out. My main concern is acceptance/integration tests – it seems to me like they'd have to live in the wrapper app as most of them would rely on users, sessions etc.</div><div><br></div><div>Has anyone had experience of this kind of thing, and if so, which of the above approaches would you recommend (or discourage)? Is there a better solution I've missed? I'm about to start spiking something with engines to see how things fall together, but some opinions from someone who's done it in anger would be great!</div><div><br></div><div>Thanks,</div><div><br></div><div>Kerry</div></div>
<br></div></div>_______________________________________________<br>
Chat mailing list<br>
<a href="mailto:Chat@lists.lrug.org" target="_blank">Chat@lists.lrug.org</a><br>
Archives: <a href="http://lists.lrug.org/pipermail/chat-lrug.org" target="_blank">http://lists.lrug.org/pipermail/chat-lrug.org</a><br>
Manage your subscription: <a href="http://lists.lrug.org/options.cgi/chat-lrug.org" target="_blank">http://lists.lrug.org/options.cgi/chat-lrug.org</a><br>
List info: <a href="http://lists.lrug.org/listinfo.cgi/chat-lrug.org" target="_blank">http://lists.lrug.org/listinfo.cgi/chat-lrug.org</a><br>
<br></blockquote></div><br></div>
<br>_______________________________________________<br>
Chat mailing list<br>
<a href="mailto:Chat@lists.lrug.org">Chat@lists.lrug.org</a><br>
Archives: <a href="http://lists.lrug.org/pipermail/chat-lrug.org" target="_blank">http://lists.lrug.org/pipermail/chat-lrug.org</a><br>
Manage your subscription: <a href="http://lists.lrug.org/options.cgi/chat-lrug.org" target="_blank">http://lists.lrug.org/options.cgi/chat-lrug.org</a><br>
List info: <a href="http://lists.lrug.org/listinfo.cgi/chat-lrug.org" target="_blank">http://lists.lrug.org/listinfo.cgi/chat-lrug.org</a><br>
<br></blockquote></div><br></div>