IP Library Granted Patent US 11,863,389
Granted Patent B2
US 11,863,389 · App. 16/391,227 · Granted Jan 2, 2024

Lifecycle management for information technology infrastructure

Inventors: Mitchell Hashimoto (Los Angeles, CA); Armon Dadgar (San Francisco, CA); Paul Hinze (Chicago, IL)
H04L41/0866G06F8/71G06F9/44505G06F9/453G06F9/5077G06F9/542H04L41/02H04L41/082H04L41/0893H04L41/14H04L41/20H04L41/22H04L41/28H04L67/34G06F8/77G06F9/547
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,863,389
App. No.
16/391,227
Granted
Jan 2, 2024
Kind
B2
Abstract

A method for managing an information technology infrastructure is provided. The method may include generating a workspace configured to maintain configurations for the information technology infrastructure. A configuration file specifying configurations to apply to the information technology infrastructure may be merged into the workspace. An execution plan may be generated based on the workspace. The execution plan may include operations to apply, to the information technology infrastructure, the configurations specified in the configuration file. The configurations may be applied, based on the execution plan, by at least provisioning, modifying, and/or de-provisioning one or more resources at the information technology infrastructure. Related systems and articles of manufacture, including computer program products, are also provided.

Claims (36)

1. A system, comprising:

at least one data processor; and

at least one memory storing instructions which, when executed by the at least one data processor, result in operations comprising:

simultaneously maintaining a first workspace and a second workspace in a multi-cloud computing environment, the first workspace and the second workspace comprising cloud-based information technology infrastructure of hardware and software resources for hosting and executing at least one cloud-based software application, the first workspace configured to maintain a first set of configurations for the information technology infrastructure for the software application, the second workspace configured to maintain a second set of configurations for the information technology infrastructure for the software application, the information technology infrastructure further comprising a plurality of resource types, the resource types comprising a hardware resource type, a software resource type, and a network resource type, the hardware resource type comprising hardware resources, the software resource type comprising software resources, and the network resource type comprising network resources, the first set of configurations being specific to a first resource type, and the second set of configurations being specific to a second, different, resource type;

pulling, from a version controller, a configuration file, the configuration file being pulled in response to receiving, from a webhook at the version controller, a notification of the configuration file being committed at the version controller;

merging, into one of the first workspace or the second workspace, the configuration file specifying one or more new configurations to apply to the information technology infrastructure;

generating, based the merging, an execution plan that includes one or more operations to apply, to the information technology infrastructure for the multi-cloud computing environment, the one or more new configurations specified in the configuration file; and

applying, based at least on the execution plan, the one or more new configurations to the second workspace in the multi-cloud computing environment, the applying including by at least provisioning, modifying, and/or de-provisioning one or more resources at the information technology infrastructure.

2. The system of claim 1 , wherein the first set of configurations are associated with a first iteration of configurations for the information technology infrastructure, and wherein the second set of configurations are associated with a second iteration of configurations for the information technology infrastructure.

3. The system of claim 2 , wherein the first iteration of configurations are applied to the information technology infrastructure in order for the information technology infrastructure to support a first environment, and wherein the second iteration of configurations are applied to the information technology infrastructure in order for the information technology infrastructure to support a second environment.

4. The system of claim 3 , wherein the first environment and the second environment each comprise a different one of a development environment, a staging environment, and a production environment.

5. The system of claim 1 , wherein the first set of configurations are associated with a first portion of the information technology infrastructure, and wherein the second set of configurations are associated with a second portion of the information technology infrastructure.

6. The system of claim 5 , wherein the first portion of the information technology infrastructure and the second portion of the information technology infrastructure each comprise a different one of the hardware resources, software resources, and network resources.

7. The system of claim 1 , wherein the first workspace is associated with a first team of users, wherein the second workspace is associated with a second team of users, wherein the first workspace is inaccessible to the second team of users, and wherein the second workspace is inaccessible to the first team of users.

8. The system of claim 1 , wherein the configuration file includes a programming code-based representation of one or more resources at the information technology infrastructure.

9. The system of claim 1 , wherein the merging of the configuration file into the first workspace and/or the second workspace modifies at least one configuration for the information technology infrastructure, and wherein the at least one configuration is modified by at least setting and/or modifying, based at least on the configuration file, one or more variables associated with the first workspace and/or the second workspace.

10. A computer implemented method, comprising:

simultaneously maintaining a first workspace and a second workspace in a multi-cloud computing environment, the first workspace and the second workspace comprising cloud-based information technology infrastructure of hardware and software resources for hosting and executing at least one cloud-based software application, the first workspace configured to maintain a first set of configurations for the information technology infrastructure for the software application, the second workspace configured to maintain a second set of configurations for the information technology infrastructure for the software application, the information technology infrastructure comprising a plurality of resource types, the resource types comprising a hardware resource type, a software resource type, and a network resource type, the hardware resource type comprising hardware resources, the software resource type comprising software resources, and the network resource type comprising network resources, the first set of configurations being specific to a first resource type, and the second set of configurations being specific to a second, different, resource type;

pulling, from a version controller, a configuration file, the configuration file being pulled in response to receiving, from a webhook at the version controller, a notification of the configuration file being committed at the version controller;

merging, into one of the first workspace or the second workspace, the configuration file specifying one or more new configurations to apply to the information technology infrastructure;

generating, based on the merging, an execution plan that includes one or more operations to apply, to the information technology infrastructure for the multi-cloud computing environment, the one or more new configurations specified in the configuration file; and

applying, based at least on the execution plan, the one or more new configurations to the second workspace in the multi-cloud computing environment, the applying including by at least provisioning, modifying, and/or de-provisioning one or more resources at the information technology infrastructure.

11. The method of claim 10 , wherein the first set of configurations are associated with a first iteration of configurations for the information technology infrastructure, and wherein the second set of configurations are associated with a second iteration of configurations for the information technology infrastructure.

12. The method of claim 11 , wherein the first iteration of configurations are applied to the information technology infrastructure in order for the information technology infrastructure to support a first environment, and wherein the second iteration of configurations are applied to the information technology infrastructure in order for the information technology infrastructure to support a second environment.

13. The method of claim 12 , wherein the first environment and the second environment each comprise a different one of a development environment, a staging environment, and a production environment.

14. The method of claim 10 , wherein the first set of configurations are associated with a first portion of the information technology infrastructure, and wherein the second set of configurations are associated with a second portion of the information technology infrastructure.

15. The method of claim 14 , wherein the first portion of the information technology infrastructure and the second portion of the information technology infrastructure each comprise a different one of the hardware resources, software resources, and network resources.

16. The method of claim 10 , wherein the first workspace is associated with a first team of users, wherein the second workspace is associated with a second team of users, wherein the first workspace is inaccessible to the second team of users, and wherein the second workspace is inaccessible to the first team of users.

17. The method of claim 10 , wherein the configuration file includes a programming code-based representation of one or more resources at the information technology infrastructure.

18. The method of claim 10 , wherein the merging of the configuration file into the first workspace and/or the second workspace modifies at least one configuration for the information technology infrastructure, and wherein the at least one configuration is modified by at least setting and/or modifying, based at least on the configuration file, one or more variables associated with the first workspace and/or the second workspace.

19. A non-transitory computer readable medium storing instructions, which when executed by at least data processor, result in operations comprising:

simultaneously maintaining a first workspace and a second workspace in a multi-cloud computing environment, the first workspace and the second workspace comprising cloud-based information technology infrastructure of hardware and software resources for hosting and executing at least one cloud-based software application, the first workspace configured to maintain a first set of configurations for the information technology infrastructure for the software application, the second workspace configured to maintain a second set of configurations for the information technology infrastructure for the software application, the information technology infrastructure comprising a plurality of resource types, the resource types comprising a hardware resource type, a software resource type, and a network resource type, the hardware resource type comprising hardware resources, the software resource type comprising software resources, and the network resource type comprising network resources, the first set of configurations being specific to a first resource type, and the second set of configurations being specific to a second, different, resource type;

pulling, from a version controller, a configuration file, the configuration file being pulled in response to receiving, from a webhook at the version controller, a notification of the configuration file being committed at the version controller;

merging, into one of the first workspace or the second workspace, the configuration file specifying one or more new configurations to apply to the information technology infrastructure;

generating, based on the merging an execution plan that includes one or more operations to apply, to the information technology infrastructure for the multi-cloud computing environment, the one or more new configurations specified in the configuration file; and

applying, based at least on the execution plan, the one or more new configurations to the second workspace in the multi-cloud computing environment, the applying including by at least provisioning, modifying, and/or de-provisioning one or more resources at the information technology infrastructure.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 19, 2025
From: HASHICORP, INC.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 072476/0436 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 18, 2025
From: HASHIMOTO, MITCHELL; DADGAR, ARMON; HINZE, PAUL
To: HASHICORP, INC.
Reel/Frame 071442/0752 →
Continuity (4)
Provisional Application 62776433 · Dec 6, 2018
Provisional Application 62776437 · Dec 6, 2018
Provisional Application 62776434 · Dec 6, 2018
Related Publication 20200183679A1 · Jun 11, 2020