Re: [joindin-developers] Create a new Vagrant VM that will allow working on all projects

21 views
Skip to first unread message

Eric Hogue

unread,
May 18, 2013, 6:41:54 AM5/18/13
to joindin-d...@googlegroups.com
I thought about this more. I think the best option is to have the VM in a repo. Add the joind.in, joindin-api and joindin-web2 folder to .gitignore. Then have the users clone their fork in there. We should probably have a small script that would extract the user name from the VM repo, clone the 3 repo from his forks and add the upstream remote for the user. 

Any thought?


On Fri, May 17, 2013 at 8:42 AM, Eric Hogue <eric....@gmail.com> wrote:
With the API pulled out of the original site repository, the vagrant VMs don't work to well. 

I am looking at solutions for this and would like to have some feedback.

My first solution is to create a repo for the VM, then add the other repos as submodules. I see 2 potential issues with that. 

The first one is that some changes might be lost. According to the documentation (http://git-scm.com/book/en/Git-Tools-Submodules#Issues-with-Submodules), when doing  `git submodule update`, changes that are not in branches will be lost. I know we are suppose to always submit changes in branches, but I'm sure not everyone does. 

The second issue I see, is that the submodules would point to the main repos, not the developers forks. That looks like it would make it a pain to commit changes.

Another solution I see is to only create the vm. Then have the people do the clones by themselves inside the vagrant folder. That does not sound too friendly, but would probably works fine. 

And the last one I thought of is having people symlink their repo in the VM vagrants folder. Again, not to friendly. And it would not work in Windows. 

I'm going to think of it more and try to play with the submodule solution this weekend, but I would like to have feedback. Maybe someone has a better idea. 

Thank you
Eric Hogue

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

Lorna Mitchell

unread,
May 18, 2013, 12:54:41 PM5/18/13
to joindin-d...@googlegroups.com
This sounds like a very sound approach, and I definitely heard it suggested at the hackathon.  Chris Tankersley was giving this some thought so if you see "dragonmantank" in #joind.in on irc.freenode.net please raise the topic :)  Also I'm not sure we have everyone on the mailing list that's in the channel or vice versa, so if you're reading this, do join us in IRC.  If you use IRC, please do opposite announcement there.

I think the approach of the separate VM platform is a very good idea, and that we should only have one (all these apps run on a single live server so the platform requirements are the same).  How we get the correct repos cloned onto it for each user is a puzzle and your suggestion of asking them to fork them all first I think is as good an idea as I've heard so far - other suggestions welcome, though.

Looking forward to hearing what the others think - even if you think this is okay, can we at least send Eric a "+1" or something?

Thanks!!

Lorna


--
Lorna Mitchell
http://lornajane.net


Rob Allen

unread,
May 21, 2013, 8:57:20 AM5/21/13
to joindin-d...@googlegroups.com
On 18 May 2013, at 11:41, Eric Hogue <eric....@gmail.com> wrote:

I thought about this more. I think the best option is to have the VM in a repo. Add the joind.in, joindin-api and joindin-web2 folder to .gitignore. Then have the users clone their fork in there. We should probably have a small script that would extract the user name from the VM repo, clone the 3 repo from his forks and add the upstream remote for the user. 

Any thought?


I like this. 

One VM is logical and the least resource intensive which is good. I think that a script to set up the three source repositories makes sense too. 

Regards,

Rob...


Eric Hogue

unread,
Jun 11, 2013, 8:54:18 PM6/11/13
to joindin-d...@googlegroups.com
I moved the VM into a new repository. The VM is ready to be used. I would like if someone could test it and tell me if I need to fix anything, document it better or make it simpler to use. 

The vm is in the repo https://github.com/joindin/joindin-vm 

Thank you
Eric Hogue
Reply all
Reply to author
Forward
0 new messages