Archival format for incremental deployments and version control

US10089108B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-10089108-B1
Application numberUS-201514742693-A
CountryUS
Kind codeB1
Filing dateJun 17, 2015
Priority dateJun 17, 2015
Publication dateOct 2, 2018
Grant dateOct 2, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Computing systems executing applications may receive updates to the application from an update service. The update service may generate an update bundle including resources of the application. The update bundle may further include a manifest containing information identifying the resources and a location for the resources to be stored within the computing system. Additionally, the computing system may maintain a cache of previously received resources.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method, comprising: obtaining an update bundle that includes: identification of a build version of a software development project; a set of resources associated with the software development project, the set of resources including source code associated with the build version; and a manifest comprising: a data structure corresponding to the build version; location information for each resource of the set of resources; and dependency information associated with a dependency between a first resource of the set of resources and another resource of the set of resources; processing the update bundle by at least: determining, based at least in part on the data structure indicating prior processing of one or more previously received update bundles, a first set of the source code associated with the set of resources from a first cache associated with the prior processing; retrieving, based at least in part on the location information, a different second set of the source code associated with the set of resources; storing the first set and the second set of the source code in a second cache; and generating an update object based at least in part on the dependency information of the manifest and the first set and second set of the source code in the second cache; and executing, on a computer system including the software development project, the update object. 2. The computer-implemented method of claim 1 , wherein the computer-implemented method further comprises transmitting information corresponding to a version of at least a portion of resources stored in the first cache, wherein the information causes determination, by an external update service, of a particular version of at least one resource of the set of resources contained in the update bundle. 3. The computer-implemented method of claim 1 , wherein executing the update object further comprises generating a file system on a storage device of the computer system such that an application associated with the software development project utilizes the file system during execution of the application. 4. The computer-implemented method of claim 1 , wherein the update bundle is an archive data object containing the set of resources in a compressed form. 5. A system, comprising: a cache containing one or more resources associated with a software development project, the one or more resources including source code from a source code repository; and memory to store instructions, if executed by one or more processors, cause the system to at least: receive, at an application, an update bundle corresponding to a newer build version of the software development project than that of the one or more resources in the cache, and containing: a set of resources; and a manifest identifying: location information for each resource of the set of resources; and dependency information associated with a dependency between a first resource of the set of resources and another resource of the set of resources; determine, based at least in part on the update bundle, different source code associated with the build version; add the different source code to the cache; and update, based at least in part on the dependency information of the manifest and the one or more resources and the different source code stored in the cache, the software development project to the newer build version. 6. The system of claim 5 , wherein the manifest is a data structure containing at least key-value pairs, where the key indicates identification information for a particular resource of the set of resources and the value indicates location information for the particular resource of the set of resources. 7. The system of claim 5 , wherein the update bundle comprises a minimum amount of resources associated with the software development project such that a fleet of computing systems of which the system is a member are updateable using the build version. 8. The system of claim 5 , wherein each resource of the set of resources is identified based at least in part on identification information obtained from the source code repository. 9. The system of claim 5 , wherein the memory further comprises instructions that, if executed by the one or more processors, cause the system to restore a previous version of the software development project based at least in part on the one or more resources and a previous manifest associated with the previous version of the software development project contained in the cache. 10. The system of claim 5 , wherein the memory further comprises instructions that, if executed by the one or more processors, cause the system to transmit, to a storage device, version information associated with the one or more resources contained in the cache, wherein the version information is configured to enable an update service external to the system to determine a particular version of the set of resources to include in the update bundle. 11. The system of claim 5 , wherein the manifest further comprises metadata associated with the set of resources contained in the update bundle, wherein metadata is configured to cause the system to modify one or more attributes of a particular resource of the set of resources including the source code from the source code repository. 12. The system of claim 11 , wherein the metadata associated with the set of resources includes a set of permissions corresponding to the set of resources, wherein the set of permissions corresponding to the set of resources control access, by the system, to the set of resources including the source code from the source code repository. 13. A non-transitory computer-readable storage medium having stored thereon executable instructions that, if executed by one or more processors of a computer system, cause the computer system to at least: obtain an update bundle corresponding to a build version of a software development project, the update bundle including: one or more resources, and a manifest identifying: location information for source code associated with the one or more resources; and dependency information associated with a dependency between a first resource of the one or more resources and another resource of the one or more resources; determine a first subset of the source code obtained in a previously received update bundle corresponding to a previous build version; determine, based at least in part on the update bundle and the first subset of the source code, a different second subset of the source code; store the first and second subsets of the source code in a storage device of the computer system; and update the software development project to the build version based at least in part on the dependency information of the manifest and the stored first and second subsets of the source code. 14. The non-transitory computer-readable storage medium of claim 13 , wherein the instructions that cause the computer system to update the computer system further include instructions that cause the computer system to update the software development project based at least in part on journaling information obtained from an update service separate from the computer system, where the journaling information indicates a third subset of the source code not included in a previous build version update bundle. 15. The non-transitory computer-readable storage medium of claim 13 , wherein the instructions that cause the computer system to obtain the update bundle further include instructions that cause the computer system to obtain the update bundle based at least in part o

Assignees

Inventors

Classifications

  • Updates (security arrangements therefor G06F21/57) · CPC title

  • G06F8/71Primary

    Version control (security arrangements therefor G06F21/57); Configuration management · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10089108B1 cover?
Computing systems executing applications may receive updates to the application from an update service. The update service may generate an update bundle including resources of the application. The update bundle may further include a manifest containing information identifying the resources and a location for the resources to be stored within the computing system. Additionally, the computing sys…
Who is the assignee on this patent?
Amazon Tech Inc
What technology area does this patent fall under?
Primary CPC classification G06F8/71. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Oct 02 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).