Analyzing deployment pipelines used to update production computing services using a live pipeline template process
First Claim
Patent Images
1. A system, comprising:
- a processor; and
a memory storing one or more applications, which when executed on the processor, perform an operation to determine a current configuration state of a deployment pipeline used to propagate updates to a production computing service, the operation comprising;
identifying a plurality of computing services included in the deployment pipeline, for each identified computing service;
determining a current configuration state of a respective one of the computing services included in the deployment pipeline,generating a description of the current configuration state of the computing service, andgenerating, from the generated descriptions, a first application definition, wherein the first application definition provides a fully-specified configuration of the current operational state of the deployment pipeline;
determining, from the first application definition, a service type associated with the production computing service deployed using the deployment pipeline; and
determining, based on at least the determined service type, a live pipeline template to associate with the deployment pipeline, wherein the live pipeline template comprises source code for one or more base pipeline templates.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques are presented for managing a deployment pipeline using an inheritable and extensible source code template—generally referred to as a live pipeline template (LPT). As described, live pipeline templates may be used to manage deployment pipelines which, in turn, are used to launch, maintain, and update the services and systems used to host and provide computing services.
-
Citations
20 Claims
-
1. A system, comprising:
-
a processor; and a memory storing one or more applications, which when executed on the processor, perform an operation to determine a current configuration state of a deployment pipeline used to propagate updates to a production computing service, the operation comprising; identifying a plurality of computing services included in the deployment pipeline, for each identified computing service; determining a current configuration state of a respective one of the computing services included in the deployment pipeline, generating a description of the current configuration state of the computing service, and generating, from the generated descriptions, a first application definition, wherein the first application definition provides a fully-specified configuration of the current operational state of the deployment pipeline; determining, from the first application definition, a service type associated with the production computing service deployed using the deployment pipeline; and determining, based on at least the determined service type, a live pipeline template to associate with the deployment pipeline, wherein the live pipeline template comprises source code for one or more base pipeline templates. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer-implemented method for evaluating a deployment pipeline, the method comprising:
-
generating a first application definition by invoking a plurality of analysis drivers, wherein each of the plurality of analysis drivers inspects a configuration of a respective computing service included in a deployment pipeline, wherein the first application definition reflects a current configuration state of the deployment pipeline; receiving source code corresponding to a live pipeline template; generating, from the live pipeline template, a second application definition, wherein the second application definition describes a fully-specified configuration for a plurality of computing services used to provide a second deployment pipeline; and determining a set of differences between the first application definition and the second application definition; and generating a report describing the determined set of differences. - View Dependent Claims (12, 13)
-
-
14. A computer-readable storage medium storing instructions, which, when executed on a processor, perform an operation to determine a current configuration state of a deployment pipeline used to propagate updates to a production computing service, the operation comprising:
-
identifying a plurality of computing services included in the deployment pipeline;
for each identified computing service;determining a current configuration state of a respective one of the computing services included in the deployment pipeline, generating a description of the current configuration state of the computing service, and generating, from the generated descriptions, a first application definition, wherein the first application definition provides a fully-specified configuration of the current operational state of the deployment pipeline; determining, from the first application definition, a service type associated with the production computing service deployed using the deployment pipeline; and determining, based on at least the determined service type, a live pipeline template to associate with the deployment pipeline, wherein the live pipeline template comprises source code for one or more base pipeline templates. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification