IP Library › Granted Patent US 9,898,258
Granted Patent B2
US 9,898,258 · App. 15/168,480 · Granted Feb 20, 2018

Versioning of build environment information

Inventors: Si Bin Fan (Beijing, CN); Chan Gao (Beijing, CN); Peng Hui Jiang (Beijing, CN); Miao Liu (Beijing, CN); Su Liu (Austin, TX); Chih-Wen Su (Taipei, TW); Yan Sun (Beijing, TW); Wen Yin (Beijing, CN)
Assignee: International Business Machines Corporation
G06F8/30
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,898,258
App. No.
15/168,480
Granted
Feb 20, 2018
Kind
B2
Abstract

A method includes collecting information corresponding to a build environment in which a build result of a source code is generated, the collected information including one or more predefined build environment factors, and storing, in a repository, the collected information as a version of the build environment.

Claims (55)

1. A method comprising:

receiving, by a computer, a build request for a source code;

in response to the received build request, generating a build result from the source code;

collecting information corresponding to a build environment, wherein the build result of the source code is generated in the build environment, the collected information comprising one or more predefined build environment factors;

storing, in a build environment repository, the collected information as a version of the build environment;

assigning a weigh to each of the one or more predefined build environment factors, wherein the assigned weigh is defined by a user according to a relevance of each of the one or more predefined build environment factors;

based on the assigned weigh being above a predefined weigh threshold, filtering the collected information such that only collected information corresponding to a predefined build environment factor having an assigned weigh higher than the predefined weigh threshold is stored;

storing, in the build environment repository, the filtered information; and

determining a difference between the filtered information and information corresponding to another build environment in which a previous build result was generated.

2. The method of claim 1 , further comprising:

storing, in the build environment repository, the difference between the filtered information and the information corresponding to another build environment as a version of the build environment, wherein a required storage space of the difference between the filtered information and the information corresponding to another build environment is less than a required storage space of a complete record of the filtered information.

3. The method of claim 1 , wherein filtering the collected information comprises:

obtaining information regarding at least one predefined build environment factor selected from the one or more predefined build environment factors.

4. The method of claim 1 , further comprising:

filtering the collected information based on at least one predefined build environment factor selected by the user via a user interface such that the filtered information comprises information regarding the at least one predefined build environment factor only.

5. The method of claim 1 , wherein the information corresponding to another build environment is obtained from the build environment repository.

6. The method of claim 1 , wherein the difference between the filtered information and the information corresponding to another build environment is stored as a list comprising one or more entries, each of which records a change in at least one of the one or more predefined build environment factors, and wherein at least one of the one or more entries comprises a recommendation for addressing a problem due to the change in the at least one of the one or more predefined build environment factors.

7. The method of claim 1 , wherein the one or more predefined build environment factors comprises at least one of a platform, an operating system, a patch of operating system, a compiler, a linker, a runtime of compiler, libraries used by compiler and linker, a hardware configuration of build machine, or preferences of build machine.

8. A computer system comprising:

one or more processors, one or more computer-readable memories, one or more computer-readable tangible storage devices, and program instructions stored on at least one of the one or more storage devices for execution by at least one of the one or more processors via at least one of the one or more memories, wherein the computer system is capable of performing a method comprising:

receiving, by a computer, a build request for a source code;

in response to the received build request, generating a build result from the source code;

collecting information corresponding to a build environment, wherein the build result of the source code is generated in the build environment, the collected information comprising one or more predefined build environment factors;

storing, in a build environment repository, the collected information as a version of the build environment;

assigning a weigh to each of the one or more predefined build environment factors, wherein the assigned weigh is defined by a user according to a relevance of each of the one or more predefined build environment factors;

based on the assigned weigh being above a predefined weigh threshold, filtering the collected information such that only collected information corresponding to a predefined build environment factor having an assigned weigh higher than the predefined weigh threshold is stored;

storing, in the build environment repository, the filtered information; and

determining a difference between the filtered information and information corresponding to another build environment in which a previous build result was generated.

9. The computer system of claim 8 , further comprising:

storing, in the build environment repository, the difference between the filtered information and the information corresponding to another build environment as a version of the build environment, wherein a required storage space of the difference between the filtered information and the information corresponding to another build environment is less than a required storage space of a complete record of the filtered information.

10. The computer system of claim 8 , wherein filtering the collected information comprises:

obtaining information regarding at least one predefined build environment factor selected from the one or more predefined build environment factors.

11. The computer system of claim 8 , further comprising:

filtering the collected information based on at least one predefined build environment factor selected by the user via a user interface such that the filtered information comprises information regarding the at least one predefined build environment factor only.

12. The computer system of claim 8 , wherein the information corresponding to another build environment is obtained from the build environment repository.

13. The computer system of claim 8 , wherein the difference between the filtered information and the information corresponding to another build environment is stored as a list comprising one or more entries, each of which records a change in at least one of the one or more predefined build environment factors, and wherein at least one of the one or more entries comprises a recommendation for addressing a problem due to the change in the at least one of the one or more predefined build environment factors.

14. The computer system of claim 8 , wherein the one or more predefined build environment factors comprises at least one of a platform, an operating system, a patch of operating system, a compiler, a linker, a runtime of compiler, libraries used by compiler and linker, a hardware configuration of build machine, or preferences of build machine.

15. A computer program product comprising:

one or more computer readable storage media and program instructions stored on at least one of the one or more computer readable storage media, the program instructions executable by a computer to cause the computer to perform a method comprising:

receiving, by a computer, a build request for a source code;

in response to the received build request, generating a build result from the source code;

collecting information corresponding to a build environment, wherein the build result of the source code is generated in the build environment, the collected information comprising one or more predefined build environment factors;

storing, in a build environment repository, the collected information as a version of the build environment;

assigning a weigh to each of the one or more predefined build environment factors, wherein the assigned weigh is defined by a user according to a relevance of each of the one or more predefined build environment factors;

based on the assigned weigh being above a predefined weigh threshold, filtering the collected information such that only collected information corresponding to a predefined build environment factor having an assigned weigh higher than the predefined weigh threshold is stored;

storing, in the build environment repository, the filtered information; and

determining a difference between the filtered information and information corresponding to another build environment in which a previous build result was generated.

16. The computer program product of claim 15 , further comprising:

storing, in the build environment repository, the difference between the filtered information and the information corresponding to another build environment as a version of the build environment, wherein a required storage space of the difference between the filtered information and the information corresponding to another build environment is less than a required storage space of a complete record of the filtered information.

17. The computer program product of claim 15 , wherein filtering the collected information comprises:

obtaining information regarding at least one predefined build environment factor selected from the one or more predefined build environment factors.

18. The computer program product of claim 15 , further comprising:

filtering the collected information based on at least one predefined build environment factor selected by the user via a user interface such that the filtered information comprises information regarding the at least one predefined build environment factor only.

19. The computer program product of claim 15 , wherein the information corresponding to another build environment is obtained from the build environment repository.

20. The computer program product of claim 15 , wherein the difference between the filtered information and the information corresponding to another build environment is stored as a list comprising one or more entries, each of which records a change in at least one of the one or more predefined build environment factors, and wherein at least one of the one or more entries comprises a recommendation for addressing a problem due to the change in the at least one of the one or more predefined build environment factors.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 31, 2016
From: FAN, SI BIN; GAO, CHAN; JIANG, PENG HUI; LIU, MIAO; LIU, SU; SU, CHIH-WEN; SUN, YAN; YIN, WEN
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 038748/0981 →
Continuity (1)
Related Publication 20170344345A1 · Nov 30, 2017