keeping all available tags
parent
7075a20c02
commit
2c3d72e627
|
@ -109,9 +109,26 @@ func (p *DefaultProviders) TrackedImages() ([]*types.TrackedImage, error) {
|
|||
trackedImages = append(trackedImages, ti...)
|
||||
}
|
||||
|
||||
log.WithFields(log.Fields{
|
||||
"images": trackedImages,
|
||||
}).Debug("tracked images")
|
||||
|
||||
return trackedImages, nil
|
||||
}
|
||||
|
||||
func appendIfDoesntExist(tags []string, tag string) []string {
|
||||
found := false
|
||||
for _, t := range tags {
|
||||
if t == tag {
|
||||
found = true
|
||||
}
|
||||
}
|
||||
if !found {
|
||||
return append(tags, tag)
|
||||
}
|
||||
return tags
|
||||
}
|
||||
|
||||
func appendImage(images []*types.TrackedImage, new *types.TrackedImage) []*types.TrackedImage {
|
||||
|
||||
newSemverTag, err := semver.NewVersion(new.Image.Tag())
|
||||
|
@ -120,6 +137,8 @@ func appendImage(images []*types.TrackedImage, new *types.TrackedImage) []*types
|
|||
return append(images, new)
|
||||
}
|
||||
|
||||
new.Tags = appendIfDoesntExist(new.Tags, new.Image.Tag())
|
||||
|
||||
// looking for a semver image
|
||||
idx, ok := lookupSemverImageIdx(images, new)
|
||||
if !ok || len(images) == 0 {
|
||||
|
@ -158,6 +177,8 @@ func appendImage(images []*types.TrackedImage, new *types.TrackedImage) []*types
|
|||
images[idx].Image = new.Image
|
||||
}
|
||||
|
||||
images[idx].Tags = appendIfDoesntExist(images[idx].Tags, new.Image.Tag())
|
||||
|
||||
return images
|
||||
}
|
||||
|
||||
|
|
|
@ -33,7 +33,9 @@ func Test_appendImage(t *testing.T) {
|
|||
images: []*types.TrackedImage{},
|
||||
new: testingUtils.GetTrackedImage("karolisr/webhook-demo:latest"),
|
||||
},
|
||||
want: []*types.TrackedImage{testingUtils.GetTrackedImage("karolisr/webhook-demo:latest")},
|
||||
want: []*types.TrackedImage{
|
||||
testingUtils.GetTrackedImage("karolisr/webhook-demo:latest"),
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "new semver",
|
||||
|
@ -60,6 +62,7 @@ func Test_appendImage(t *testing.T) {
|
|||
"dev": "1.5.0-dev",
|
||||
},
|
||||
Meta: make(map[string]string),
|
||||
Tags: []string{"1.2.3", "1.5.0-dev"},
|
||||
},
|
||||
},
|
||||
},
|
||||
|
@ -73,6 +76,7 @@ func Test_appendImage(t *testing.T) {
|
|||
"prod": "1.2.3-prod",
|
||||
},
|
||||
Meta: make(map[string]string),
|
||||
Tags: []string{"1.2.3-prod"},
|
||||
},
|
||||
},
|
||||
new: testingUtils.GetTrackedImage("karolisr/webhook-demo:1.5.0-dev"),
|
||||
|
@ -85,6 +89,7 @@ func Test_appendImage(t *testing.T) {
|
|||
"prod": "1.2.3-prod",
|
||||
},
|
||||
Meta: make(map[string]string),
|
||||
Tags: []string{"1.2.3-prod", "1.5.0-dev"},
|
||||
},
|
||||
},
|
||||
},
|
||||
|
@ -101,6 +106,7 @@ func Test_appendImage(t *testing.T) {
|
|||
"dev": "1.5.0-dev",
|
||||
},
|
||||
Meta: make(map[string]string),
|
||||
Tags: []string{"1.5.0-dev"},
|
||||
},
|
||||
},
|
||||
},
|
||||
|
@ -128,6 +134,7 @@ func Test_appendImage(t *testing.T) {
|
|||
"dev": "1.5.0-dev",
|
||||
},
|
||||
Meta: make(map[string]string),
|
||||
Tags: []string{"1.5.0-dev"},
|
||||
},
|
||||
},
|
||||
},
|
||||
|
@ -151,6 +158,7 @@ func Test_appendImage(t *testing.T) {
|
|||
"prod": "1.5.0-prod",
|
||||
},
|
||||
Meta: make(map[string]string),
|
||||
Tags: []string{"1.5.0-prod"},
|
||||
},
|
||||
},
|
||||
new: testingUtils.GetTrackedImage("karolisr/webhook-demo:1.7.0-dev"),
|
||||
|
@ -173,6 +181,7 @@ func Test_appendImage(t *testing.T) {
|
|||
"dev": "1.7.0-dev",
|
||||
},
|
||||
Meta: make(map[string]string),
|
||||
Tags: []string{"1.5.0-prod", "1.7.0-dev"},
|
||||
},
|
||||
},
|
||||
},
|
||||
|
|
Loading…
Reference in New Issue