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

Add task to create development VM #21

Open
preaction opened this Issue Nov 17, 2017 · 0 comments

Comments

Projects
None yet
1 participant
@preaction
Member

preaction commented Nov 17, 2017

We should create a development VM to make development easier. This should be a new environment that sets up the machine to use git repository working trees to run the applications (auto-restarting whenever possible using morbo) instead of using the released modules.

This development VM should have all the main Git repositories (schema, backend, api, web) cloned to the user's home directory. It should also have runit service files to run the API and Web daemons, setting PERL5LIB to the appropriate Git repositories lib directories, and MOJO_HOME to the correct directory. Since it is running the daemons, it will need a MySQL and will need to deploy the Schema.

The development VM should also download some sample data. We need a Rex task to create this sample data set from the production database and store it somewhere accessible from the Internet (for now, on devel.cpantesters.org). Then we can download this sample data set when setting up the development VM.

The development VM should make the user's home directory inside the VM available outside the VM so that users can develop on their main machine and run tests inside the VM.

The MetaCPAN project has a MetaCPAN development VM, and it worked really well for me. This should make it a lot easier to contribute to this large and complex project.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment