DevOps Declarative Domain Based Pipelines
Abstract
The present invention extends configuring development and operations pipelines. A pipeline manager can form and manage pipelines that span any combination of: public cloud resources, private cloud resources, user on-premise resources, etc., in accordance with appropriate (cloud and/or on-premise) profile information. The pipeline manager can (re)configure a pipeline as appropriate to address alterations to workflows, upgrades to DevOps tools, removal of functionality from a workflow, etc. A pipeline framework enables customers to build no-code pipelines for various use cases in a plug and play manner (Software engineering and SDLC pipelines, Salesforce CI/CD pipelines, AI/ML, SaaS applications, Infrastructure as a code (IaC), etc). The pipeline framework enables users to integrate collaboration tools, notifications, and approval gates offering thresholds at each and every step. In addition, the pipeline framework captures logs and provides a summary via livestream and also upon completion of each pipeline activity and after each pipeline.
Claims
exact text as granted — not AI-modifiedWhat is claimed:
1 . A DevOps pipeline orchestration method comprising:
accessing a user specified workflow defining a DevOps pipeline including declaring first policy conditions associated with a first DevOps pipeline stage designated to run at a first computing location and declaring second policy conditions associated with a second DevOps pipeline stage designated to run at a second at a second computing location; orchestrating the DevOps pipeline including orchestrating DevOps tools along with one or more of: source code, executable images, data, containers, and configuration between DevOps pipeline stages, including:
configuring the first DevOps pipeline stage at the first computing location;
configuring the second DevOps pipeline stage at the second computing location;
connecting and chaining first DevOps pipeline stage output to second DevOps pipeline stage input;
executing the first DevOps pipeline stage at the first computing location, including:
accessing first pipeline stage input data;
operating the first DevOps pipeline stage transforming the first pipeline stage input data into first pipeline stage output data;
deriving first stage operational data associated with operating the first DevOps pipeline stage;
logging the first stage operational data;
determining that the first operational data satisfies the first policy conditions; and
notifying a party that the first policy conditions are satisfied;
receiving approval from the party to transition to a next pipeline stage;
in response to the approval, executing the second DevOps pipeline stage at the second computing location, including:
accessing the first pipeline stage output data;
utilizing at least a portion of the first pipeline stage output data as second pipeline stage input data;
operating the second DevOps pipeline stage transforming the second pipeline stage input data into second pipeline stage output data;
deriving second stage operational data associated with operating the second DevOps pipeline stage;
logging the second stage operational data;
determining whether the second operational data does or does not satisfy the second policy conditions; and
notifying another party of the determination; and
proceeding to a next pipeline activity based on the determination.
2 . The method of claim 1 , wherein the user specified workflow defining a DevOps pipeline comprises the user specified workflow declaring third policy conditions associated with a third DevOps pipeline stage designated to run at a third computing location; and
wherein orchestrating the DevOps pipeline further comprises:
configuring the third DevOps pipeline stage at the third computing location; and
executing the third DevOps pipeline stage at the third computing location in parallel with executing the second DevOps pipeline stage at the second computing location.
3 . The method of claim 2 , further comprising connecting and chaining the first DevOps pipeline stage output to third DevOps pipeline stage input; and
wherein executing the third DevOps pipeline stage at the third computing location comprises:
accessing the first pipeline stage output data; and
utilizing at least another portion of the first pipeline stage output data as third pipeline stage input data.
4 . The method of claim 1 , wherein executing the first DevOps pipeline stage at the first computing location comprises executing the first DevOps pipeline stage in a first cloud;
wherein executing the second DevOps pipeline stage at the second computing location comprises executing the second DevOps pipeline stage in a second cloud, the second cloud differing from the first cloud; wherein orchestrating the DevOps pipeline comprises orchestrating the DevOps pipeline spanning the first cloud and the second cloud; and wherein connecting and chaining first DevOps pipeline stage output to second DevOps pipeline stage input comprises connecting and chaining computing resources of the first cloud to computing resources of the second cloud.
5 . The method of claim 1 , wherein executing the first DevOps pipeline stage at the first computing location comprises executing the first DevOps pipeline stage in a cloud;
wherein executing the second DevOps pipeline stage at the second computing location comprises executing the second DevOps pipeline stage in user on-premise resources; wherein orchestrating the DevOps pipeline comprises orchestrating the DevOps pipeline spanning the cloud and the user on-premise resources; and wherein connecting and chaining first DevOps pipeline stage output to second DevOps pipeline stage input comprises connecting and chaining computing resources of the cloud to the user on-premise resources.
6 . The method of claim 1 , wherein accessing a user specified workflow declaring first policy conditions associated with a first DevOps pipeline stage comprises accessing a user specified workflow declaring first policy conditions associated with a first DevOps tool; and
wherein executing the first DevOps pipeline stage at the first computing location comprises executing the first DevOps tool at the first computing location.
7 . The method of claim 1 , wherein accessing a user specified workflow comprises accessing a user selected pipeline template.
8 . The method of claim 7 , wherein accessing a user selected pipeline template comprises accessing a pipeline template selected from among for one of: a software development pipeline, a data pipeline, a machine learning pipeline, an artificial intelligence pipeline, a salesforce pipeline, a service now developer pipeline, a pega pipeline, a database (DB) deployment, or any type of package deployment.
9 . The method of claim 8 , wherein accessing a pipeline template comprises accessing a pipeline template defining orchestration of data, configuration, code, and images between Software as a Service (SaaS) applications.
10 . The method of claim 1 , orchestrating the DevOps pipeline comprises building a workflow to implement the first policy conditions and the second policy conditions based on the user specified workflow; and
wherein orchestrating the DevOps pipeline comprises executing the DevOps pipeline in accordance with one of: a JSON modification, a schedule, or a manually entered command.
11 . The method of claim 10 , wherein executing the DevOps pipeline comprises executing the DevOps pipeline in accordance with a manually entered command received via one of: a command line, an Integrated Development Environment (IDE), an Application Program Interface (API), or a YAML file.
12 . The method of claim 1 , wherein the user specified workflow defining a DevOps pipeline comprises the user specified workflow declaring a user approval requirement between the first pipeline stage and the second pipeline stage; and
wherein notifying a party that the first policy conditions are satisfied comprises notifying the party in accordance with the user approval requirement; and wherein receiving approval from the party comprises receiving approval via one of: a messaging system, an electronic mail message, text messaging, or an Information Technology System Management (ITSM) tool.
13 . The method of claim 1 , wherein logging the first operational data comprises forming a console log and an activity log from the operational data; and
further comprising streaming the console log and the activity log to the party in real-time.
14 . The method of claim 1 , wherein the user specified workflow declaring first policy conditions associated with a first DevOps pipeline comprises the user specified workflow declaring one or more of: security conditions, quality conditions, compliance conditions, or custom thresholds associated with the first pipeline stage; and
wherein determining that the first operational data satisfies the first policy conditions comprises determining that the first operational data satisfies the one or more of: the security conditions, the quality conditions, the compliance conditions, or the custom thresholds.
15 . The method of claim 1 , wherein accessing a user specified workflow comprises adding a DevOps tool to the user specified workflow from a tool registry using a drag and drop technique or plug and play technique.
16 . The method of claim 1 , wherein determining whether the second operational data does or does not satisfy the second policy conditions comprises determining that the second operational data is non-compliant with the second policy conditions;
wherein notifying another party of the second determination comprises notifying the other party that the second operational data does not satisfy the second policy conditions; and wherein proceeding to a next pipeline activity based on the second determination comprises altering the user specified workflow to address the non-compliance.
17 . The method of claim 1 , wherein executing the first DevOps pipeline stage comprises executing a first microservice;
wherein executing the second DevOps pipeline stage comprises executing a second microservice; and wherein connecting and chaining first DevOps pipeline stage output to second DevOps pipeline stage input comprises connecting and chaining the first microservice to the second microservice.
18 . The method of claim 1 , further comprising deploying one or more of: the source code, the data, or the configuration according to a deployment strategy, deployment options, and deployment gates.
19 . The method of claim 1 , wherein accessing a user specified workflow comprises accessing a user specified workflow that defines tool actions for the DevOps tools.
20 . A system comprising:
a processor; system memory coupled to the processor and storing instructions configured to cause the processor to: access a user specified workflow defining a DevOps pipeline including declaring first policy conditions associated with a first DevOps pipeline stage designated to run at a first computing location and declaring second policy conditions associated with a second DevOps pipeline stage designated to run at a second at a second computing location; orchestrate the DevOps pipeline including orchestrating DevOps tools along with one or more of: source code, executable images, data, containers, and configuration between DevOps pipeline stages, including:
configure the first DevOps pipeline stage at the first computing location;
configure the second DevOps pipeline stage at the second computing location;
connect and chain first DevOps pipeline stage output to second DevOps pipeline stage input;
execute the first DevOps pipeline stage at the first computing location, including:
access first pipeline stage input data;
operate the first DevOps pipeline stage transforming the first pipeline stage input data into first pipeline stage output data;
derive first stage operational data associated with operating the first DevOps pipeline stage;
log the first stage operational data;
determine that the first operational data satisfies the first policy conditions; and
notify a party that the first policy conditions are satisfied;
receiving approval from the party to transition to a next pipeline stage;
in response to the approval, execute the second DevOps pipeline stage at the second computing location, including:
access the first pipeline stage output data;
utilize at least a portion of the first pipeline stage output data as second pipeline stage input data;
operate the second DevOps pipeline stage transforming the second pipeline stage input data into second pipeline stage output data;
derive second stage operational data associated with operating the second DevOps pipeline stage;
log the second stage operational data;
determine whether the second operational data does or does not satisfy the second policy conditions; and
notify another party of the determination; and
proceeding to a next pipeline activity based on the determination.Join the waitlist — get patent alerts
Track US2022121477A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.