主权项 |
1. A system for automated provisioning of heterogeneous virtual environments, comprising:
a processor configured to: receive an application; build a plurality of environment templates, generated from customizations of a blueprint using an enterprise software client by an enterprise software vendor, the plurality of environment templates comprising: a set of virtual machine instantiations each with software components installed per rules dictated in the blueprint for the application, service configurations for the set of virtual machine instantiations, virtual machine cluster instantiations configured as a service, and a second environment template for a basic install for application testing purposes as development proceeds; receive a first environment template of the plurality of environment templates, the first environment template comprising: an application development environment for the application that does not use unnecessary resources on the heterogeneous virtual environment, and at least one content repository for storing software artifacts used by the application; system monitoring software for use in capturing state changes of the infrastructure and the content repository as time proceeds; verify the first environment template; receive an environment configuration from the enterprise software client, the environment configuration comprising: provisioning customizations of a first environment using the first environment template, one or more environment endpoints that define services in the heterogeneous virtual environment to interact with systems external to the first environment; provision the first environment using the first environment template and the environment configuration; request virtual hosting space from a virtual computing host; clone the set of virtual machine instantiations in the first environment template on a virtual computing host; create a unique content repository identifier for the content repository in the first environment template; configure the set of virtual machine instantiations using the environment configuration, install the system monitoring software on each virtual machine and install the interworking connections between the set of virtual machines instantiations and systems external to the heterogeneous virtual environment according to the environment endpoint; monitor automatically, the first environment, by the system monitoring software, for changes made to the infrastructure and content repository; capture the changes of the infrastructure and content repository by the system monitoring software; create a developed application based on the received application, wherein the application is created by an application developer on the first environment, and comprises: modifications made to the first environment wherein the modifications comprises changes to the infrastructure and content repository captured by the system monitoring software, software artifacts on the content repository, and the set of virtual machine instantiations in the first environment; wrap the developed application into an application package with application configurations necessary for deploying the developed application; provision a second environment using the second environment template; deploy the application package on the second environment, which is different than the first environment and provisioned from the second environment template of the plurality of environment templates. |