Peering through the README and source code it certainly looks like a clean 
project. GVM looks to be more about installing various versions of a tool, 
managing them, and switching between those versions. This doesn't really 
make sense for Neo4j (at least how I am thinking about it) since there 
would be multiple installs of the same version of a Neo4j, such for testing 
purposes, a set of replicas, a set of shards, etc. I originally wrote it to 
make it easy to setup isolated servers for different "tenants".

However, I do think it would help if we defined the scope of what this tool 
should do:

At a minimum it should be able to:

- download a release
- list available releases
- cache releases for subsequent use (since they do not change)
- setup a new instance based on a release

Additional features could include:

- doing the same process for installing plugins to the instance (as Peter 
requested above)
    - I could imagine doing `ndm init foo --plugins=one,two,three` and it 
will setup a new instance with the latest versions and install the three 
plugins in the instance as well
- ability to auto-set the port in the neo4j-server.properties file to an 
unused port
- ability to auto-start the new instance (assuming the port has been 
changed)

The latter two features are getting into the server management space a bit, 
but I wanted to put them down nonetheless.

On Wednesday, December 25, 2013 5:47:32 AM UTC-5, Stefan Armbruster wrote:
>
> Folks in the groovy ecosystem use gvm (http://gvmtool.net/) for managing 
> multiple versions of groovy, gradle,grails and some more. That is 
> conceptually the same as neo4j-download-manager. Just wondering if it would 
> make sense to combine efforts here and maybe make neo4j a citizen in gvm.
>
> /Stefan
>
>
> 2013/12/24 <[email protected] <javascript:>>
>
>> Sounds like a good starting point.
>>
>>
>> On Tuesday, December 24, 2013 1:14:01 PM UTC-5, Peter Neubauer wrote:
>>
>>> Well, I think having .zip distributions of plugins would be the safest 
>>> bet. Maybe we can do one or two of them and just put them somewhere, might 
>>> be dropbox or github public URLs.
>>>
>>> /peter
>>>
>>>
>>> G:  neubauer.peter
>>> S:  peter.neubauer
>>> P:  +46 704 106975
>>> L:   http://www.linkedin.com/in/neubauer
>>> T:   @peterneubauer
>>>
>>> Neo4j 2.0.0              - 
>>> (graphs)-[:FOR]->(everyone)<http://blog.neo4j.org/2013/12/neo4j-20-ga-graphs-for-everyone.html>
>>> Do something useful - Teach your kids 1 hour code!<http://code.org/learn>
>>>  
>>>
>>> On Tue, Dec 24, 2013 at 2:34 PM, <[email protected]> wrote:
>>>
>>>> Thanks! Is there a central repository that plugins are typically 
>>>> downloaded from? Or are they just in different VCS repos?
>>>>
>>>> Also is it safe to rely on the stable Git tags for gathering a list of 
>>>> stable versions? I see Github releases is being used, however the latest 
>>>> stable (2.0.0) was not published so it's not appearing in the API output.
>>>>
>>>>
>>>> On Monday, December 23, 2013 2:39:02 PM UTC-5, Peter Neubauer wrote:
>>>>
>>>>> Very very cool Byron! 
>>>>>
>>>>> Would love to be able to install different versions, and different 
>>>>> plugins also. 
>>>>>
>>>>> /peter
>>>>>
>>>>>
>>>>> G:  neubauer.peter
>>>>> S:  peter.neubauer
>>>>> P:  +46 704 106975
>>>>> L:   http://www.linkedin.com/in/neubauer
>>>>> T:   @peterneubauer
>>>>>
>>>>> Neo4j 2.0.0              - 
>>>>> (graphs)-[:FOR]->(everyone)<http://blog.neo4j.org/2013/12/neo4j-20-ga-graphs-for-everyone.html>
>>>>> Do something useful - Teach your kids 1 hour code!<http://code.org/learn>
>>>>>  
>>>>>
>>>>> On Mon, Dec 23, 2013 at 3:21 PM, <[email protected]> wrote:
>>>>>
>>>>>>  I created a simple shell script for settings up new instances of 
>>>>>> Neo4j. It handles downloading and caching specific releases. Usage is 
>>>>>> `ndm 
>>>>>> 2.0.0 ./test1`. Details here https://github.com/bruth/
>>>>>> neo4j-download-manager
>>>>>>
>>>>>> This is a prototype, but my desire is to expand this (and rewrite it 
>>>>>> in a real language) to:
>>>>>>
>>>>>> - manage a list of environments by name with their version so quickly 
>>>>>> jump between instances
>>>>>> - support defining a custom port (or detecting an open one) for new 
>>>>>> instances by setting it in the properties file
>>>>>>
>>>>>> Let me know if anyone is interested in working on this.
>>>>>>
>>>>>> -- 
>>>>>> You received this message because you are subscribed to the Google 
>>>>>> Groups "Neo4j" group.
>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>> send an email to [email protected].
>>>>>>
>>>>>> For more options, visit https://groups.google.com/groups/opt_out.
>>>>>>
>>>>>
>>>>>  -- 
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "Neo4j" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to [email protected].
>>>> For more options, visit https://groups.google.com/groups/opt_out.
>>>>
>>>
>>>  -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Neo4j" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected] <javascript:>.
>> For more options, visit https://groups.google.com/groups/opt_out.
>>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Neo4j" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to