Managing highly scalable continuous delivery pipelines
AssigneeOracle International Corporation
InventorDuncan Richard Mills
Life of this patent
Estimating the term…
Abstract
Systems and methods are provided for managing and tracking process pipelines and other flows in a way that reduces the requirement for a central controlling process to manage every step of the associated pipeline flow and the state associated with each running instance. Job information and pipeline state are tracked by each worker involved in the pipeline. This enables some key capabilities within these process pipelines such as dynamic process re-writing and cross security domain job execution.
Claims17
A method, comprising:
- sending, by a computing system operating in a first network, a job package to a first build worker that is being operated in a second network behind a firewall from the first network, the job package being sent in response to launching a build pipeline, the job package comprising a plan for the build pipeline, job information, and a pipeline blockchain that comprises pipeline configuration information and transaction state;
- receiving, by the computing system, first results of a first job in the build pipeline performed by the first build worker, the first build worker holding a first transactional record associated with the first results;
- receiving, by the computing system, second results of a second job in the build pipeline performed by a second build worker that is being operated in the second network behind the firewall from the first network, the second build worker holding a second transactional record associated with the second results, and both the first job and the second job being performed according to the configuration information and the transaction state;
- updating, by the computing system, the pipeline blockchain with the second results of the second job performed by the second build worker;
- and
- updating, by the computing system, the first transactional record held by the first build worker based at least in part on the updated pipeline blockchain.
A non-transitory computer-readable medium storing computer-executable code that, when executed by a processor of a computing system operating in a first network, cause the processor to perform operations comprising:
- sending a job package to a first build worker that is being operated in a second network behind a firewall from the first network, the job package being sent in response to launching a build pipeline, the job package comprising a plan for the build pipeline, job information, and a pipeline blockchain that comprises pipeline configuration information and transaction state;
- receiving first results of a first job in the build pipeline performed by the first build worker, the first build worker holding a first transactional record associated with the first results;
- receiving second results of a second job in the build pipeline performed by a second build worker that is being operated in the second network behind the firewall from the first network, the second build worker holding a second transactional record associated with the second results, and both the first job and the second job being performed according to the configuration information and the transaction state;
- updating the pipeline blockchain with the second results of the second job performed by the second build worker;
- and
- updating the first transactional record held by the first build worker based at least in part on the updated pipeline blockchain.
A computing system operating in a first network, comprising:
- a processor;
- and
- a memory storing instructions that, when executed by the processor, cause the processor to:
- send a job package to a first build worker that is being operated in a second network behind a firewall from the first network, the job package being sent in response to launching a build pipeline, the job package comprising a plan for the build pipeline, job information, and a pipeline blockchain that comprises pipeline configuration information and transaction state;
- receive first results of a first job in the build pipeline performed by the first build worker, the first build worker holding a first transactional record associated with the first results;
- receive second results of a second job in the build pipeline performed by a second build worker that is being operated in the second network behind the firewall from the first network, the second build worker holding a second transactional record associated with the second results,. and both the first job and the second job being performed according to the configuration information and the transaction state;
- update the pipeline blockchain with the second results of the second job performed by the second build worker;
- and
- update the first transactional record held by the first build worker based at least in part on the updated pipeline blockchain.
Dependencies are inferred from the claim text.