I'm doing a graduation project where I'm supposed to automate the deploy cyclus within the company I'm working. The tool they want to use is Microsoft Release Management
.
However, when i look further into the features that Release Management has, it raises more questions than answers.
Some background information.
All the environments the company has are going to be moved to a data center and are going to run on virtual machines (VMware). They can use the tool vCloud
director to create and manage the VMs.
To keep things simple for now there are going to be four enviroments: 1 dev, 2 testing and 1 acceptence. The four environments are always running, so i suppose Release Management has no problem connecting to these server and I can make release templates without problems.
Now comes the tricky part. At the same time a deployment is done to the dev environment they want to create a new VM (with powershell scripts, some sort of copy of the dev) and do the same deploy to this environment. This script needs to communicate with a third-party tool or to the REST API that the hosting provider provides. I know the script needs to run within a server component in a release template. So i know 2 known workarounds for this. i can run this script in my release template when i deploy to the dev or i can use a dedicated server to run all the scripts, to create the new VM.
The thing is how can i deploy to this new environment without telling release management manually that there is a new server? This process needs to be completely automated.