IP Library Granted Patent US 10,802,951
Granted Patent B2
US 10,802,951 · App. 16/381,108 · Granted Oct 13, 2020

Systems and methods of integrated testing and deployment in a continuous integration continuous deployment (CICD) system

Inventor: Andrey Falko (Oakland, CA)
Assignee: salesforce.com, inc.
G06F11/368G06F11/3636
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 10,802,951
App. No.
16/381,108
Granted
Oct 13, 2020
Kind
B2
Abstract

Systems and methods are provided for receiving a code change at a continuous integration and continuous deployment (CICD) server system, generating a unique change identifier, generating a new code build which includes the code change, testing the generated new code build by performing a code trace for phase of testing or production environment based on at least one predetermined testing parameter that includes a predetermined trace time for the code change of the generated change identifier, and displaying test results for the change identifier for the phase of testing or production environment to visually highlight a pass or failure of the testing for the code change based on the predetermined testing parameter for the predetermined trace time.

Claims (44)

1. A method comprising:

receiving a code change at a server;

generating a unique change identifier for the received code change at a version control system of the server;

generating, at a continuous integration system of the server, a new code build which includes the code change;

testing, at the server, the generated new code build by performing a code trace based on at least one predetermined testing parameter that includes a predetermined trace time for the code change of the generated change identifier by performing the code trace to determine the start and end times of the trace of the code change of the change identifier; and

displaying, on a display device coupled to the server, test results for the change identifier for the at least one phase of testing to visually highlight a pass or failure of the testing for the code change based on the at least one predetermined testing parameter for the predetermined trace time.

2. The method of claim 1 , further comprising:

generating, at the server, a trace identifier based on the change identifier;

tracing, at the server, the new code build based on the generated trace identifier;

determining, at the server, a time taken per unit span of the new code build being traced; and

determining, at the server, the test results based on the passing or failing of the testing of the code change based on the at least one predetermined testing parameter for the predetermined trace time.

3. The method of claim 2 , wherein the displaying comprises:

displaying, at the display device based on the trace identifier, the change identifier, the determined time taken per unit span, and the test results for the at least one phase of testing to visually highlight the pass or failure of the code change.

4. The method of claim 1 , further comprising:

receiving, at the server system, the tested new code build;

generating, at the server, a trace identifier from the change identifier; and

testing, at the server, the new code build for at least one production environment based on the at least one predetermined testing parameter that includes the predetermined trace time for the code change of the generated trace identifier;

wherein the displaying comprises:

displaying, based on the trace identifier, the change identifier, the determined time taken per unit span, and the test results for the at least one production environment to visually highlight the pass or failure of the code change.

5. The method of claim 4 , further comprising:

performing, at the server system, a rollback operation when the test results for the new code build in the one or more production environments determines at least one failure,

wherein the rollback operation deploys a predetermined previous code version for execution by the deployment system.

6. The method of claim 4 , further comprising:

generating, at the server, a trace identifier from a change identifier;

performing a trace, at the server, of the new code build based on the trace identifier and the one or more tags;

determining, at the server, the time taken per unit span of the new code build for the one or more production environments; and

determining, at the server, the test results based on the passing or failing of the testing of the code change based on the determined time taken per unit span of the new code build for the one or more production environments.

7. The method of claim 6 , further comprising:

displaying, on the display device, the change identifier, the determined time take per unit span, and the determined test results for the one or more production environments based on the trace identifier.

8. The method of claim 1 , further comprising:

displaying, on the display device, a ranking of one or more components of the tested new code build based on the test results.

9. A system comprising:

a server to receive a code change to generate a unique change identifier for the received code change, generate a new code build which included the code change, wherein the server tests the generated new code build by performing a code trace for at least one phase of the testing based on at least one predetermined testing parameter that includes a predetermined trace time for the code change of the generated change identifier, to perform the code trace to determine the start and end times of the trace of the code change of the change identifier, and

a display device coupled to the server, to display test results for the change identifier for that at least one phase of testing to visually highlight a pass or failure of the testing for the code change based on the at least one predetermined testing parameter for the predetermined trace time.

10. The system of claim 9 , wherein the server generates a trace identifier from the change identifier, traces the new code build based on the generated trace identifier, determines a time taken per unit span of the new code build being traced, and determines the test results based on the passing or failing of the testing of the code change based on the at least one predetermined testing parameter for the predetermined trace time.

11. The system of claim 10 , further comprising:

wherein the display device, based on the trace identifier, displays the change identifier, the determined time taken per unit span, and the test results for the at least one phase of testing to visually highlight the pass or failure of the code change.

12. The system of claim 9 , wherein the server generates a trace identifier from the received change identifier, and tests the new code build for at least one production environment based on the at least one predetermined testing parameter that includes the predetermined trace time for the code change of the generated trace identifier, and

wherein the display device displays the change identifier, the determined time taken per unit span, and the test results for the at least one production environment to visually highlight the pass or failure of the code change based on the trace identifier.

13. The system of claim 12 , wherein the server performs a rollback operation when the test results for the new code build in the one or more production environments determines at least one failure, wherein the rollback operation deploys a predetermined previous code version for execution by the server.

14. The system of claim 12 ,

wherein the server generates a trace identifier from the change identifier, performs a trace of the new code build based on the trace identifier and the one or more tags, determines the time taken per unit span of the new code build for the one or more production environments, and determines the test results based on the passing or failing of the testing of the code change based on the determined time taken per unit span of the new code build for the one or more production environments.

15. The system of claim 14 , wherein the display device displays the change identifier, the determined time take per unit span, and the determined test results for the one or more production environments based on the trace identifier.

16. The system of claim 9 , wherein the display device displays a ranking of one or more components of the tested new code build based on the test results.

Assignments (2)
CHANGE OF NAME Recorded Dec 18, 2024
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 069717/0416 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 11, 2019
From: FALKO, ANDREY
To: SALESFORCE.COM, INC.
Reel/Frame 048855/0430 →
Continuity (2)
Continuation 16025025 · Jul 2, 2018
Related Publication 20200004660A1 · Jan 2, 2020
Cited By (1)
US 12,249,335