IP Library Granted Patent US 12688076
Granted Patent B2
US 12688076 · App. 18/453,938 · Granted Jul 21, 2026

Automatic detection of deployment environment and configuration of private clouds

Inventors: Shyam Sareen (Cary, NC); Rod D Waltermann (Rougemont, NC)
Assignee: Lenovo (Singapore) Pte. Ltd.
G06F9/5077G06F9/45558G06F2009/4557
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 12688076
App. No.
18/453,938
Granted
Jul 21, 2026
Kind
B2
Abstract

Machine learning algorithms are trained using implementation scripts. These machine learning algorithms are trained using different infrastructures as a service (IaaS) and platforms as a service (PaaS). The deployment environment of computer applications on a deployed IaaS or a deployed PaaS is detected. Automated computer application scripts that were used to deploy the computer applications on the deployed IaaS or the deployed PaaS are provided to the trained machine learning algorithms. The output from the trained machine learning algorithms includes automation scripts and procedures to port the computer applications on the deployed IaaS or the deployed PaaS to a new IaaS or a new PaaS. The automation scripts generated by the machine learning algorithms are provided to platform tools to create and configure the new IaaS or the new PaaS. The computer applications are ported to the new IaaS or the new PaaS using the platform tools and the procedures.

Claims (52)

1 . A computerized process comprising:

receiving machine learning algorithms trained using implementation scripts for a plurality of infrastructures as a service (IaaS) and platforms as a service (PaaS);

detecting a deployment environment of computer applications on a deployed IaaS or a deployed PaaS;

providing automated computer application scripts that were used to deploy the computer applications on the deployed IaaS or the deployed PaaS to the trained machine learning algorithms;

receiving output from the trained machine learning algorithms, the output comprising automation scripts and procedures to port the computer applications on the deployed IaaS or the deployed PaaS to a new IaaS or a new PaaS;

providing the automation scripts generated by the machine learning algorithms to platform tools to create and configure the new IaaS or the new PaaS; and

porting the computer applications to the new IaaS or the new PaaS using the platform tools and the procedures;

wherein the machine learning algorithms and the platform tools generate a set of curated rules, the curated rules for detecting capabilities of the deployed IaaS or the deployed PaaS, for auto-generating the automation scripts, and for the porting of the computer applications to the new IaaS or the new PaaS; and

comparing the deployed IaaS to the new IaaS or comparing the deployed PaaS to the new PaaS by executing an existing solution on the new IaaS or the new PaaS, thereby generating a difference between the deployed IaaS and the new IaaS or the deployed PaaS or the new PaaS;

using the platform tools to generate the automation scripts to produce an outcome; and

comparing the outcome against new IaaS or the new PaaS, thereby verifying that the new IaaS or the new PaaS satisfies intended needs and purposes of the computer applications.

2 . The computerized process of claim 1 , wherein the deployment environment comprises a structure of the deployed IaaS or the deployed PaaS, features of the deployed IaaS or the deployed PaaS, access parameters for the deployed IaaS or the deployed PaaS, an ownership identity of the deployed IaaS or the deployed PaaS, and storage space available on the deployed IaaS or the deployed PaaS.

3 . The computerized process of claim 1 , comprising comparing the deployment environment of the deployed IaaS with a deployment environment of the new IaaS or the deployment environment of the deployed PaaS with a deployment environment of the new PaaS to verify that the new IaaS or the new PaaS satisfies workload requirements of the computer applications.

4 . The computerized process of claim 1 , wherein the platform tools comprise one or more of a terraform tool, a packers tool, ansible scripts, a kubespray tool and a Helm chart.

5 . The computerized process of claim 4 , wherein the terraform tool, the packers tool and the ansible scripts are used to configure the new IaaS.

6 . The computerized process of claim 4 , wherein the kubespray tool and the ansible scripts are used to configure the new PaaS.

7 . The computerized process of claim 4 , comprising using the Helm chart to establish a functionality of the new IaaS or the new PaaS.

8 . The computerized process of claim 1 , wherein the machine learning algorithms are trained using a plurality of Software as a Service (SaaS) applications.

9 . A non-transitory machine-readable medium comprising instructions that when executed by a processor execute a process comprising:

receiving machine learning algorithms trained using implementation scripts for a plurality of infrastructures as a service (IaaS) and platforms as a service (PaaS);

detecting a deployment environment of computer applications on a deployed IaaS or a deployed PaaS;

providing automated computer application scripts that were used to deploy the computer applications on the deployed IaaS or the deployed PaaS to the trained machine learning algorithms;

receiving output from the trained machine learning algorithms, the output comprising automation scripts and procedures to port the computer applications on the deployed IaaS or the deployed PaaS to a new IaaS or a new PaaS;

providing the automation scripts generated by the machine learning algorithms to platform tools to create and configure the new IaaS or the new PaaS; and

porting the computer applications to the new IaaS or the new PaaS using the platform tools and the procedure:

wherein the machine learning algorithms and the platform tools generate a set of curated rules, the curated rules for detecting capabilities of the deployed IaaS or the deployed PaaS, for auto-generating the automation scripts, and for the porting of the computer applications to the new IaaS or the new PaaS; and

comparing the deployed IaaS to the new IaaS or comparing the deployed PaaS to the new PaaS by executing an existing solution on the new IaaS or the new PaaS, thereby generating a difference between the deployed IaaS and the new IaaS or the deployed PaaS or the new PaaS;

using the platform tools to generate the automation scripts to produce an outcome; and comparing the outcome against new IaaS or the new PaaS, thereby verifying that the new IaaS or the new PaaS satisfies intended needs and purposes of the computer applications.

10 . The non-transitory machine-readable medium of claim 9 , wherein the deployment environment comprises a structure of the deployed IaaS or the deployed PaaS, features of the deployed IaaS or the deployed PaaS, access parameters for the deployed IaaS or the deployed PaaS, an ownership identity of the deployed IaaS or the deployed PaaS, and storage space available on the deployed IaaS or the deployed PaaS.

11 . The non-transitory machine-readable medium of claim 9 , comprising instructions for comparing the deployment environment of the deployed IaaS with a deployment environment of the new IaaS or the deployment environment of the deployed PaaS with a deployment environment of the new PaaS to verify that the new IaaS or the new PaaS satisfies workload requirements of the computer applications.

12 . The non-transitory machine-readable medium of claim 9 , wherein the platform tools comprise one or more of a terraform tool, a packers tool, ansible scripts, a kubespray tool and a Helm chart.

13 . The non-transitory machine-readable medium of claim 12 , wherein the terraform tool, the packers tool and the ansible scripts are used to configure the new IaaS.

14 . The non-transitory machine-readable medium of claim 12 , wherein the kubespray tool and the ansible scripts are used to configure the new PaaS.

15 . The non-transitory machine-readable medium of claim 12 , comprising instructions for using the Helm chart to establish a functionality of the new IaaS or the new PaaS.

16 . The non-transitory machine-readable medium of claim 9 , wherein the machine learning algorithms are trained using a plurality of Software as a Service (SaaS) applications.

17 . A system comprising:

a computer processor; and

a memory coupled to the computer processor;

wherein the computer processor and memory are operable for:

receiving machine learning algorithms trained using implementation scripts for a plurality of infrastructures as a service (IaaS) and platforms as a service (PaaS);

detecting a deployment environment of computer applications on a deployed IaaS or a deployed PaaS;

providing automated computer application scripts that were used to deploy the computer applications on the deployed IaaS or the deployed PaaS to the trained machine learning algorithms;

receiving output from the trained machine learning algorithms, the output comprising automation scripts and procedures to port the computer applications on the deployed IaaS or the deployed PaaS to a new IaaS or a new PaaS;

providing the automation scripts generated by the machine learning algorithms to platform tools to create and configure the new IaaS or the new PaaS; and

porting the computer applications to the new IaaS or the new PaaS using the platform tools and the procedures;

wherein the machine learning algorithms and the platform tools generate a set of curated rules, the curated rules for detecting capabilities of the deployed IaaS or the deployed PaaS, for auto-generating the automation scripts, and for the porting of the computer applications to the new IaaS or the new PaaS; and

comparing the deployed IaaS to the new IaaS or comparing the deployed PaaS to the new PaaS by executing an existing solution on the new IaaS or the new PaaS, thereby generating a difference between the deployed IaaS and the new IaaS or the deployed PaaS or the new PaaS;

using the platform tools to generate the automation scripts to produce an outcome; and

comparing the outcome against new IaaS or the new PaaS, thereby verifying that the new IaaS or the new PaaS satisfies intended needs and purposes of the computer applications.

18 . The system of claim 17 , wherein the deployment environment comprises a structure of the deployed IaaS or the deployed PaaS, features of the deployed IaaS or the deployed PaaS, access parameters for the deployed IaaS or the deployed PaaS, an ownership identity of the deployed IaaS or the deployed PaaS, and storage space available on the deployed IaaS or the deployed PaaS.

19 . The system of claim 17 , wherein the computer processor and memory are operable for comparing the deployment environment of the deployed IaaS with a deployment environment of the new IaaS or the deployment environment of the deployed PaaS with a deployment environment of the new PaaS to verify that the new IaaS or the new PaaS satisfies workload requirements of the computer applications.

20 . The system of claim 17 , wherein the platform tools comprise one or more of a terraform tool, a packers tool, ansible scripts, a kubespray tool and a Helm chart.