Architecture for incremental deployment
First Claim
1. A system for automatic deployment of code, the system comprising:
- a plurality of virtual instances;
a deployment proxy server; and
a deployment service including a memory and a processor configured to;
receive a set of software artifacts associated with an application executable by at least one virtual instance of the plurality of virtual instances;
determine a virtual instance deployment group that includes one or more virtual instances of the plurality of virtual instances, the set of software artifacts being applicable to the one or more virtual instances, the determination of the virtual instance deployment group based at least in part on an upload request;
send a notification to the one or more virtual instances belonging to the virtual instance deployment group, the notification informing the one or more virtual instances that the set of software artifacts is available for deployment;
store the set of software artifacts in a deployment repository; and
provide at least a subset of the set of software artifacts to the one or more virtual instances belonging to the virtual instance deployment group by at least;
providing the one or more virtual instances with a location of the set of software artifacts within the deployment repository; and
allowing the one or more virtual instances to retrieve the subset of the set of software artifacts from the deployment repository.
1 Assignment
0 Petitions
Accused Products
Abstract
A deploy service is provided to determine a set of software artifacts that needs to be transmitted to a target machine upon receiving an application deployment request from a user of a client device. For instance, the deploy service may compare versions of software artifacts on the target machine with the software artifacts of the application that the user desires to deploy to determine the set of software artifacts that needs to be transmitted. Instead of having to transmit the entire application, some embodiments transmit only a small portion that is reflective of what has been changed between the old version of the application and the new version of the application. This enables the transfer of large files across the Internet to be more efficient.
-
Citations
17 Claims
-
1. A system for automatic deployment of code, the system comprising:
-
a plurality of virtual instances; a deployment proxy server; and a deployment service including a memory and a processor configured to; receive a set of software artifacts associated with an application executable by at least one virtual instance of the plurality of virtual instances; determine a virtual instance deployment group that includes one or more virtual instances of the plurality of virtual instances, the set of software artifacts being applicable to the one or more virtual instances, the determination of the virtual instance deployment group based at least in part on an upload request; send a notification to the one or more virtual instances belonging to the virtual instance deployment group, the notification informing the one or more virtual instances that the set of software artifacts is available for deployment; store the set of software artifacts in a deployment repository; and provide at least a subset of the set of software artifacts to the one or more virtual instances belonging to the virtual instance deployment group by at least; providing the one or more virtual instances with a location of the set of software artifacts within the deployment repository; and allowing the one or more virtual instances to retrieve the subset of the set of software artifacts from the deployment repository. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer-implemented method for automatic deployment of code, the method comprising:
-
receiving an application bundle associated with an application executable by at least one virtual machine of a plurality of virtual machines; determining a virtual machine deployment group that includes one or more virtual machines of the plurality of virtual machines, the application bundle being applicable to the one or more virtual machines, the virtual machine deployment group determined based at least in part on an upload request; sending a notification to the one or more virtual machines belonging to the virtual machine deployment group, the notification informing the one or more virtual machines that the application bundle is ready for deployment; storing the application bundle in a deployment repository; and providing at least a portion of the application bundle to the one or more virtual machines belonging to the virtual machine deployment group by at least; providing the one or more virtual machines with a location of the application bundle within the deployment repository; and allowing the one or more virtual machines to retrieve at least the portion of the application bundle from the deployment repository. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. One or more non-transitory computer-readable storage devices for storing computer-executable instructions that, when executed by one or more computer systems, configure the one or more computer systems to perform operations for automatic deployment of code, the operations comprising:
-
sending a request to a proxy repository for a set of software artifacts associated with an application executable by at least one target machine of a plurality of target machines; in response to the request, receiving the set of software artifacts; determining, based at least in part on an upload request, a target machine deployment group that includes one or more target machines of the plurality of target machines, the set of software artifacts applicable to the one or more target machines; storing the set of software artifacts in a deployment repository; notifying the one or more target machines belonging to the target machine deployment group that the set of software artifacts is available for deployment in response to the set of software artifacts being stored in the deployment repository; and providing at least a subset of the set of software artifacts to the one or more target machines within the target machine deployment group, by at least; providing the one or more target machines with a location of the set of software artifacts within the deployment repository; and allowing the one or more target machines to access at least the subset of the set of software artifacts from the deployment repository. - View Dependent Claims (14, 15, 16, 17)
-
Specification