IP Library › Granted Patent US 12,585,543
Granted Patent B2
US 12,585,543 · App. 18/595,514 · Granted Mar 24, 2026

Code commit facility for a continuous integration continuous deployment system

Inventors: Jeremy R. Fox (Georgetown, TX); Laurentiu Gabriel Ghergu (Bucharest, RO); Logan Bailey (Atlanta, GA); Zachary A. Silverstein (Georgetown, TX)
Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
G06F11/1433G06F8/65G06F8/71G06F11/0766
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 12,585,543
App. No.
18/595,514
Granted
Mar 24, 2026
Kind
B2
Abstract

A code commit facility is provided operatively coupled to a continuous integration continuous deployment system to assist in addressing a failing code change during updating of a software application. The code commit facility includes generating discrete code change packages from the failing code change by separating independent code change files of the failing code change into the discrete code change packages. Further, the code commit facility deploys the discrete code change packages and based on the deploying, detects a failing discrete code change package. Based on detecting the failing discrete code change package, the code commit facility rolls back one or more code change files of the failing package, absent rolling back one or more other code change files of one or more other discrete code change packages to restructure the failing code change for deployment using the continuous integration continuous deployment system.

Claims (47)

1 . A computer-implemented method of facilitating processing within a computing environment, the computer-implemented method comprising:

operatively coupling a code commit facility to a continuous integration continuous deployment system, the code commit facility assisting in addressing a failing code change during updating of a software application by the continuous integration continuous deployment system, the code commit facility comprising:

generating discrete code change packages from the failing code change, the generating of the discrete code change packages including separating independent code change files of the failing code change into the discrete code change packages;

deploying the discrete code change packages in a target environment using the continuous integration continuous deployment system;

based on the deploying in the target environment, detecting a failing discrete code change package of the discrete code change packages; and

rolling back, based on detecting the failing discrete code change package, one or more code change files of the failing discrete code change package absent rolling back one or more other code change files of one or more other discrete code change packages to restructure the failing code change for deployment using the continuous integration continuous deployment system.

2 . The computer-implemented method of claim 1 , wherein the code commit facility further comprises, based on initiating a build and deploy process within the continuous integration continuous deployment system for a code change, determining presence of the failing code change in the target environment.

3 . The computer-implemented method of claim 2 , wherein the code commit facility further comprises training a machine learning model to facilitate detecting failing code changes, and wherein the determining includes using the machine learning model in detecting the failing code change.

4 . The computer-implemented method of claim 2 , wherein the code commit facility further comprises, based on determining presence of the failing code change, deploying a prior code change with a prior code change version number from a code change version number of the failing code change, and based, at least in part, on the deploying of the prior code change also failing, signaling a build system issue with the continuous integration continuous deployment system.

5 . The computer-implemented method of claim 2 , wherein the code commit facility further comprises ascertaining, based on determining presence of the failing code change, a set of code change files of the failing code change, and wherein the separating independent code change files is based on the ascertained set of code change files of the failing code change.

6 . The computer implemented method of claim 5 , wherein ascertaining the set of code change files of the failing code change comprises using a history view of a particular software application branch of the code change, the history view being obtained from a version control facility of the continuous integration continuous deployment system.

7 . The computer-implemented method of claim 1 , wherein the detecting further comprises evaluating the discrete code change package deployments to the target environment and ascertaining therefrom the failing discrete code change package of the discrete code change packages.

8 . The computer-implemented method of claim 1 , wherein the code commit facility further comprises analyzing, via data analysis, the failing code change and generating a report on the failing code change based on the data analysis.

9 . The computer-implemented method of claim 1 , wherein at least one of the generating, deploying, detecting and rolling back is implemented as a robotic process automation-based add-on for the continuous integration continuous deployment system.

10 . A computer program product for facilitating processing within a computing environment, the computer program product comprising:

a set of one or more computer readable storage media; and

program instructions, collectively stored in the set of one or more readable storage media, for causing at least one processor set to perform computer operations comprising:

operatively coupling a code commit facility to a continuous integration continuous deployment system, the code commit facility assisting in addressing a failing code change during updating of a software application by the continuous integration continuous deployment system, the code commit facility comprising:

generating discrete code change packages from the failing code change, the generating of the discrete code change packages including separating independent code change files of the failing code change into the discrete code change packages;

deploying the discrete code change packages in a target environment using the continuous integration continuous deployment system;

based on the deploying in the target environment, detecting a failing discrete code change package of the discrete code change packages; and

rolling back, based on detecting the failing discrete code change package, one or more code change files of the failing discrete code change package absent rolling back one or more other code change files of one or more other discrete code change packages to restructure the failing code change for deployment using the continuous integration continuous deployment system.

11 . The computer program product of claim 10 , wherein the code commit facility further comprises, based on initiating a build and deploy process within the continuous integration continuous deployment system for a code change, determining presence of the failing code change in the target environment.

12 . The computer program product of claim 11 , wherein the code commit facility further comprises training a machine learning model to facilitate detecting failing code changes, and wherein the determining includes using the machine learning model in detecting the failing code change.

13 . The computer program product of claim 11 , wherein the code commit facility further comprises, based on determining presence of the failing code change, deploying a prior code change with a prior code change version number from a code change version number of the failing code change, and based, at least in part, on the deploying of the prior code change also failing, signaling a build system issue with the continuous integration continuous deployment system.

14 . The computer program product of claim 11 , wherein the code commit facility further comprises ascertaining, based on determining presence of the failing code change, a set of code change files of the failing code change, and wherein the separating independent code change files is based on the ascertained set of code change files of the failing code change.

15 . The computer program product of claim 14 , wherein ascertaining the set of code change files of the failing code change comprises using a history view of a particular software application branch of the code change, the history view being obtained from a version control facility of the continuous integration continuous deployment system.

16 . The computer program product of claim 10 , wherein the code commit facility further comprises analyzing, via data analysis, the failing code change and generating a report on the failing code change based on the data analysis.

17 . A computer system for facilitating processing within a computing environment, the computer system comprising:

at least one processor set;

a set of one or more computer readable storage media; and

program instructions, collectively stored in the set of one or more computer readable storage media, for causing the at least one processor set to perform computer operations comprising:

operatively coupling a code commit facility to a continuous integration continuous deployment system, the code commit facility assisting in addressing a failing code change during updating of a software application by the continuous integration continuous deployment system, the code commit facility comprising:

generating discrete code change packages from the failing code change, the generating of the discrete code change packages including separating independent code change files of the failing code change into the discrete code change packages;

deploying the discrete code change packages in a target environment using the continuous integration continuous deployment system;

based on the deploying in the target environment, detecting a failing discrete code change package of the discrete code change packages; and

rolling back, based on detecting the failing discrete code change package, one or more code change files of the failing discrete code change package absent rolling back one or more other code change files of one or more other discrete code change packages to restructure the failing code change for deployment using the continuous integration continuous deployment system.

18 . The computer system of claim of 17 , wherein the code commit facility further comprises:

based on initiating a build and deploy process within the continuous integration continuous deployment system for a code change, determining presence of a failing code change in the target environment;

training a machine learning model to facilitate detecting failing code changes; and

the determining including using the machine learning model in detecting the failing code change.

19 . The computer system of claim 17 , wherein the code commit facility further comprises:

based on initiating a build and deploy process within the continuous integration continuous deployment system for a code change, determining presence of the failing code change in the target environment; and

based on determining presence of the failing code change, deploying a prior code change with a prior code change version number for a code change version number of the failing code change, and based, at least in part, on the deploying of the prior code change also failing, signaling a build system issue with a continuous integration continuous deployment system.

20 . The computer system of claim 17 , wherein the code commit facility further comprises:

based on initiating a build and deploy process within the continuous integration continuous deployment system for a code change, determining presence of the failing code change in the target environment; and

ascertaining, based on determining presence of the failing code change, a set of code change files of the failing code change, and wherein the separating independent code change files is based on the ascertained set of code change files of the failing code change.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 5, 2024
From: FOX, JEREMY R.; GHERGU, LAURENTIU GABRIEL; BAILEY, LOGAN; SILVERSTEIN, ZACHARY A.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 066645/0498 →
Continuity (1)
Related Publication 20250284591A1 · Sep 11, 2025
References Cited (12)
US 8776014B2 · Arnott et al. · 2014 [cited by applicant]
US 9588876B2 · Swierc et al. · 2017 [cited by applicant]
US 10990514B2 · Magnezi et al. · 2021 [cited by applicant]
US 11200377B2 · Benedict et al. · 2021 [cited by applicant]
US 11900275B2 · Negussie · 2024 [cited by examiner]
US 12072790B1 · Pearson · 2024 [cited by examiner]
US 20040194060A1 · Ousterhout et al. · 2004 [cited by applicant]
US 20100050156A1 · Bonanno et al. · 2010 [cited by applicant]
Microsoft, “Release and work item insights”, Microsoft, Nov. 2023, pp. 1-6. [cited by applicant]
IBM Cloud Education, “What Are CI/CD and the CI/CD Pipeline?”, IBM, Sep. 27, 2021, pp. 1-8. [cited by applicant]
Casper Boone et al., “Fixing Continuous Integration Tests From Within the IDE With Contextual Information”, International Conferences on Program Comprehension, May 16-17, 2022, pp. 287 to 297. [cited by applicant]
Eero Kauhanen et al. “Regression Test Selection Tool for Python in Continuous Integration Process”, University of Helsinki Institutional Repository. Mar. 2021, pp. 1-5. [cited by applicant]