Machine learning-based universal software component identification
US-12175241-B1 · Dec 24, 2024 · US
US9569204B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9569204-B2 |
| Application number | US-201213721651-A |
| Country | US |
| Kind code | B2 |
| Filing date | Dec 20, 2012 |
| Priority date | Sep 27, 2012 |
| Publication date | Feb 14, 2017 |
| Grant date | Feb 14, 2017 |
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.
Systems and methods of end-to-end continuous integration and verification of software are described. A system comprises, for example, a provisioning service module configure to automatically retrieve source code from a source code management system. The provisioning service module further generates one or more environments. A propagation management module is configured to package the retrieved source code into a deliverable and to automatically propagate the deliverable through a pipeline comprising the one or more environments.
Opening claim text (preview).
What is claimed is: 1. A system comprising: one or more processors and executable instructions accessible on a computer-readable medium that, when executed, configure the one or more processors to at least: automatically retrieve source code from a source code management system; generate one or more environments, each environment including a resource; package the retrieved source code into a deliverable that is propagated through a pipeline comprising the generated one or more environments including a first environment, a second environment, and a third environment; determine that a first version of the deliverable from the first environment and a second version of the deliverable from the second environment each passes a test executed within their respective environments; detect that the first and second versions of the deliverable are both a latest version of the deliverable that passes the test executed in both the first environment and the second environment; introduce a pipe to connect the first and second environments to the third environment; automatically propagate the latest version of the deliverable from the first and second environments to a third environment within the pipeline based on the detection of the first and second versions of the deliverable; and cause display of the propagation of the deliverable in a user interface. 2. The system of claim 1 , wherein the resource is a virtual machine. 3. The system of claim 1 , wherein the deliverable comprises an activation script to configure, start, and stop executable code within the deliverable. 4. The system of claim 1 , wherein the one or more processors are further configured to create the first environment of the one or more environments for retrieving and packaging the retrieved source code. 5. The system of claim 1 , wherein the one or more processors are further configured to determine that the retrieved source code is assigned a unit test and to generate the second environment of the one of more environments used to run the unit test. 6. The system of claim 1 , wherein the one or more processors are further configured to determine that the deliverable is allowed to pass to a next environment of the one or more environments based on pre-defined criteria. 7. The system of claim 1 , wherein the deliverable is tested in one of the one or more environments. 8. The system of claim 7 , wherein the testing comprises identifying the resources to perform the testing and wherein the one or more processors are further configured to add or remove resources from the one of the one or more environments based on the identification. 9. The system of claim 7 , wherein the testing comprises confirming that the deliverable in the one of the one or more environments is a newer version of the deliverable. 10. The system of claim 9 , wherein the newer version is identified based on propagation of the newer version of the deliverable in another environment of the one or more environments. 11. The system of claim 9 , wherein the newer version is identified based on the newer version of the deliverable being stored in a repository. 12. The system of claim 7 , wherein the testing comprises running an automated test suite assigned to the one environment of the one or more environments. 13. The system of claim 12 , wherein the one or more processors are further configured to determine a set of tests to run as part of the automated test suite based on test adequacy criteria. 14. The system of claim 13 , wherein the one or more processors are further configured to log results of the automated test suite. 15. The system of claim 7 , wherein the testing further comprises evaluating propagation criteria. 16. The system of claim 1 , wherein, when multiple pipes propagate the same deliverable, propagation occurring based on the deliverable versions matching. 17. A method comprising: automatically retrieving source code from a source code management system; generating one or more environments, each environment including a resource; packaging the retrieved source code into a deliverable that is propagated through a pipeline comprising the generated one or more environments including a first environment, a second environment, and a third environment; determining that a first version of the deliverable from the first environment and a second version of the deliverable from the second environment each passes a test executed within their respective environments; detecting that the first and second versions of the deliverable are both a latest version of the deliverable that passes the test executed in both the first environment and the second environment; introducing a pipe to connect the first and second environments to the third environment; automatically propagating, using one or more processors, the latest version of the deliverable from the first and second environments to a third environment within the pipeline based on the detection of the first and second versions of the deliverable; and causing display of the propagation of the deliverable in a user interface. 18. A non-transitory computer-readable medium having instructions embodied thereon, the instructions executable by one or more processors to perform operations comprising: automatically retrieving source code from a source code management system; generating one or more environments, each environment including a resource; packaging the retrieved source code into a deliverable that is propagated through a pipeline comprising the generated one or more environments including a first environment, a second environment, and a third environment; determining that a first version of the deliverable from the first environment and a second version of the deliverable from the second environment each passes a test executed within their respective environments; detecting that the first and second versions of the deliverable are both a latest version of the deliverable that passes the test executed in both the first environment and the second environment; introducing a pipe to connect the first and second environments to the third environment; automatically propagating the latest version of the deliverable from the first and-second environments to a third environment within the pipeline based on the detection of the first and second versions of the deliverable; and causing display of the propagation of the deliverable in a user interface.
Related publications grouped by family.
Answers are generated from the same data shown on this page.