Automated deployment of applications
First Claim
1. A non-transitory computer-readable storage medium having computer-executable instructions stored thereupon which, when executed by a computer, cause the computer to:
- perform a deployment of an application to a plurality of hosts by creating one or more new hosts, deploying the application to the one or more new hosts, adding the one or more new hosts to a deployment group, and removing one or more hosts from the deployment group;
maintain the removed hosts for a user-specified period of time following the deployment;
determine whether one or more user-defined failure conditions occurred during the user-specified period of time following the deployment; and
return the removed hosts to the deployment group and remove the new hosts from the deployment group, in response to determining that one or more user-defined failure conditions occurred during the user-specified period of time.
1 Assignment
0 Petitions
Accused Products
Abstract
Functionality is disclosed for automated deployment of applications. A network-based deployment service provides functionality for deploying software components to physical or virtual hosts in a service provider network and/or to hosts in other types of networks external to the service provider network. A user of the deployment service creates an application revision that includes deployable content and an application specification defining how the application is to be deployed and one or more lifecycle events. The application revision is then uploaded to a storage service, source code repository, or other location. A deployment configuration is also created that defines the location of the application revision, a deployment group, and a schedule for the deployment. A deployment agent executing on hosts in the deployment group obtains the application revision from the specified location, deploys the deployable content according to the schedule, and performs the lifecycle events.
49 Citations
20 Claims
-
1. A non-transitory computer-readable storage medium having computer-executable instructions stored thereupon which, when executed by a computer, cause the computer to:
-
perform a deployment of an application to a plurality of hosts by creating one or more new hosts, deploying the application to the one or more new hosts, adding the one or more new hosts to a deployment group, and removing one or more hosts from the deployment group; maintain the removed hosts for a user-specified period of time following the deployment; determine whether one or more user-defined failure conditions occurred during the user-specified period of time following the deployment; and return the removed hosts to the deployment group and remove the new hosts from the deployment group, in response to determining that one or more user-defined failure conditions occurred during the user-specified period of time. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. An apparatus for performing a deployment of an application to a plurality of hosts, the apparatus comprising:
-
a processor; and a non-transitory computer-readable storage medium having instructions stored thereupon which are executable by the processor and which, when executed, cause the apparatus to cause the deployment of the application to be performed by instantiating one or more new hosts, deploying the application to the one or more new hosts, adding the one or more new hosts to a deployment group, and removing one or more other hosts from the deployment group, maintain the removed hosts for a period of time following the deployment, determine whether one or more failure conditions occurred during the period of time following the deployment, and return the removed hosts to the deployment group and removing the new hosts from the deployment group. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computer-implemented method for deploying an application to hosts in a deployment group, the method comprising performing computer-implemented operations for:
-
performing the deployment of the application by causing one or more new hosts to be created, causing the application to be deployed to the one or more new hosts, adding the one or more new hosts to the deployment group, and removing one or more other hosts from the deployment group; maintaining the hosts removed from the deployment group for a period of time following the deployment; determining whether one or more failure conditions occurred during the period of time following the deployment; and returning the hosts removed from the deployment group back to the deployment group and removing the new hosts from the deployment group. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification