Multi-ecosystem application platform as a service (aPaaS)
US-9182951-B1 · Nov 10, 2015 · US
US10379845B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10379845-B2 |
| Application number | US-201715672175-A |
| Country | US |
| Kind code | B2 |
| Filing date | Aug 8, 2017 |
| Priority date | Nov 25, 2015 |
| Publication date | Aug 13, 2019 |
| Grant date | Aug 13, 2019 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Implementations provide for a source to image transformation pipeline for a Platform-as-a-Service (PaaS) system. A method of the disclosure includes receiving a request to create an application for execution on a Platform-as-a-Service (PaaS) system, identifying, by a processing device, at least one of language or a framework corresponding to the application, identifying, by the processing device, a build image corresponding to the identified at least one of the language or the framework, constructing, by the processing device, a build configuration object, a deployment configuration object, and a networking configuration object for the application, and transmitting, by the processing device, the build configuration object, the deployment configuration object, and the networking configuration object to the PaaS system to enable the PaaS system to build and deploy the application at one or more nodes of the PaaS system without user intervention.
Opening claim text (preview).
What is claimed is: 1. A method, comprising: receiving a request to create an application for execution on a Platform-as-a-Service (PaaS) system; identifying, by a processing device, at least one of a language or a framework corresponding to the application; identifying, by the processing device, a build image corresponding to the identified at least one of the language or the framework; constructing, by the processing device, a build configuration object, a deployment configuration object, and a networking configuration object for the application; and transmitting, by the processing device, the build configuration object, the deployment configuration object, and the networking configuration object to the PaaS system, wherein the PaaS system: links the build image with the build configuration object, the deployment configuration object, and the networking configuration object, builds the application based on the at least one of the identified language or framework, and deploys the application at one or more nodes of the PaaS system based at least on the deployment configuration object without user intervention. 2. The method of claim 1 , wherein the build image comprises: an ordered collection of root filesystem changes and execution parameters for use within a container runtime; and a union of layered filesystems stacked on top of each other. 3. The method of claim 1 , wherein the build configuration object, the deployment configuration object, and the networking configuration object enable the PaaS system to build and deploy the application at the one or more nodes of the PaaS system without any interaction with a user that requested to create the application. 4. The method of claim 1 , wherein the build configuration object comprises an object that defines a build process for the application, and wherein the build configuration object takes as inputs source files and the identified build image and generates an application image. 5. The method of claim 4 , wherein the deployment configuration object comprises an object that defines details of a deployment of the application image, and wherein the details of the deployment comprise at least one of replication control definitions, triggers for creating new deployments automatically, strategy for transitioning between deployments, or lifecycle hooks. 6. The method of claim 5 , wherein the deployment configuration object takes as an input the application image and, responsive to execution of the deployment configuration object by the processing device, the application image is executed on a deployment system of the PaaS system. 7. The method of claim 5 , wherein the networking configuration object enables the application as created by the deployment to be accessible by one or more end users, and wherein the networking configuration object detects exposed ports in the source files and uses a lowest numeric exposed port to generate a service that exposes the lowest numeric exposed port. 8. The method of claim 4 , wherein the deployment configuration object is further to: determine that the application image declares a volume; and match the volume to attached storage in the PaaS system, the attached storage to provide persistent storage for the application located at a file path defined by the volume declaration. 9. The method of claim 1 , wherein the build image is located in at least one of a local repository of an end user device originating the request to create the application, a remote repository, or a data store of the PaaS system, wherein at least one of the local repository or the remote repository comprises at least one of a single data structure or multiple data structures residing on one or more mass storage devices. 10. The method of claim 1 , wherein portions of the application execute on multiple nodes of the one or more nodes of the PaaS system. 11. A system, comprising: a memory; a processing device communicably coupled to the memory, the processing device to: receive a request to create an application for execution on a Platform-as-a-Service (PaaS) system; identify at least one of a language or a framework corresponding to the application; identify a build image corresponding to the identified at least one of the language or the framework; construct a build configuration object, a deployment configuration object, and a networking configuration object for the application; and transmit the build configuration object, the deployment configuration object, and the networking configuration object to the PaaS system, wherein the PaaS system: links the build image with the build configuration object, the deployment configuration object, and the networking configuration object, builds the application based on the at least one of the identified language or framework, and deploys the application at one or more nodes of the PaaS system based at least on the deployment configuration object without user intervention. 12. The system of claim 11 , wherein the build configuration object, the deployment configuration object, and the networking configuration object enable the multi-tenant PaaS system to build and deploy the application at the one or more nodes of the multi-tenant PaaS system without any interaction with an end user that requested to create the application. 13. The system of claim 11 , wherein the PaaS system comprises a PaaS master component to coordinate requests received from a client layer of the PaaS system with actions to be performed at a node layer of the PaaS system, the node layer comprising the one or more nodes, and wherein the requests comprise at least one of a request to create an application, a request to perform an action on a container, a request to deploy source code of an application, or a request to designate a system to host a remote repository. 14. The system of claim 13 , wherein the PaaS master component is to, responsive to receiving at least one of the requests: authenticate a user corresponding to the at least one request using an authentication service, wherein the authentication service comprises a custom authentication protocol; and subsequent to authentication of the user via the authentication service, utilize a server orchestration system of the PaaS system to collect configuration information of the one or more nodes of the node layer. 15. The system of claim 14 , wherein the one or more nodes each comprise a server orchestration system agent to track and collect the configuration information about a respective node of the one or more nodes and to perform a management action on the respective node, wherein the server orchestration system agent operates in tandem with the server orchestration system to send requests, queries, and commands between the respective node and the PaaS master component. 16. A non-transitory machine-readable storage medium including instructions that, when accessed by a processing device, cause the processing device to: receive a request to create an application for execution on a Platform-as-a-Service (PaaS) system; construct, by the processing device, a build configuration object, a deployment configuration object, and a networking configuration object for the application; transmit, by the processing device, the build configuration object, the deployment configuration object, and the networking configuration object; build, at the PaaS system, an application image for the application based on the build configuration object; link, at the PaaS system, a build image with the build configuration object, the deployment configuration object, and the n
Updates (security arrangements therefor G06F21/57) · CPC title
Version control (security arrangements therefor G06F21/57); Configuration management · CPC title
Creation or generation of source code · CPC title
Transformation of program code · CPC title
Software deployment · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.