Vertically integrated continuous delivery of an application
First Claim
1. A method for managing delivery of a software application over a network using a network computer that includes a hardware processor that executes software instructions that perform actions, comprising:
- providing change information to be used in the application to a delivery pipeline;
verifying the change information is suitable for use in the application based on at least a static analysis of the change information and at least one unit test of the change information;
if the change information is affirmatively verified, notifying at least one reviewer to approve the change information based on at least one review policy;
generating a new version of the application based on the change information;
performing acceptance testing on the new version of the application, wherein the acceptance testing includes performing one or more functional tests and smoke tests on the new version of the application at a union computing environment that is similar to a live computing environment, and wherein when these one or more tests are successful, provisioning resources in a separate rehearsal computing environment that is equivalent to the union computing environment and performing further functional tests and smoke tests;
if a result of the acceptance testing'"'"'s functional tests and smoke test are affirmative, enabling a shipping operation in the delivery pipeline for the new version of the application, wherein the delivery pipeline is paused until activation of the enabled shipping operation is approved by an authorized user; and
upon activation of the shipping operation, unpausing the delivery pipeline and deploying the new version of the application on at least one network computer in the live computing environment.
6 Assignments
0 Petitions
Accused Products
Abstract
Embodiment are directed towards managing application delivery over a network. Change information that corresponds to changes to an application may be provided to a delivery pipeline. The change information may be verified in part based on a static analysis of the content of the change information, compiling, and unit testing. Reviewers may be notified to approve the change information. A version of the application that includes the change information may be generated. Acceptance testing may be performed that includes provisioning computing resources in an acceptance computing environment. And, deploying a version of application that includes the change information into the acceptance computing environment. If the acceptance testing passes, a shipping operation may be enabled pausing the delivery pipeline until an authorized user activates the shipping operation restarting the delivery pipeline and deploying the application to one or more computing environments.
32 Citations
30 Claims
-
1. A method for managing delivery of a software application over a network using a network computer that includes a hardware processor that executes software instructions that perform actions, comprising:
-
providing change information to be used in the application to a delivery pipeline; verifying the change information is suitable for use in the application based on at least a static analysis of the change information and at least one unit test of the change information; if the change information is affirmatively verified, notifying at least one reviewer to approve the change information based on at least one review policy; generating a new version of the application based on the change information; performing acceptance testing on the new version of the application, wherein the acceptance testing includes performing one or more functional tests and smoke tests on the new version of the application at a union computing environment that is similar to a live computing environment, and wherein when these one or more tests are successful, provisioning resources in a separate rehearsal computing environment that is equivalent to the union computing environment and performing further functional tests and smoke tests; if a result of the acceptance testing'"'"'s functional tests and smoke test are affirmative, enabling a shipping operation in the delivery pipeline for the new version of the application, wherein the delivery pipeline is paused until activation of the enabled shipping operation is approved by an authorized user; and upon activation of the shipping operation, unpausing the delivery pipeline and deploying the new version of the application on at least one network computer in the live computing environment. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system that is arranged for managing delivery of an application over a network, comprising:
-
a network computer comprising; a transceiver that is operative to communicate over the network; a memory that is operative to store at least instructions; and a processor device that is operative to execute instructions that enable actions, including; providing change information to be used in the application to a delivery pipeline; verifying the change information is suitable for use in the application based on at least a static analysis of the change information and at least one unit test of the change information; if the change information is affirmatively verified, notifying at least one reviewer to approve the change information based on at least one review policy; generating a new version of the application based on the change information; performing acceptance testing on the new version of the application, wherein the acceptance testing includes performing one or more functional tests and smoke tests on the new version of the application at a union computing environment that is similar to a live computing environment, and wherein when these one or more tests are successful, provisioning resources in a separate rehearsal computing environment that is equivalent to the union computing environment and performing further functional tests and smoke tests; if a result of the acceptance testing is affirmative, enabling a shipping operation in the delivery pipeline for the new version of the application, wherein the delivery pipeline is paused until activation of the enabled shipping operation is approved by an authorized user; and upon activation of the shipping operation, unpausing the delivery pipeline and deploying the new version of the application on at least one network computer in the live computing environment; and a client computer, comprising; a transceiver that is operative to communicate over the network; a memory that is operative to store at least instructions; and a processor device that is operative to execute instructions that enable actions, including; providing the change information to the network computer. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A processor readable non-transitive storage media that includes instructions for managing delivery of an application over a network, wherein execution of the instructions by a processor device enables actions, comprising:
-
providing change information to be used in the application to a delivery pipeline; verifying the change information is suitable for use in the application based on at least a static analysis of the change information and at least one unit test of the change information; if the change information is affirmatively verified, notifying at least one reviewer to approve the change information based on at least one review policy; generating a new version of the application based on the change information; performing acceptance testing on the new version of the application, wherein the acceptance testing includes performing one or more functional tests and smoke tests on the new version of the application at a union computing environment that is similar to a live computing environment, and wherein when these one or more tests are successful, provisioning resources in a separate rehearsal computing environment that is equivalent to the union computing environment and performing further functional tests and smoke tests; if a result of the acceptance testing is affirmative, enabling a shipping operation in the delivery pipeline for the new version of the application, wherein the delivery pipeline is paused until activation of the enabled shipping operation is approved by an authorized user; and upon activation of the shipping operation, unpausing the delivery pipeline and deploying the new version of the application on at least one network computer in the live computing environment. - View Dependent Claims (18, 19, 20, 21, 22, 23)
-
-
24. A network computer that is operative for managing delivery of an application over a network using a network, comprising:
-
a transceiver that is operative to communicate over a network; a memory that is operative to store at least instructions; and a processor device that is operative to execute instructions that enable actions, including; providing change information to be used in the application to a delivery pipeline; verifying the change information is suitable for use in the application based on at least a static analysis of the change information and at least one unit test of the change information; if the change information is affirmatively verified, notifying at least one reviewer to approve the change information based on at least one review policy; generating a new version of the application based on the change information; performing acceptance testing on the new version of the application, wherein the acceptance testing includes performing one or more functional tests and smoke tests on the new version of the application at a union computing environment that is similar to a live computing environment, and wherein when these one or more tests are successful, provisioning resources in a separate rehearsal computing environment that is equivalent to the union computing environment and performing further functional tests and smoke tests; if a result of the acceptance testing is affirmative, enabling a shipping operation in the delivery pipeline for the new version of the application, wherein the delivery pipeline is paused until activation of the enabled shipping operation is approved by an authorized user; and upon activation of the shipping operation, unpausing the delivery pipeline and deploying the new version of the application on at least one network computer in the live computing environment. - View Dependent Claims (25, 26, 27, 28, 29, 30)
-
Specification