Using virtual machines for development

Recently, I was given the role of a management or development environment, which includes:

  • Managing a version control system (subversion), in which we usually have one large branch, which is released every 6 months, a service branch, which is released every 2 months to fix errors that are not related to the main users, and a couple of branches related with bugs that just can't wait for a service release.
  • Manage our databases to have a development database for each code branch

We have not switched to using a version control system for a long time and had the following problems:

  • Developers who work in several branches at the same time can often develop against the wrong database (we have about 15 developers).
  • Lack of a decent strategy for managing the release of branches into production and distribution back to other industries.
  • Lack of a decent database management strategy associated with each branch (i.e. we must maintain a script that is aligned with the production environment, and then a script to bring each database user in line with the needs of the branch)

I was thinking of using a virtual machine for each code branch (that is, a virtual machine containing an Oracle Express database user, a Coldfusion administrator with the right settings for things like data sources, and development tools like IDE and Tortoise),

I was looking for any suggestions that could help someone solve any of these problems, since it is very difficult for me to manage the process. I understand that no company has the same setup, but I would welcome any help.

+4
source share
2 answers

I think the best solution for you might be to use the continuous integration that applies to your product life cycle strategy. You can read about it online:

I hope this helps you, but your question is quite difficult to answer, because there are many parameters that you always have to answer, from company to company, you should consider hiring a consultant to help you. He / she will have to come to your company and help you decide and implement.

+1
source

I would start by asking each of the developers why such an error occurs. If the developer recently made a mistake, ask them to explain how they did it and what might help them in the future. Also talk to developers who haven't made a mistake yet.

I assume that you have a server with Oracle and all kinds of options for working with db on it using different port numbers. In this case, you will create a new db instance for each branch, and the problem is how to help the developer create a context before starting working with the branch.

Tortoise SVN is a good tool, but perhaps this is a situation where it would be better to have some small application that does the check and remove the Turtle from the machines. A small application can contain a window floating on the screen showing the active branch, and can handle checkout and checkin, as well as monitor the correct port number.

0
source

Source: https://habr.com/ru/post/1338619/


All Articles