IP Library Granted Patent US 11,604,632
Granted Patent B2
US 11,604,632 · App. 16/851,793 · Granted Mar 14, 2023

Development environment deployment for multiple developer types

Inventors: Eric Hodel (Seattle, WA); Ezekiel Templin (Oakland, CA)
Assignee: Fastly, Inc.
G06F8/63G03F7/2024G03F7/70491G06F8/00G06F8/65G06F9/455G06F9/5066
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,604,632
App. No.
16/851,793
Granted
Mar 14, 2023
Kind
B2
Abstract

Disclosed herein are systems, methods, and software managing the deployment of development environments for an organization. In one example, a computing system may identify a request for a development environment. In response to the request, the computing system may select one or more images for the development environment from a plurality of images based on an identifier associated with the request and initiate one or more virtual nodes from the one or more images based on a configuration associated with the identifier.

Claims (46)

1. A method comprising:

identifying a request for a development environment;

selecting images for the development environment from a plurality of images based on a developer identifier associated with the request;

identifying one or more dependencies between the plurality of images based on a configuration associated with the developer identifier; and

initiating services in an order according to the dependencies, each service initiated as one or more virtual nodes from the images based on a configuration associated with the developer identifier.

2. The method of claim 1 , wherein initiating services in an order according to the dependencies, each service initiated as one or more virtual nodes from the images based on a configuration associated with the developer identifier comprises executing a command or function in a virtual node of at least one of the services.

3. The method of claim 1 , wherein the virtual nodes comprise containers.

4. The method of claim 1 , wherein the configuration comprises one or more command or functions to be executed in at least one virtual node of the virtual nodes.

5. The method of claim 1 further comprising:

obtaining an update to the configuration associated with an image of the plurality of images for a service;

identifying one or more other developer identifiers associated with the image; and

updating one or more other configurations associated with one or more other developer identifiers.

6. The method of claim 1 further comprising:

identifying a second request for a second development environment;

selecting one or more second images for the second development environment from the plurality of images based on a second developer identifier associated with the second request, wherein the one or more second images and the images share at least one image;

initiating second services each as one or more second virtual nodes from the one or more second images based on a second configuration associated with the second developer identifier.

7. The method of claim 1 further comprising:

stopping the services;

identifying an updated configuration to the configuration; and

in response to identifying the updated configuration, restart the services from the images based on the updated configuration.

8. The method of claim 1 further comprising:

identifying a replacement image for an image of the images;

stopping the services; and

restarting the services with the replacement image in place of the image based on the configuration.

9. A computing apparatus comprising: a storage system; a processing system operatively coupled to the storage system; and program instructions stored on the storage system that, when executed by a processing system, direct the processing system to identify a request for a development environment; select images for the development environment from a plurality of images based on a developer identifier associated with the request; identify one or more dependencies between the plurality of images based on a configuration associated with the developer identifier; and initiate services in an order according to the dependencies, each service initiated as one or more virtual nodes from the images based on a configuration associated with the developer identifier.

10. The computing apparatus of claim 9 , wherein initiating services in an order according to the dependencies, each service initiated as one or more virtual nodes from the images based on a configuration associated with the developer identifier comprises executing a command or function in a virtual node of at least one of the services.

11. The computing apparatus of claim 9 , wherein the virtual nodes comprise containers.

12. The computing apparatus of claim 9 , wherein the configuration comprises one or more commands or functions to be executed in at least one virtual node of the virtual nodes.

13. The computing apparatus of claim 9 , wherein the program instructions further direct the processing system to:

obtain an update to the configuration associated with an image of the plurality of images for a service;

identify one or more other developer identifiers associated with the image; and

update one or more other configurations associated with the one or more other developer identifiers.

14. The computing apparatus of claim 9 , wherein the program instructions further direct the processing system to:

identify a second request for a second development environment;

select one or more second images for the second development environment from the plurality of images based on a second developer identifier associated with the second request, wherein the one or more second images and the images share at least one image;

initiate second services each as one or more second virtual nodes from the one or more second images based on a second configuration associated with the second developer identifier.

15. The computing apparatus of claim 9 , wherein the program instructions further direct the processing system to:

stop the services;

identify an updated configuration to the configuration; and

in response to identifying the updated configuration, restart the services from the images based on the updated configuration.

16. The computing apparatus of claim 9 , wherein the program instructions further direct the processing system to:

identify a replacement image for an image of the images;

stop the services; and

restart the services with the replacement image in place of the image based on the configuration.

17. An apparatus comprising: a processing system; a storage system; program instructions stored on the storage system that, when executed by the processing system, direct the processing system to: identify a request for a development environment; select images for the development environment from a plurality of images based on a developer identifier associated with the request; identify one or more dependencies between the images based on a configuration associated with the developer identifier; and initiate services from the images in an order specified by the dependencies.

18. The apparatus of claim 17 , wherein each of the services comprise one or more containers.

Assignments (2)
SECURITY INTEREST Recorded Feb 17, 2021
From: FASTLY, INC.
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AND COLLATERAL AGENT
Reel/Frame 055316/0616 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 17, 2020
From: HODEL, ERIC; TEMPLIN, EZEKIEL
To: FASTLY INC.
Reel/Frame 052429/0670 →
Continuity (1)
Related Publication 20210325785A1 · Oct 21, 2021