Automating Project Deployment Using PVCS

We use PVCS for version control for all of our code. We have 7 servers across the EU covering 17 countries. PVCS mimics our folder structure in production:

folderA
|
|--folderB
|     |
|     | -- folderC
|     |
|     | -- folder
| --folderD
|     |
|     | -- folderE
|     |
|     | -- folderF

      

Our projects can depend on files in multiple folders, so we can just copy one folder to deploy a new project. Also, one folder can contain several programs.

We have a DEV, UAT and Production server. The files will be developed on a DEV server, placed on a UAT (well, that's supposed to be part of the problem, too many human hands involved and some of them don't want to play ball), for user testing. When UATs are approved, they are returned to the PVCS with the appropriate version label and assigned the development level (they can be returned back to the PVCS earlier with the development version label).

When all the appropriate permissions have been met, the change management request is raised and the support team will deploy the code to production.

Our biggest problem is that the process is so shy that there are too many people who have to do certain things at certain times and tell people things in the right order.

We need a program that automates the deployment of projects. You will need to be able to assign different files from different folders in PVCS with a project shortcut, and then be able to promote that tag and expand all files as needed.

Does it exist?

I hope this made sense.

thank

John

EDIT:

We will be creating new projects all the time. The project will be associated with deployment. That is, project 1234 will have files 1,2,5,6, project 2345 will use files 2,5,8. Therefore, for this we need a quick and easy way to add and manage projects.

If someone can suggest a better way to handle this kind of automation, that would be great too.

We are not interested in compiling the code and testing as there are multiple languages ​​and I believe this will be out of our scope for now.

+1


source to share


3 answers


Check out nAnt and Cruise Control



edit With Cruise Control you can always write your own plugins to work better with your environment.

+2


source


PVC can be automated. The software development people in my organization have created a whole bunch of scripts to pair with PVCS. We use these scripts to automate the SW integration and release process.



For example, we have a script to create a Release, which means creating a new project with specific versions of files coming from many projects and databases. Sounds like what you want to do.

+2


source


To automate the deployment process, I had to create a tool using pcli and python. Where pcli script gets the code (using user tabs (Shortcuts)) and python to deploy to our servers.

Check pcli documentation located in VM_Install_Dir \ books \ vm \ vmbooks \ pcli.pdf

0


source







All Articles