IP Library Granted Patent US 9,880,837
Granted Patent B2
US 9,880,837 · App. 15/000,061 · Granted Jan 30, 2018

Artifact manager for release automation

Inventors: Rajesh Khazanchi (Palo Alto, CA); Rakesh Sinha (Palo Alto, CA); Servesh Singh (Bangalore, IN); Danny Holzman (Palo Alto, CA); Assaf Berg (Palo Alto, CA); Devaki Kulkarni (Palo Alto, CA); Nilesh Agrawal (Bangalore, IN)
Assignee: VMware, Inc.
G06F8/71G06F9/45558G06F9/5077G06F2009/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 9,880,837
App. No.
15/000,061
Granted
Jan 30, 2018
Kind
B2
Abstract

An artifact manager generates an abstraction for artifacts and repositories in a deployment platform such that the artifacts may be located uniformly and securely in each deployment environment during the deployment process. The described system includes a release automation platform having a release pipeline which is responsible for deploying build artifacts into multiple deployment environments, testing the build artifacts thoroughly in each environment, and follow organization-specific approval processes to promote the build artifacts to a next deployment environment.

Claims (43)

1. A method comprising:

receiving a request to deploy an application defined by an application blueprint in a first deployment environment, wherein the application blueprint specifies a logical artifact name of at least one artifact that is part of the application;

determining a resource location of the at least one artifact that is part of the application according to the application blueprint and to a mapping of logical artifact names to resource locations of repositories associated with the first deployment environment;

deploying a first build of the application in the first deployment environment from the determined resource location of the at least one artifact; and

responsive to determining the first build of the application in the first deployment environment has passed testing, promoting the at least one artifact to a second deployment environment and deploying a second build of the application in the second deployment environment associated with a next stage within a release pipeline.

2. The method of claim 1 , further comprising:

determining a second resource location of the at least one artifact that is part of the application according to the same application blueprint and to the mapping of logical artifact names to resource locations of repositories associated with the second deployment environment; and

deploying the second build of the application in the second environment from the determined second resource location of the least one artifact.

3. The method of claim 1 , wherein the first build of the application is deployed from a first repository of a first repository type, the first repository associated with the first deployment environment; and wherein the second build of the application is deployed from a second repository of a second repository type associated with the second deployment environment.

4. The method of claim 1 , wherein the mapping of logical artifact names to resource locations of repositories is generated according to a process comprising:

generating a specification for a first type of repository configured to store artifacts; and

generating an instance of the specification associated with the first deployment environment having the first type of repository, wherein the first deployment environment is associated with a stage within a release pipeline.

5. The method of claim 4 , wherein the specification comprises a first field indicating a type of version, a second field indicating how the first type of repository is accessed, and a third field indicating an action parameter used to access the first type of repository.

6. The method of claim 1 , wherein the first deployment environment is part of a series of deployment environments representing a release pipeline comprising at least a test environment and a production environment.

7. A non-transitory computer-readable storage medium comprising instructions that, when executed in a computing device, operate a computing system, by performing the steps of:

receiving a request to deploy an application defined by an application blueprint in a first deployment environment, wherein the application blueprint specifies a logical artifact name of at least one artifact that is part of the application;

determining a resource location of the at least one artifact that is part of the application according to the application blueprint and to a mapping of logical artifact names to resource locations of repositories associated with the first deployment environment;

deploying a first build of the application in the first deployment environment from the determined resource location of the at least one artifact; and

responsive to determining the first build of the application in the first deployment environment has passed testing, promoting the at least one artifact to a second deployment environment and deploying a second build of the application in the second deployment environment associated with a next stage within a release pipeline.

8. The non-transitory computer-readable storage medium of claim 7 , wherein the steps further comprise:

determining a second resource location of the at least one artifact that is part of the application according to the same application blueprint and to the mapping of logical artifact names to resource locations of repositories associated with the second deployment environment; and

deploying the second build of the application in the second environment from the determined second resource location of the least one artifact.

9. The non-transitory computer-readable storage medium of claim 7 , wherein the first build of the application is deployed from a first repository of a first repository type, the first repository associated with the first deployment environment; and wherein the second build of the application is deployed from a second repository of a second repository type associated with the second deployment environment.

10. The non-transitory computer-readable storage medium of claim 7 , wherein the mapping of logical artifact names to resource locations of repositories is generated according to a process comprising:

generating a specification for a first type of repository configured to store artifacts; and

generating an instance of the specification associated with the first deployment environment having the first type of repository, wherein the first deployment environment is associated with a stage within a release pipeline.

11. The non-transitory computer-readable storage medium of claim 10 , wherein the specification comprises a first field indicating a type of version, a second field indicating how the first type of repository is accessed, and a third field indicating an action parameter used to access the first type of repository.

12. The non-transitory computer-readable storage medium of claim 7 , wherein the first deployment environment is part of a series of deployment environments representing a release pipeline comprising at least a test environment and a production environment.

13. A computer system, comprising:

a storage device comprising one or more repositories configured to store build artifacts;

a processor configured to perform steps for managing artifacts of an application deployment, the steps comprising:

receiving a request to deploy an application defined by an application blueprint in a first deployment environment, wherein the application blueprint specifies a logical artifact name of at least one artifact that is part of the application;

determining a resource location of the at least one artifact that is part of the application according to the application blueprint and to a mapping of logical artifact names to resource locations of repositories associated with the first deployment environment; and

deploying a first build of the application in the first deployment environment from the determined resource location of the at least one artifact; and

responsive to determining the first build of the application in the first deployment environment has passed testing, promoting the at least one artifact to a second deployment environment and deploying a second build of the application in the second deployment environment associated with a next stage within a release pipeline.

14. The computer system of claim 13 , wherein the processor is further configured to perform the steps comprising:

determining a second resource location of the at least one artifact that is part of the application according to the same application blueprint and to the mapping of logical artifact names to resource locations of repositories associated with the second deployment environment; and

deploying the second build of the application in the second environment from the determined second resource location of the least one artifact.

15. The computer system of claim 13 , wherein the first build of the application is deployed from a first repository of a first repository type, the first repository associated with the first deployment environment; and wherein the second build of the application is deployed from a second repository of a second repository type associated with the second deployment environment.

16. The computer system of claim 13 , wherein the mapping of logical artifact names to resource locations of repositories is generated according to a process comprising:

generating a specification for a first type of repository configured to store artifacts; and

generating an instance of the specification associated with the first deployment environment having the first type of repository, wherein the first deployment environment is associated with a stage within a release pipeline.

17. The computer system of claim 13 , wherein the first deployment environment is part of a series of deployment environments representing a release pipeline comprising at least a test environment and a production environment.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 9, 2018
From: KHAZANCHI, RAJESH; SINHA, RAKESH; SINGH, SERVESH; HOLZMAN, DANNY; BERG, ASSAF; KULKARNI, DEVAKI; AGRAWAL, NILESH
To: VMWARE, INC.
Reel/Frame 045024/0546 →
Priority Claims (1)
IN 3168/CHE/2015 · Jun 24, 2015 · national
Continuity (1)
Related Publication 20160378449A1 · Dec 29, 2016