Layer identification and dependency analysis for management of images
First Claim
1. A computer-implemented method, comprising:
- extracting multiple layer files from an input image, wherein said input image is selected from a containerization platform repository, and wherein said extracting is carried out by at least one computing device;
identifying one or more software components in each of the multiple extracted layer files, wherein said identifying is carried out by the at least one computing device, and wherein said identifying comprises a first technique comprising;
processing each word in each of the multiple extracted layer file names;
constructing a word cloud that measures a frequency of occurrence of each unique word across the multiple extracted layer file names; and
identifying a pre-determined number of most frequently used words across the multiple extracted layer file names as software components;
manipulating the input image based on said identifying and one or more user-defined parameters, wherein said manipulating comprises (i) selecting a sub-set of one or more of the multiple layer files for retention, (ii) removing a sub-set of one or more of the multiple layer files, and (iii) modifying one or more of the layer files selected for retention and/or inserting one or more new layer files in place of one or more of the removed layer files, wherein said manipulating is carried out by the at least one computing device; and
outputting a modified version of the input image subsequent to said manipulating, wherein said modified version of the input image includes the sub-set of one or more of the multiple layer files selected for retention and any new layer files inserted in place of one or more of the removed layer files, wherein said outputting is carried out by the at least one computing device;
wherein (i) said extracting, (ii) said identifying, (iii) said manipulating, and (iv) said outputting are carried out offline.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods, systems, and computer program products for software identification, dependency analysis, and manipulation of file system layers of container images are provided herein. A computer-implemented method includes extracting multiple layer files from an input image; identifying software components in each of the extracted layer files; manipulating the input image based on said identifying and user-defined parameters, wherein said manipulating comprises (i) selecting a sub-set of the layer files for retention, (ii) removing a sub-set of the layer files, and (iii) modifying one or more of the layer files selected for retention and/or inserting one or more new layer files in place of one or more of the removed layer files; and outputting a modified version of the input image that includes the sub-set of the multiple layer files selected for retention and any new layer files inserted in place of removed layer files.
20 Citations
18 Claims
-
1. A computer-implemented method, comprising:
-
extracting multiple layer files from an input image, wherein said input image is selected from a containerization platform repository, and wherein said extracting is carried out by at least one computing device; identifying one or more software components in each of the multiple extracted layer files, wherein said identifying is carried out by the at least one computing device, and wherein said identifying comprises a first technique comprising; processing each word in each of the multiple extracted layer file names; constructing a word cloud that measures a frequency of occurrence of each unique word across the multiple extracted layer file names; and identifying a pre-determined number of most frequently used words across the multiple extracted layer file names as software components; manipulating the input image based on said identifying and one or more user-defined parameters, wherein said manipulating comprises (i) selecting a sub-set of one or more of the multiple layer files for retention, (ii) removing a sub-set of one or more of the multiple layer files, and (iii) modifying one or more of the layer files selected for retention and/or inserting one or more new layer files in place of one or more of the removed layer files, wherein said manipulating is carried out by the at least one computing device; and outputting a modified version of the input image subsequent to said manipulating, wherein said modified version of the input image includes the sub-set of one or more of the multiple layer files selected for retention and any new layer files inserted in place of one or more of the removed layer files, wherein said outputting is carried out by the at least one computing device; wherein (i) said extracting, (ii) said identifying, (iii) said manipulating, and (iv) said outputting are carried out offline. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A computer program product, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a device to cause the device to:
-
extract multiple layer files from an input image, wherein said input image is selected from a containerization platform repository; identify one or more software components in each of the multiple extracted layer files, wherein said identifying is carried out by the at least one computing device, and wherein said identifying comprises a first technique comprising; processing each word in each of the multiple extracted layer file names; constructing a word cloud that measures a frequency of occurrence of each unique word across the multiple extracted layer file names; and identifying a pre-determined number of most frequently used words across the multiple extracted layer file names as software components; manipulate the input image based on said identifying and one or more user-defined parameters, wherein said manipulating comprises (i) selecting a sub-set of one or more of the multiple layer files for retention, (ii) removing a sub-set of one or more of the multiple layer files, and (iii) modifying one or more of the layer files selected for retention and/or inserting one or more new layer files in place of one or more of the removed layer files; and output a modified version of the input image subsequent to said manipulating, wherein said modified version of the input image includes the sub-set of one or more of the multiple layer files selected for retention and any new layer files inserted in place of one or more of the removed layer files; wherein (i) said extracting, (ii) said identifying, (iii) said manipulating, and (iv) said outputting are carried out offline.
-
-
15. A system comprising:
-
a memory; and at least one processor coupled to the memory and configured for; extracting multiple layer files from an input image, wherein said input image is selected from a containerization platform repository; identifying one or more software components in each of the multiple extracted layer files, wherein said identifying is carried out by the at least one computing device, and wherein said identifying comprises a first technique comprising; processing each word in each of the multiple extracted layer file names; constructing a word cloud that measures a frequency of occurrence of each unique word across the multiple extracted layer file names; and identifying a pre-determined number of most frequently used words across the multiple extracted layer file names as software components; manipulating the input image based on said identifying and one or more user-defined parameters, wherein said manipulating comprises (i) selecting a sub-set of one or more of the multiple layer files for retention, (ii) removing a sub-set of one or more of the multiple layer files, and (iii) modifying one or more of the layer files selected for retention and/or inserting one or more new layer files in place of one or more of the removed layer files; and outputting a modified version of the input image subsequent to said manipulating, wherein said modified version of the input image includes the sub-set of one or more of the multiple layer files selected for retention and any new layer files inserted in place of one or more of the removed layer files; wherein (i) said extracting, (ii) said identifying, (iii) said manipulating, and (iv) said outputting are carried out offline.
-
-
16. A computer-implemented method, comprising:
-
extracting multiple layer files from an input image, wherein said input image is selected from a containerization platform repository, and wherein said extracting is carried out by at least one computing device; identifying one or more software components in each of the multiple extracted layer files, wherein said identifying is carried out by the at least one computing device, and wherein said identifying comprises; processing each word in each of the multiple extracted layer file names; constructing a word cloud that measures a frequency of occurrence of each unique word across the multiple extracted layer file names; and identifying a pre-determined number of most frequently used words across the multiple extracted layer file names as software components; determining a version identifier associated with each of the one or more software components identified in each of the multiple extracted layer files, wherein said determining is carried out by the at least one computing device; manipulating the input image based on (i) said identifying, (ii) said determining, and (iii) one or more user-defined parameters, wherein said manipulating is carried out by the at least one computing device, and wherein said manipulating comprises; selecting a sub-set of one or more of the multiple layer files for retention; removing a sub-set of one or more of the multiple layer files; and modifying one or more of the layer files selected for retention and/or inserting one or more new layer files in place of one or more of the removed layer files; and outputting a modified version of the input image subsequent to said manipulating, wherein said modified version of the input image includes the sub-set of one or more of the multiple layer files selected for retention and any new layer files inserted in place of one or more of the removed layer files, wherein said outputting is carried out by the at least one computing device; wherein (i) said extracting, (ii) said identifying, (iii) said determining, (iv) said manipulating, and (v) said outputting are carried out offline. - View Dependent Claims (17, 18)
-
Specification