Skip to content

Commit

Permalink
Suppress diff for COS images (#4562)
Browse files Browse the repository at this point in the history
Co-authored-by: Marius Kintel <kintel@google.com>
  • Loading branch information
melinath and kintel committed Mar 4, 2021
1 parent 946da9b commit 74aed18
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 0 deletions.
17 changes: 17 additions & 0 deletions mmv1/templates/terraform/constants/disk.erb
Original file line number Diff line number Diff line change
Expand Up @@ -120,6 +120,10 @@ func diskImageFamilyEquals(imageName, familyName string) bool {
return true
}
if suppressCosFamilyDiff(imageName, familyName) {
return true
}
if suppressWindowsSqlFamilyDiff(imageName, familyName) {
return true
}
Expand All @@ -144,6 +148,19 @@ func suppressCanonicalFamilyDiff(imageName, familyName string) bool {
return false
}
// e.g. image: cos-NN-*, family: cos-NN-lts
func suppressCosFamilyDiff(imageName, familyName string) bool {
parts := cosLtsImage.FindStringSubmatch(imageName)
if len(parts) == 2 {
f := fmt.Sprintf("cos-%s-lts", parts[1])
if f == familyName {
return true
}
}
return false
}
// e.g. image: sql-2017-standard-windows-2016-dc-v20180109, family: sql-std-2017-win-2016
// e.g. image: sql-2017-express-windows-2012-r2-dc-v20180109, family: sql-exp-2017-win-2012-r2
func suppressWindowsSqlFamilyDiff(imageName, familyName string) bool {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,11 @@ func TestDiskImageDiffSuppress(t *testing.T) {
New: "ubuntu-minimal-1804-lts",
ExpectDiffSuppress: true,
},
"matching unconventional image family - cos": {
Old: "https://www.googleapis.com/compute/v1/projects/cos-cloud/global/images/cos-85-13310-1209-17",
New: "cos-85-lts",
ExpectDiffSuppress: true,
},
"different image family": {
Old: "https://www.googleapis.com/compute/v1/projects/debian-cloud/global/images/debian-8-jessie-v20171213",
New: "family/debian-7",
Expand Down
1 change: 1 addition & 0 deletions mmv1/third_party/terraform/utils/image.go
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ var (

windowsSqlImage = regexp.MustCompile("^sql-(?:server-)?([0-9]{4})-([a-z]+)-windows-(?:server-)?([0-9]{4})(?:-r([0-9]+))?-dc-v[0-9]+$")
canonicalUbuntuLtsImage = regexp.MustCompile("^ubuntu-(minimal-)?([0-9]+)-")
cosLtsImage = regexp.MustCompile("^cos-([0-9]+)-")
)

// built-in projects to look for images/families containing the string
Expand Down

0 comments on commit 74aed18

Please sign in to comment.