Maintaining deployment pipelines for a production computing service using live pipeline templates

US2017177324A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2017177324-A1
Application numberUS-201514977115-A
CountryUS
Kind codeA1
Filing dateDec 21, 2015
Priority dateDec 21, 2015
Publication dateJun 22, 2017
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

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.

First claim

Opening claim text (preview).

1 . A computer-readable storage medium storing instructions, which, when executed on a processor, perform an operation for maintaining a deployment pipeline, the operation comprising: detecting a change in an instance of a live pipeline template (LPT), wherein the change is to one of a plurality of pipeline templates included in source code of the instance of the LPT, wherein at least a first one of the pipeline templates specializes at least a second one of the pipeline templates with instance specific parameters for the deployment pipeline, and wherein the second pipeline template specifies configuration parameters for at least one deployment stage of the deployment pipeline; generating, from the changed instance of the LPT, an application definition which provides a fully-specified configuration for a plurality of computing services included in the deployment pipeline; and invoking, for one or more of the computing services referenced in the application definition, a respective pipeline synthesis driver to modify a corresponding one of the computing services in a first cloud computing region according to the fully-specified configuration provided in the application definition. 2 . The computer-readable storage medium of claim 1 , wherein the operation further comprises: identifying a current configuration for each of the plurality of computing services included in the deployment pipeline; determining which of the one or more the computing services included in the deployment pipeline have a current configuration which differs from the fully-specified configuration provided in the application definition; and wherein invoking the respective pipeline synthesis driver to configure one of the computing services in the first cloud computing region comprises invoking the respective pipeline synthesis drivers corresponding to the determined one or more the computing services. 3 . The computer-readable storage medium of claim 1 , wherein the operation further comprises: invoking, for the one or more of the computing services referenced in the application definition, the respective pipeline synthesis driver to configure one of the computing services in a second cloud computing region according to the fully-specified configuration provided in the application definition. 4 . The computer-readable storage medium of claim 1 , wherein the instance specific parameters include at least one of a service name, an administrative contact, a run-as username for one of the computing services included in the deployment pipeline. 5 . The computer-readable storage medium of claim 1 , wherein the pipeline synthesis drivers include at least one of a pipeline driver, a deployment driver, a host driver, a network driver, a security driver, an identity and access management (IAM) driver, a performance monitor driver, and an alarm driver. 6 . The computer-readable storage medium of claim 1 , wherein the deployment pipeline is a continuous deployment pipeline used to deploy changes to one or more applications in a production computing service. 7 . A system, comprising: a processor; and a memory storing one or more applications, which when executed on the processor, perform an operation to manage a deployment pipeline used to deploy changes to a production computing service, the operation comprising: configuring a deployment pipeline by invoking, for each computing service referenced in an application definition modeling the deployment pipeline, a respective pipeline synthesis driver to configure a corresponding one of the computing services according to the fully-specified configuration provided in the application definition, and launching a meta-pipeline used to propagate updates to the deployment pipeline based at least on a detected change to an instance of a live pipeline template (LPT), wherein the instance of the LPT specializes one or more base pipelines templates with instance specific parameters for the deployment pipeline and wherein the application definition is generated from the changed LPT instance. 8 . The system of claim 7 , wherein a first one of the base pipeline templates specifies a set of configuration parameters for at least one deployment stage of the deployment pipeline. 9 . The system of claim 8 , wherein a second base pipeline template extends at least the first base pipeline template and wherein the second base pipeline template specifies requirements for the deployment pipeline which are associated with a production service type specified by the second base pipeline template. 10 . The system of claim 7 , wherein the meta-pipeline updates the deployment pipeline by: detecting the change to the instance of the LPT; generating, from the changed instance of the LPT, an updated application definition; and updating the deployment pipeline by invoking, for one or more of the computing services referenced in the updated application definition, a respective one of the pipeline synthesis drivers to configure a corresponding one of the computing services in the first cloud computing region according to the updated application definition. 11 . The system of claim 10 , wherein the pipeline synthesis drivers are invoked in an order determined to satisfy one or more service dependencies among the pipeline synthesis drivers. 12 . The system of claim 10 , wherein detecting the change to the instance of the LPT comprises monitoring a version control system for an updated version of the instance of the LPT committed to the version control system. 13 . The system of claim 7 , wherein the instance specific parameters include at least one of a service name, an administrative contact, a run-as username for one of the computing services included in the deployment pipeline. 14 . The system of claim 7 , wherein the pipeline synthesis drivers include at least one of a pipeline driver, a deployment driver, a host driver, a network driver, a security driver, an identity and access management (IAM) driver, a performance monitor driver, and an alarm driver. 15 . The system of claim 7 , wherein the application definition is formatted according to a structured interchange format. 16 . A computer-implemented method for updating a deployment pipeline used to deploy changes to a production computing service, the method comprising: detecting a change to source code of an instance of a live pipeline template (LPT) committed to a version control system; generating, from the changed source code of the instance of the LPT, an application definition which provides a fully-specified configuration for a plurality of computing services included in the deployment pipeline; and invoking, for one or more of the computing services referenced in the application definition, a respective pipeline synthesis driver in order to reconfigure a corresponding one of the computing services to conform to the fully-specified configuration provided in the application definition. 17 . The method of claim 16 , wherein the pipeline synthesis drivers include at least one of a pipeline driver, a deployment driver, a host driver, a network driver, a security driver, an identity and access management (IAM) driver, a performance monitor driver, and an alarm driver. 18 . The method of claim 16 , wherein the deployment pipeline is a continuous deployment pipeline used to propagate changes to the production computing service. 19 . The method of claim 16 , wherein the source code of the instance of the LPT includes at least a first pipeline template, wherein the first pipeline tem

Assignees

Inventors

Classifications

  • Customisation support for file systems, e.g. localisation, multi-language support, personalisation · CPC title

  • G06F8/65Primary

    Updates (security arrangements therefor G06F21/57) · CPC title

  • Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking · CPC title

  • involving the movement of software or configuration parameters  (network booting or remote initial program loading [RIPL] G06F9/4416) · CPC title

  • Version control (security arrangements therefor G06F21/57); Configuration management · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2017177324A1 cover?
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.
Who is the assignee on this patent?
Amazon Tech Inc
What technology area does this patent fall under?
Primary CPC classification G06F8/65. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Jun 22 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).