IP Library Granted Patent US 11,989,539
Granted Patent B2
US 11,989,539 · App. 17/845,585 · Granted May 21, 2024

Continuous integration and deployment system time-based management

Inventors: Arie Bregman (Gan Yavne, IL); Avraham Avi Talmor (Rishon Leziyon, IL)
Assignee: Red Hat, Inc.
G06F8/60G06F8/311
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,989,539
App. No.
17/845,585
Granted
May 21, 2024
Kind
B2
Abstract

Systems and methods for managing components of the CI/CD system in view of time-based records associated with the components. An example method comprises retrieving a plurality of records generated by a plurality of components of a continuous integration and continuous delivery/deployment (CI/CD) system; receiving a time value; identifying, in view of the plurality of records, at least one component of the plurality of components that has been executed at the time value; and performing an action on the at least one component.

Claims (43)

1. A method comprising:

generating, for each execution of a component of a plurality of components of a continuous integration and continuous delivery/deployment (CI/CD) system, a record with a corresponding time-stamp associated with the execution of the component;

storing, in a storage device, the record, wherein the storage device stores a plurality of records;

receiving, in response to an external component experiencing a downtime, a time value associated with a period of time in which the external component experienced downtime, wherein the external component is one of: a plugin, a file server, or an application programming interface;

in response to receiving an action command causing an action associated with the action command to be performed on, in view of the plurality of records, at least one component of the plurality of components executed at the time value.

2. The method of claim 1 , wherein the action command is one of: a re-execute command, revert command, remove command, or update command.

3. The method of claim 1 , wherein the time value is one of: a specific time or a range of time.

4. The method of claim 1 , wherein identifying, in view of the plurality of records, the at least one component that has been executed at the time value comprises:

traversing each record of the plurality of records between a start time of the time value and an end time of the time value to identify each component that produced a respective record; and

generating a list of identified components associated with each identified component.

5. The method of claim 4 , further comprising:

receiving at least one filtering criteria; and

filtering, based on the at least one filtering criteria, the list of components.

6. The method of claim 5 , wherein the filtering criteria is a type of component.

7. The method of claim 6 , wherein the type of components is at least one of: a pipeline, a plugin, a test, a release, and a user group.

8. A system comprising:

a memory; and

a processing device, operatively coupled to the memory, to perform operations comprising:

generating, for each execution of a component of a plurality of components of a continuous integration and continuous delivery/deployment (CI/CD) system, a record with a corresponding time-stamp associated with the execution of the component;

storing, in a storage device, the record, wherein the storage device stores a plurality of records;

receiving, in response to an external component experiencing a downtime, a time value associated with a period of time in which the external component experienced downtime, wherein the external component is one of: a plugin, a file server, or an application programming interface;

in response to receiving an action command causing an action associated with the action command to be performed on, in view of the plurality of records, at least one component of the plurality of components executed at the time value.

9. The system of claim 8 , wherein the action command is one of: a re-execute, revert, remove, update.

10. The system of claim 8 , wherein the time value is one of: a specific time or a range of time.

11. The system of claim 8 , wherein identifying, in view of the plurality of records, the at least one component that has been executed at the time value comprises:

traversing each record of the plurality of records between a start time of the time value and an end time of the time value to identify each component that produced a respective record; and

generating a list of identified components associated with each identified component.

12. The system of claim 11 , further comprising:

receiving at least one filtering criteria; and

filtering, based on the at least one filtering criteria, the list of components.

13. The system of claim 12 , wherein the filtering criteria is a type of component.

14. The system of claim 13 , wherein the type of components is at least one of: a pipeline, a plugin, a test, a release, and a user group.

15. A non-transitory computer-readable storage medium comprising instructions that, when executed by a processing device, cause the processing device to perform operations comprising:

generating, for each execution of a pipeline of a plurality of pipelines of a continuous integration and continuous delivery/deployment (CI/CD) system, a record with a corresponding time-stamp associated with the execution of the pipeline;

storing, in a storage device, the record, wherein the storage device stores a plurality of records;

receiving, in response to an external component experiencing a downtime, a time value associated with a period of time in which the external component experienced downtime, wherein the external component is one of: a plugin, a file server, or an application programming interface;

in response to receiving a re-execute command re-executing, in view of the plurality of records, at least one pipeline of the plurality of pipelines executed at the time value.

16. The non-transitory computer-readable storage medium of claim 15 , wherein identifying, in view of the plurality of records, the pipeline of the plurality of pipelines that has been executed at the time value comprises:

traversing each record of the plurality of records between a start time of the time value and an end time of the time value to identify each pipeline of the plurality of pipelines that produced a respective record; and

generating a list of identified pipelines associated with each identified pipeline of the plurality of pipelines.

17. The non-transitory computer-readable storage medium of claim 16 , causing the processing device to perform operations further comprising:

receiving at least one filtering criteria; and

filtering, based on the at least one filtering criteria, the list of identified pipelines.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2022
From: BREGMAN, ARIE; TALMOR, AVRAHAM AVI
To: RED HAT, INC.
Reel/Frame 060266/0734 →
Continuity (1)
Related Publication 20230409305A1 · Dec 21, 2023
Cited By (1)
US 12,417,090