Skip to content

Commit

Permalink
Merge pull request #384 from hendrikKahl/improvements
Browse files Browse the repository at this point in the history
minor improvements to testrunner
  • Loading branch information
hendrikKahl authored Dec 16, 2021
2 parents 41a00ff + 31c27c3 commit c68a3fe
Show file tree
Hide file tree
Showing 3 changed files with 87 additions and 1 deletion.
14 changes: 14 additions & 0 deletions pkg/shootflavors/flavors.go
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,20 @@ func Validate(identifier string, flavor *common.ShootFlavor) error {
}
}

if len(flavor.AdditionalLocations) != 0 {
for i, location := range flavor.AdditionalLocations {
if location.Type == "" {
allErrs = multierror.Append(allErrs, fmt.Errorf("%s.additionalLocations[%d].type: value has to be defined", identifier, i))
}
if location.Repo == "" {
allErrs = multierror.Append(allErrs, fmt.Errorf("%s.additionalLocations[%d].repo: value has to be defined", identifier, i))
}
if location.Revision == "" {
allErrs = multierror.Append(allErrs, fmt.Errorf("%s.additionalLocations[%d].revision: value has to be defined", identifier, i))
}
}
}

return util.ReturnMultiError(allErrs)
}

Expand Down
72 changes: 72 additions & 0 deletions pkg/shootflavors/flavors_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -129,6 +129,78 @@ var _ = Describe("flavor test", func() {
))
})

It("should fail with an incomplete additional location missing 'repo'", func() {
rawFlavors := []*common.ShootFlavor{
{
Provider: common.CloudProviderGCP,
AdditionalLocations: []common.AdditionalLocation{{Type: "git", Revision: "1.2.3"}},
KubernetesVersions: common.ShootKubernetesVersionFlavor{
Versions: &[]gardencorev1beta1.ExpirableVersion{
{
Version: "1.15",
},
},
},
},
}
_, err := New(rawFlavors)
Expect(err).To(HaveOccurred())
})

It("should fail with an incomplete additional location missing 'revision'", func() {
rawFlavors := []*common.ShootFlavor{
{
Provider: common.CloudProviderGCP,
AdditionalLocations: []common.AdditionalLocation{{Type: "git", Repo: "github.com/org/name"}},
KubernetesVersions: common.ShootKubernetesVersionFlavor{
Versions: &[]gardencorev1beta1.ExpirableVersion{
{
Version: "1.15",
},
},
},
},
}
_, err := New(rawFlavors)
Expect(err).To(HaveOccurred())
})

It("should fail with an incomplete additional location missing 'type'", func() {
rawFlavors := []*common.ShootFlavor{
{
Provider: common.CloudProviderGCP,
AdditionalLocations: []common.AdditionalLocation{{Repo: "github.com/org/name", Revision: "1.2.3"}},
KubernetesVersions: common.ShootKubernetesVersionFlavor{
Versions: &[]gardencorev1beta1.ExpirableVersion{
{
Version: "1.15",
},
},
},
},
}
_, err := New(rawFlavors)
Expect(err).To(HaveOccurred())
})

It("should fail with an incomplete additional location missing multiple fields", func() {
rawFlavors := []*common.ShootFlavor{
{
Provider: common.CloudProviderGCP,
AdditionalLocations: []common.AdditionalLocation{{}},
KubernetesVersions: common.ShootKubernetesVersionFlavor{
Versions: &[]gardencorev1beta1.ExpirableVersion{
{
Version: "1.15",
},
},
},
},
}
_, err := New(rawFlavors)
Expect(err).To(HaveOccurred())
})

It("should return one shoot with disabled allowPrivilegeContainers", func() {
rawFlavors := []*common.ShootFlavor{
{
Expand Down
2 changes: 1 addition & 1 deletion pkg/testrunner/template/renderer.go
Original file line number Diff line number Diff line change
Expand Up @@ -209,7 +209,7 @@ func parseTestrunsFromChart(log logr.Logger, files map[string]string) []*v1beta1
for filename, file := range files {
tr, err := testmachinery.ParseTestrun([]byte(file))
if err != nil {
log.Info(fmt.Sprintf("cannot parse rendered file: %s", err.Error()))
log.Info(fmt.Sprintf("cannot parse rendered file %s: %s", filename, err.Error()))
continue
}
metav1.SetMetaDataAnnotation(&tr.ObjectMeta, common.AnnotationTemplateIDTestrun, filename)
Expand Down

0 comments on commit c68a3fe

Please sign in to comment.