Versioning of pipeline templates for continuous delivery of services on datacenters configured in cloud platforms

US2022236976A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2022236976-A1
Application numberUS-202117157583-A
CountryUS
Kind codeA1
Filing dateJan 25, 2021
Priority dateJan 25, 2021
Publication dateJul 28, 2022
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.

Computing systems, for example, multi-tenant systems deploy software artifacts in data centers created in a cloud platform using a cloud platform infrastructure language that is cloud platform independent. The system receives pipeline templates including templating expressions that can be substituted with values for generating pipelines. A pipeline can be executed to perform a set of actions associated with continuous delivery of a software artifact. The system stores sets of partially hydrated pipeline templates. The partially hydrated pipeline templates can be compiled into executable pipelines associated with services configured on a datacenter of a cloud platform. The system stores different versions of pipeline templates as deployment packages. The system stores version pointers that identify specific deployment packages that are selected when a software release is deployed. The version pointers allow the deployment package to be updated in case of roll back or for deploying more recent changes.

First claim

Opening claim text (preview).

We claim: 1 . A computer implemented method for continuous delivery of software releases on cloud platforms, the method comprising: receiving, metadata describing a datacenter configured to execute services on a cloud platform, the metadata describing a hierarchy of datacenter entities; generating a plurality of deployment packages, wherein a deployment package represents a version of pipeline, wherein a pipeline template comprises (1) instructions to perform a set of actions associated with a software release on the cloud platform, and (2) one or more templating expressions representing placeholders for values; maintaining in association with the datacenter entity, one or more version pointers, wherein a version pointer represents a selected deployment package from the plurality of deployment packages; receiving a request for deploying a software artifact associated with the datacenter entity and a version pointer; identifying the deployment package represented by the version pointer; generating a set of pipelines based on the deployment package, wherein a pipeline represents a set of actions associated with continuous delivery of the software release on the cloud platform; and sending the generated set of pipelines for execution. 2 . The computer implemented method of claim 1 , wherein generating of a deployment package comprises: receiving a request for a system configuration change associated with the datacenter entity; generating a deployment package based on a plurality of pipeline templates associated with the system configuration change; and storing the deployment package. 3 . The computer implemented method of claim 1 , wherein generating of each deployment package comprising further comprises: creating a version identifier for deployment package, wherein the version pointer stores a version identifier of the selected deployment package. 4 . The computer implemented method of claim 1 , wherein the deployment package represented by the version pointer is a first deployment package, the request is the first request, the set of pipelines is a first set of pipelines, the method further comprising: modifying the version pointer to point at a second deployment package from the plurality of deployment packages; receiving a second request for deploying a second software release associated with the service; identifying the second deployment package represented by the version pointer; generating a second set of pipelines based on the second deployment package; and sending the second set of pipelines for execution. 5 . The computer implemented method of claim 3 , wherein the version pointer is modified in response to a request to roll back the service to a previous configuration. 6 . The computer implemented method of claim 1 , wherein the version pointer is a stable version pointer identifying a stable deployment package, further maintaining in association with the datacenter entity, a latest version pointer representing a deployment package comprising pipeline templates incorporating the latest system configuration change. 7 . The computer implemented method of claim 1 , wherein the request is the first request, wherein the first request is for deploying the software release on a first cloud platform, wherein the first set of pipelines is sent for execution on a pipeline execution engine of the first cloud platform, the method further comprising: receiving a second request for deploying the software release on a second cloud platform, wherein the second set of pipelines is sent for execution on a pipeline execution engine of the second cloud platform. 8 . The computer implemented method of claim 1 , wherein the request is the first request, wherein the first request is for deploying the software release on a first datacenter entity and the second request is for deploying the software release on a second datacenter entity. receiving a second request for deploying the software release on a second datacenter entity, wherein the execution of the second set of causes the software release to be deployed on the second datacenter entity. 9 . The computer implemented method of claim 1 , wherein the plurality of deployment packages is stored in a file system, wherein each deployment package comprises a set of pipeline templates stored in a directory. 10 . The computer implemented method of claim 1 , wherein a deployment package comprises a plurality of partially hydrated pipeline templates generated from the plurality of pipeline templates, wherein a partially hydrated pipeline template is generated by substituting one or more templating expressions of a pipeline template with actual values obtained from metadata describing the datacenter. 11 . The computer implemented method of claim 10 , wherein a pipeline template further comprises one or more templating expressions representing references to pipelines, wherein generating the set of pipelines based on the deployment package comprises: generating the set of pipelines from the plurality of partially hydrated pipeline templates, wherein a pipeline is generated from the partially hydrated pipeline template by substituting one or more templating expressions representing links with corresponding pipeline identifiers. 12 . The computer implemented method of claim 1 , wherein the datacenter comprises a hierarchy of data center entities, wherein each data center entity comprises (1) one or more services or (2) one or more other data center entities. 13 . The computer implemented method of claim 1 , wherein datacenter entity represents a service group that specifies a set of clusters of computing nodes, wherein one or more services are associated with a cluster of computing nodes, wherein the data center deployed on the target cloud platform includes the cluster of computing nodes and executes the services on the computing nodes as specified in the cloud platform independent declarative specification. 14 . The computer implemented method of claim 1 , further comprising: receiving, a cloud platform independent declarative specification of a data center, the cloud platform independent declarative specification configured to generate the data center on any of a plurality of cloud platforms and specified using a cloud platform infrastructure language. 15 . The computer implemented method of claim 14 , further comprising: compiling the cloud platform independent declarative specification to generate a cloud platform specific data center representation for creating the data center on the target cloud platform; and sending the cloud platform specific data center representation and a set of instructions for execution on the target cloud platform, wherein the target cloud platform executes the instructions to configure the data center using the cloud platform specific data center representation. 16 . The computer implemented method of claim 1 , further comprising: generating a dependency graph of pipeline templates, wherein the dependency graph comprises an edge representing a dependency from a source pipeline template to a target pipeline template if the source pipeline generated from the source pipeline template includes a link to a pipeline generated from the target pipeline template; and wherein the pipelines are generated from the pipeline templates in a reverse order of dependencies as indicated by the dependency graph. 17 . A non-transitory computer readable storage medium storing instructions that when executed by a computer processor cause the computer processor to execute steps of

Assignees

Inventors

Classifications

  • Discovery or management thereof, e.g. service location protocol [SLP] or web services · CPC title

  • G06F8/71Primary

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

  • Fat binaries · CPC title

  • G06F8/65Primary

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

  • Indicating network or usage conditions on the user display · 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 US2022236976A1 cover?
Computing systems, for example, multi-tenant systems deploy software artifacts in data centers created in a cloud platform using a cloud platform infrastructure language that is cloud platform independent. The system receives pipeline templates including templating expressions that can be substituted with values for generating pipelines. A pipeline can be executed to perform a set of actions as…
Who is the assignee on this patent?
Salesforce Com Inc
What technology area does this patent fall under?
Primary CPC classification G06F8/71. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Jul 28 2022 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 6 related publications on this page (citations in our corpus or others sharing the same primary CPC).