Skip to content

Commit

Permalink
Ignore token characters when getting images from manifests (#53)
Browse files Browse the repository at this point in the history
  • Loading branch information
jpreese authored Dec 20, 2021
1 parent 426cd1a commit 6deb846
Showing 1 changed file with 21 additions and 20 deletions.
41 changes: 21 additions & 20 deletions internal/manifest/kubernetes.go
Original file line number Diff line number Diff line change
Expand Up @@ -250,26 +250,27 @@ func getCronJobImages(resource []byte) ([]string, error) {
func getImagesFromContainers(containers []corev1.Container) []string {
var images []string

var imgStringsToFilter []string
var regexToFilter []string

//Work-around for mis-identified image parameters that include a URL
imgStringsToFilter = append(imgStringsToFilter, "http://")
imgStringsToFilter = append(imgStringsToFilter, "https://")

//Work around for Envoy/Istio log parameters (https://www.envoyproxy.io/docs/envoy/latest/start/quick-start/run-envoy.html#debugging-envoy)
// Too many componetns, so just targetting log levels. Should be low instance of collusion between these values and actual image tags

imgStringsToFilter = append(imgStringsToFilter, ":trace")
imgStringsToFilter = append(imgStringsToFilter, ":debug")
imgStringsToFilter = append(imgStringsToFilter, ":info")
imgStringsToFilter = append(imgStringsToFilter, ":warn")
imgStringsToFilter = append(imgStringsToFilter, ":error")
imgStringsToFilter = append(imgStringsToFilter, ":critical")
imgStringsToFilter = append(imgStringsToFilter, ":off")
imgStringsToFilter := []string{
// Ignore token characters.
"$",

// Ignore image parameters that include a URL.
"http://",
"https://",

// Ignore Envoy/Istio log parameters
// (https://www.envoyproxy.io/docs/envoy/latest/start/quick-start/run-envoy.html#debugging-envoy)
":trace",
":debug",
":info",
":warn",
":error",
":critical",
":off",
}

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

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

for _, string := range imgStringsToFilter {
if strings.Contains(image, string) {
for _, imgString := range imgStringsToFilter {
if strings.Contains(image, imgString) {
skiploop = true
}
}
Expand Down

0 comments on commit 6deb846

Please sign in to comment.