-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support for umbrella projects #1
Comments
Hi! First, thx for your interest in this piece of code. Now I need to admit I have zero experience with umbrella projects, so for here & now you seem to be more qualified to come up w/ any hints of how to do it correctly :) Also if you have some public and practical umbrella project, pls refer to it, it'd be better for me than inventing an artificial example when I'd find some time to tackle this. cheers |
I created a pull request from what I had hacked together locally. This works from what I have tested although I wonder if there is a more graceful way. But support for this seems to be lacking in Mix. I retrieve a list of projects using The Elixir Getting Started guide has a nice walktrough of Umbrella projects here. I also found 2 git repos that have example of umbrella projects: |
Thank you! :) It looks cool. Just merged into master. I will play with it over the weekend and then probably publish this change to hex. |
What is intended use of Reprise reloader here? In the umbrella project or in the subproject under umbrella? If it is the former case, If it's the latter case, Mix.Project.umbrella? returns false and your fix is not used. I'm reverting this commit from master. Do you have an actual example on how do you intend to use Reprise in umbrella projects and how does it work for you? :) cheers |
Closed for no information on what use case you actually had in mind. Thanks for the refactoring idea w/ |
The _build dir should not be empty. The umbrella compiles all it's sub applications into there before starting the app. |
I am building a rather large applications. It makes sense for me to split up to multiple Elixir apps inside a larger umbrella project. This is similar how Riak is built using riak_core, riak_cv, riak_pipe etc. Each sub-app is really useless on it's own but together they build a whole. They are compiled, run and used for a relase using the umbrella project that has no code of it's own. |
Well then, the umbrella app builds all the subapps in its own _build dir, that's sth I didn't have a chance to know :). Still I have only a rough idea how do you use Reprise in your umbrella app :) Does it go as a subapp or as a dep of a subapp? And so on, the further I go into the area which is new for me, the more questions. To cut off all those questions please provide a minimal example - I mean some public repo - of your umbrella app using Reprise - so it can be cloned and used as a test case. Sounds like you exactly know what you want to do with umbrella stuff - then you certainly can see that your knowledge is much more advanced than going through examples from Getting Started guide, which you proposed before. That will be much better and time-saving test case. |
ping! Meaning - could you clarify at least some of my questions? Then I'd add your code back and play with it a bit |
Sorry. Been busy with getting married and traveling. 😄 However it's pretty simple. There are 2 or more apps in the umbrella. And I would like to reload the code from all those sub-apps. Right now it will not work because Reprise loads data from Basically. All i want to do is to load compiled code from one or all apps in an umbrella. 😉 Is there a way of doing this that I'm missing? |
Noticed something that might be the source of some confusion..
Did you start the app in a app folder (ie. /apps/kv_server instead of /). |
Thanks for the response! I guess I will find a time to check what you said later in a week, now will have some business traveling next few days |
Jon, TIA |
It would be nice to support Umbrella projects somehow.
It currently does not work because Mix.Project.load_paths returns
[]
in umbrella projects:https://github.com/elixir-lang/elixir/blob/master/lib/mix/lib/mix/project.ex#L323
The text was updated successfully, but these errors were encountered: