IP Library Granted Patent US 11,003,440
Granted Patent B2
US 11,003,440 · App. 16/397,351 · Granted May 11, 2021

Systems and methods for managing states of deployment

Inventor: Jonathan Yu (Palo Alto, CA)
Assignee: Palantir Technologies Inc.
G06F8/71G06F8/60G06F8/61G06F8/65G06F16/2358G06F9/44505
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,003,440
App. No.
16/397,351
Granted
May 11, 2021
Kind
B2
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 (46)

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 associated with a software deployment at a node managed by a configuration management system based on a comparison of a current software configuration state and a previous software configuration state at the node, wherein the configuration change includes one or more commands that caused a configuration of the software deployment to change;

storing the configuration change in a repository associated with the configuration management system, wherein:

the one or more commands included in the configuration change are stored based on handlebar expressions and strings specified in the handlebar expressions; and

the handlebar expressions provide a data structure with which the one or more commands are to be stored in the repository and the strings specified in the handlebar expressions include at least a domain name associated with the repository;

dynamically updating the one or more commands stored based on the strings specified in the handlebar expressions according to a time at which the configuration change is accessed; and

providing an interface through which configuration change information is accessible, wherein the configuration change information describes the configuration change associated with the software deployment at the node based on the configuration change stored in the repository, wherein the interface is a web user interface whereby a user at the node can search for commands that caused the software deployment at the node to change.

2. The system of claim 1 , wherein the handlebar expressions are data fields encapsulated within curly bracket characters.

3. The system of claim 1 , wherein the strings specified in the handlebar expressions are alphanumeric characters encapsulated within curly bracket characters.

4. The system of claim 1 , wherein storing the configuration change in the repository associated with the configuration management system comprises:

creating a first file for the one or more commands stored based on the handlebar expressions and a second file for one or more commands stored based on the strings specified in the handlebar expressions; and

committing the first file and the second file to the repository.

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

6. The system of claim 1 , wherein the presence of the configuration change is detected at the configuration management system based on a comparison of current commit values and prior commit values.

7. The system of claim 1 , wherein the handlebar expressions are associated with a URL that is dynamically changed over time and based on a version of the deployment, and in response to the URL being changed, the configuration change describes the changed URL.

8. The system of claim 1 , wherein the configuration change comprises an updated approximated value.

9. 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 associated with a software deployment at a node managed by a configuration management system based on a comparison of a current software configuration state and a previous software configuration state at the node, wherein the configuration change includes one or more commands that caused a configuration of the software deployment to change;

storing the configuration change in a repository associated with the configuration management system, wherein:

the one or more commands included in the configuration change are stored based on handlebar expressions and strings specified in the handlebar expressions; and

the handlebar expressions provide a data structure with which the one or more commands are to be stored in the repository and the strings specified in the handlebar expressions include at least a domain name associated with the repository;

dynamically updating the one or more commands stored based on the strings specified in the handlebar expressions according to a time at which the configuration change is accessed; and

providing an interface through which configuration change information is accessible, wherein the configuration change information describes the configuration change associated with the software deployment at the node based on the configuration change stored in the repository, wherein the interface is a web user interface whereby a user at the node can search for commands that caused the software deployment at the node to change.

10. The method of claim 8 , wherein the handlebar expressions are data fields encapsulated within curly bracket characters.

11. The method of claim 9 , wherein the strings specified in the handlebar expressions are alphanumeric characters encapsulated within curly bracket characters.

12. The method of claim 9 , wherein storing the configuration change in the repository associated with the configuration management system comprises:

creating a first file for the one or more commands stored based on the handlebar expressions and a second file for one or more commands stored based on the strings specified in the handlebar expressions; and

committing the first file and the second file to the repository.

13. The method of claim 9 , wherein the repository is a version control repository.

14. The method of claim 9 , wherein the presence of the configuration change is detected at the configuration management system based on a comparison of current commit values and prior commit values.

15. 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 associated with a software deployment at a node managed by a configuration management system based on a comparison of a current software configuration state and a previous software configuration state at the node, wherein the configuration change includes one or more commands that caused a configuration of the software deployment to change;

storing the configuration change in a repository associated with the configuration management system, wherein:

the one or more commands included in the configuration change are stored based on handlebar expressions and strings specified in the handlebar expressions; and

the handlebar expressions provide a data structure with which the one or more commands are to be stored in the repository and the strings specified in the handlebar expressions include at least a domain name associated with the repository;

dynamically updating the one or more commands stored based on the strings specified in the handlebar expressions according to a time at which the configuration change is accessed; and

providing an interface through which configuration change information is accessible, wherein the configuration change information describes the configuration change associated with the software deployment at the node based on the configuration change stored in the repository, wherein the interface is a web user interface whereby a user at the node can search for commands that caused the software deployment at the node to change.

16. The non-transitory computer readable medium of claim 15 , wherein the handlebar expressions are data fields encapsulated within curly bracket characters.

17. The non-transitory computer readable medium of claim 15 , wherein the strings specified in the handlebar expressions are alphanumeric characters encapsulated within curly bracket characters.

18. The non-transitory computer readable medium of claim 15 , wherein storing the configuration change in the repository associated with the configuration management system comprises:

creating a first file for the one or more commands stored based on the handlebar expressions and a second file for one or more commands stored based on the strings specified in the handlebar expressions; and

committing the first file and the second file to the repository.

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

20. The non-transitory computer readable medium of claim 15 , wherein the presence of the configuration change is detected at the configuration management system based on a comparison of current commit values and prior commit values.

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 Apr 29, 2019
From: YU, JONATHAN
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 049026/0796 →