mirror of
https://github.com/anchore/syft.git
synced 2026-02-12 10:36:45 +01:00
fix: Follow symlinks when searching for globs in all-layers scope (#1221)
This commit is contained in:
parent
dd7c654ed0
commit
4d2f18218c
@ -126,7 +126,7 @@ func (r *allLayersResolver) FilesByGlob(patterns ...string) ([]Location, error)
|
|||||||
|
|
||||||
for _, pattern := range patterns {
|
for _, pattern := range patterns {
|
||||||
for idx, layerIdx := range r.layers {
|
for idx, layerIdx := range r.layers {
|
||||||
results, err := r.img.Layers[layerIdx].Tree.FilesByGlob(pattern, filetree.FollowBasenameLinks, filetree.DoNotFollowDeadBasenameLinks)
|
results, err := r.img.Layers[layerIdx].SquashedTree.FilesByGlob(pattern, filetree.FollowBasenameLinks, filetree.DoNotFollowDeadBasenameLinks)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fmt.Errorf("failed to resolve files by glob (%s): %w", pattern, err)
|
return nil, fmt.Errorf("failed to resolve files by glob (%s): %w", pattern, err)
|
||||||
}
|
}
|
||||||
|
|||||||
20
test/integration/all_layers_squashed_comparison_test.go
Normal file
20
test/integration/all_layers_squashed_comparison_test.go
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
package integration
|
||||||
|
|
||||||
|
import (
|
||||||
|
"testing"
|
||||||
|
|
||||||
|
"github.com/anchore/syft/syft/source"
|
||||||
|
)
|
||||||
|
|
||||||
|
func Test_AllLayersIncludesSquashed(t *testing.T) {
|
||||||
|
// This is a verification test for issue #894 (https://github.com/anchore/syft/issues/894)
|
||||||
|
allLayers, _ := catalogFixtureImage(t, "image-suse-all-layers", source.AllLayersScope, nil)
|
||||||
|
squashed, _ := catalogFixtureImage(t, "image-suse-all-layers", source.SquashedScope, nil)
|
||||||
|
|
||||||
|
lenAllLayers := len(allLayers.Artifacts.PackageCatalog.Sorted())
|
||||||
|
lenSquashed := len(squashed.Artifacts.PackageCatalog.Sorted())
|
||||||
|
|
||||||
|
if lenAllLayers < lenSquashed {
|
||||||
|
t.Errorf("squashed has more packages than all-layers: %d > %d", lenSquashed, lenAllLayers)
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,2 @@
|
|||||||
|
FROM registry.suse.com/suse/sle15:15.3.17.20.20
|
||||||
|
RUN zypper in -y wget
|
||||||
Loading…
x
Reference in New Issue
Block a user