@@ -678,3 +678,60 @@ var _ = Describe("getKernelMappings", func() {
678678 }
679679 })
680680})
681+
682+ var _ = Describe ("resolveDockerfile" , func () {
683+ It ("should use correct default registry when not specified by user" , func () {
684+ testCases := []struct {
685+ cmName string
686+ expectedImageUrl string
687+ }{
688+ {"ubuntu-22.04" , "docker.io/ubuntu:22.04" },
689+ {"sles-15.6" , "registry.suse.com/suse/sle15:15.6" },
690+ }
691+ for _ , tc := range testCases {
692+ input := & amdv1alpha1.DeviceConfig {
693+ Spec : amdv1alpha1.DeviceConfigSpec {
694+ Driver : amdv1alpha1.DriverSpec {},
695+ },
696+ }
697+ dockerfile , err := resolveDockerfile (tc .cmName , input )
698+ Expect (err ).To (BeNil ())
699+ Expect (dockerfile ).To (ContainSubstring (tc .expectedImageUrl ))
700+ }
701+ })
702+ It ("should respect user-specified BaseImageRegistry for all OS types" , func () {
703+ testCases := []struct {
704+ cmName string
705+ expectedImageUrl string
706+ }{
707+ {"ubuntu-22.04" , "example-image-registry.com/ubuntu:22.04" },
708+ {"sles-15.6" , "example-image-registry.com/suse/sle15:15.6" },
709+ }
710+ for _ , tc := range testCases {
711+ input := & amdv1alpha1.DeviceConfig {
712+ Spec : amdv1alpha1.DeviceConfigSpec {
713+ Driver : amdv1alpha1.DriverSpec {
714+ ImageBuild : amdv1alpha1.ImageBuildSpec {
715+ BaseImageRegistry : "example-image-registry.com" ,
716+ },
717+ },
718+ },
719+ }
720+ dockerfile , err := resolveDockerfile (tc .cmName , input )
721+ Expect (err ).To (BeNil ())
722+ Expect (dockerfile ).To (ContainSubstring (tc .expectedImageUrl ))
723+ Expect (dockerfile ).NotTo (ContainSubstring ("docker.io" ))
724+ Expect (dockerfile ).NotTo (ContainSubstring ("registry.suse.com" ))
725+ }
726+ })
727+ It ("should return error for unsupported OS" , func () {
728+ input := & amdv1alpha1.DeviceConfig {
729+ Spec : amdv1alpha1.DeviceConfigSpec {
730+ Driver : amdv1alpha1.DriverSpec {},
731+ },
732+ }
733+ _ , err := resolveDockerfile ("unsupported-os" , input )
734+ Expect (err ).NotTo (BeNil ())
735+ Expect (err .Error ()).To (ContainSubstring ("not supported OS" ))
736+ })
737+ })
0 commit comments