Skip to content

Commit 6deb846

Browse files
authored
Ignore token characters when getting images from manifests (#53)
1 parent 426cd1a commit 6deb846

1 file changed

Lines changed: 21 additions & 20 deletions

File tree

internal/manifest/kubernetes.go

Lines changed: 21 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -250,26 +250,27 @@ func getCronJobImages(resource []byte) ([]string, error) {
250250
func getImagesFromContainers(containers []corev1.Container) []string {
251251
var images []string
252252

253-
var imgStringsToFilter []string
254-
var regexToFilter []string
255-
256-
//Work-around for mis-identified image parameters that include a URL
257-
imgStringsToFilter = append(imgStringsToFilter, "http://")
258-
imgStringsToFilter = append(imgStringsToFilter, "https://")
259-
260-
//Work around for Envoy/Istio log parameters (https://www.envoyproxy.io/docs/envoy/latest/start/quick-start/run-envoy.html#debugging-envoy)
261-
// Too many componetns, so just targetting log levels. Should be low instance of collusion between these values and actual image tags
262-
263-
imgStringsToFilter = append(imgStringsToFilter, ":trace")
264-
imgStringsToFilter = append(imgStringsToFilter, ":debug")
265-
imgStringsToFilter = append(imgStringsToFilter, ":info")
266-
imgStringsToFilter = append(imgStringsToFilter, ":warn")
267-
imgStringsToFilter = append(imgStringsToFilter, ":error")
268-
imgStringsToFilter = append(imgStringsToFilter, ":critical")
269-
imgStringsToFilter = append(imgStringsToFilter, ":off")
253+
imgStringsToFilter := []string{
254+
// Ignore token characters.
255+
"$",
256+
257+
// Ignore image parameters that include a URL.
258+
"http://",
259+
"https://",
260+
261+
// Ignore Envoy/Istio log parameters
262+
// (https://www.envoyproxy.io/docs/envoy/latest/start/quick-start/run-envoy.html#debugging-envoy)
263+
":trace",
264+
":debug",
265+
":info",
266+
":warn",
267+
":error",
268+
":critical",
269+
":off",
270+
}
270271

271272
// Looking for strings like 0.0.0.0:5332
272-
regexToFilter = append(regexToFilter, ".*\\d*\\.\\d*:\\d")
273+
regexToFilter := []string{".*\\d*\\.\\d*:\\d"}
273274

274275
for _, container := range containers {
275276
images = append(images, container.Image)
@@ -289,8 +290,8 @@ func getImagesFromContainers(containers []corev1.Container) []string {
289290
// Filter out specific strings that are mis-interpreted as container images
290291
var skiploop bool = false
291292

292-
for _, string := range imgStringsToFilter {
293-
if strings.Contains(image, string) {
293+
for _, imgString := range imgStringsToFilter {
294+
if strings.Contains(image, imgString) {
294295
skiploop = true
295296
}
296297
}

0 commit comments

Comments
 (0)