IP Library Granted Patent US 10,353,699
Granted Patent B1
US 10,353,699 · App. 15/795,031 · Granted Jul 16, 2019

Systems and methods for managing states of deployment

Inventor: Jonathan Yu (Palo Alto, CA)
Assignee: Palantir Technologies Inc.
G06F8/71G06F8/60G06F8/61G06F8/65
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,353,699
App. No.
15/795,031
Granted
Jul 16, 2019
Kind
B1
Abstract

Systems and methods are provided for managing states of deployment. A presence of a configuration change to be implemented at a deployment may be detected. The configuration change may include one or more commands to change a configuration of the deployment. Responsive to detecting the presence of the configuration change, information describing the configuration change may be stored in a repository. The information may be stored in an unsubstituted form and a substituted form. An interface through which configuration change information is accessible may be provided. The configuration change information may describe the configuration change at the deployment based on one or both of the unsubstituted form and the substituted form.

Claims (37)

1. A system comprising:

one or more processors; and

memory storing instructions that, when executed by the one or more processors, cause the system to perform:

detecting a presence of a configuration change to be implemented at a deployment, the configuration change including one or more commands to change a configuration of the deployment, the presence of the configuration change being detected based on a comparison of current commit values and prior commit values;

responsive to detecting the presence of the configuration change, storing information describing the configuration change in a repository, the information being stored in an unsubstituted form and a substituted form, the unsubstituted form including raw values of the one or more commands, and the substituted form including first evaluated values of the one or more commands, the first evaluated values determined based on a first evaluation of the one or more commands at a time the one or more commands are entered or processed, the information indicating a particular file associated with the configuration change, a time when the particular file was created, a user identifier of a user that created the particular file, and one or more modifications of the particular file;

providing an interface through which configuration change information is accessible, wherein the configuration change information describes the configuration change at the deployment based on the unsubstituted form and the substituted form;

accessing the configuration change information to perform a read operation on the configuration change information;

updating the substituted form in response to the read operation, the updated substituted form including second evaluated values of the one or more commands, the second evaluated values determined based on a second evaluation of the one or more commands at a time of the accessing of the configuration change information to perform the read operation on the configuration change information; and

causing a presentation of the configuration change information, the configuration change information based on the unsubstituted form and the updated substituted form.

2. The system of claim 1 , wherein the substituted form describes the one or more commands with substituted values, the substituted values enabling the system to determine a substituted expression of the one or more commands.

3. The system of claim 1 , wherein the unsubstituted form describes the one or more commands with substitution variables, the substitution variables enabling the system to determine an evaluated expression of the one or more commands.

4. The system of claim 1 , wherein storing the information describing the configuration change in the repository includes creating a first file for the information stored in the unsubstituted form and a second file for the information stored in the substituted form, and committing the first file and the second file to the repository.

5. The system of claim 1 , wherein the presence of the configuration change is detected at a configuration management server.

6. The system of claim 1 , wherein the repository is a version control repository.

7. A method implemented by a computing system including one or more processors and storage media storing machine-readable instructions, wherein the method is performed using the one or more processors, the method comprising:

detecting a presence of a configuration change to be implemented at a deployment, the configuration change including one or more commands to change a configuration of the deployment, the presence of the configuration change being detected based on a comparison of current commit values and prior commit values;

responsive to detecting the presence of the configuration change, storing information describing the configuration change in a repository, the information being stored in an unsubstituted form and a substituted form, the unsubstituted form including raw values of the one or more commands, and the substituted form including first evaluated values of the one or more commands, the first evaluated values determined based on a first evaluation of the one or more commands at a time the one or more commands are entered or processed, the information indicating a particular file associated with the configuration change, a time when the particular file was created, a user identifier of a user that created the particular file, and one or more modifications of the particular file;

providing an interface through which configuration change information is accessible, wherein the configuration change information describes the configuration change at the deployment based on the unsubstituted form and the substituted form;

accessing the configuration change information to perform a read operation on the configuration change information;

updating the substituted form in response to the read operation, the updated substituted form including second evaluated values of the one or more commands, the second evaluated values determined based on a second evaluation of the one or more commands at a time of the accessing of the configuration change information to perform the read operation on the configuration change information; and

causing a presentation of the configuration change information, the configuration change information based on the unsubstituted form and the updated substituted form.

8. The method of claim 7 , wherein the substituted form describes the one or more commands with substituted values, the substituted values enabling the system to determine a substituted expression of the one or more commands.

9. The method of claim 7 , wherein the unsubstituted form describes the one or more commands with substitution variables, the substitution variables enabling the system to determine an evaluated expression of the one or more commands.

10. The method of claim 7 , wherein storing the information describing the configuration change in the repository includes creating a first file for the information stored in the unsubstituted form and a second file for the information stored in the substituted form, and committing the first file and the second file to the repository.

11. The method of claim 7 , wherein the presence of the configuration change is detected at a configuration management server.

12. The method of claim 7 , wherein the repository is a version control repository.

13. A non-transitory computer readable medium comprising instructions that, when executed, cause one or more processors to perform:

detecting a presence of a configuration change to be implemented at a deployment, the configuration change including one or more commands to change a configuration of the deployment, the presence of the configuration change being detected based on a comparison of current commit values and prior commit values;

responsive to detecting the presence of the configuration change, storing information describing the configuration change in a repository, the information being stored in an unsubstituted form and a substituted form, the unsubstituted form including raw values of the one or more commands, and the substituted form including first evaluated values of the one or more commands, the first evaluated values determined based on a first evaluation of the one or more commands at a time the one or more commands are entered or processed, the information indicating a particular file associated with the configuration change, a time when the particular file was created, a user identifier of a user that created the particular file, and one or more modifications of the particular file;

providing an interface through which configuration change information is accessible, wherein the configuration change information describes the configuration change at the deployment based on the unsubstituted form and the substituted form;

accessing the configuration change information to perform a read operation on the configuration change information;

updating the substituted form in response to the read operation, the updated substituted form including second evaluated values of the one or more commands, the second evaluated values determined based on a second evaluation of the one or more commands at a time of the accessing of the configuration change information to perform the read operation on the configuration change information; and

causing a presentation of the configuration change information, the configuration change information based on the unsubstituted form and the updated substituted form.

14. The non-transitory computer readable medium of claim 13 , wherein the substituted form describes the one or more commands with substituted values, the substituted values enabling the system to determine a substituted expression of the one or more commands.

15. The non-transitory computer readable medium of claim 13 , wherein the unsubstituted form describes the one or more commands with substitution variables, the substitution variables enabling the system to determine an evaluated expression of the one or more commands.

16. The non-transitory computer readable medium of claim 13 , wherein storing the information describing the configuration change in the repository includes creating a first file for the information stored in the unsubstituted form and a second file for the information stored in the substituted form, and committing the first file and the second file to the repository.

17. The non-transitory computer readable medium of claim 13 , wherein the repository is a version control repository.

Assignments (8)
ASSIGNMENT OF INTELLECTUAL PROPERTY SECURITY AGREEMENTS Recorded Jul 3, 2022
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: WELLS FARGO BANK, N.A.
Reel/Frame 060572/0640 →
SECURITY INTEREST Recorded Jul 3, 2022
From: PALANTIR TECHNOLOGIES INC.
To: WELLS FARGO BANK, N.A.
Reel/Frame 060572/0506 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ERRONEOUSLY LISTED PATENT BY REMOVING APPLICATION NO. 16/832267 FROM THE RELEASE OF SECURITY INTEREST PREVIOUSLY RECORDED ON REEL 052856 FRAME 0382. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Aug 26, 2021
From: ROYAL BANK OF CANADA
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 057335/0753 →
SECURITY INTEREST Recorded Jun 4, 2020
From: PALANTIR TECHNOLOGIES INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 052856/0817 →
RELEASE OF SECURITY INTEREST Recorded Jun 4, 2020
From: ROYAL BANK OF CANADA
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 052856/0382 →
SECURITY INTEREST Recorded Jan 27, 2020
From: PALANTIR TECHNOLOGIES INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS ADMINISTRATIVE AGENT
Reel/Frame 051713/0149 →
SECURITY INTEREST Recorded Jan 27, 2020
From: PALANTIR TECHNOLOGIES INC.
To: ROYAL BANK OF CANADA, AS ADMINISTRATIVE AGENT
Reel/Frame 051709/0471 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 22, 2018
From: YU, JONATHAN
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 045321/0815 →
Continuity (1)
Provisional Application 62525089 · Jun 26, 2017
Cited By (2)
US 12,314,704 US 12,340,200