@@ -168,6 +168,7 @@ func generateDockerfile(params Params, mainPackagesPaths sets.Set[string]) error
168168 }
169169
170170 rhelVersion := RHEL9
171+ templateFilePattern := "dockerfile-templates/rhel-9/*.tmpl"
171172 var soVersion string
172173 projectTag := metadata .Project .Tag
173174 if projectTag == "main" || metadata .Project .Tag == "" {
@@ -185,6 +186,7 @@ func generateDockerfile(params Params, mainPackagesPaths sets.Set[string]) error
185186 }
186187 if minorVersion < 17 {
187188 rhelVersion = RHEL8
189+ templateFilePattern = "dockerfile-templates/*.tmpl"
188190 }
189191 semverSoVersion := soversion .FromUpstreamVersion (strings .Replace (projectTag , "knative-v" , "" , 1 ))
190192 soVersion = fmt .Sprintf ("%v.%v" , semverSoVersion .Major , semverSoVersion .Minor )
@@ -199,6 +201,7 @@ func generateDockerfile(params Params, mainPackagesPaths sets.Set[string]) error
199201 if semVer != nil {
200202 if semVer .Minor < 37 {
201203 rhelVersion = RHEL8
204+ templateFilePattern = "dockerfile-templates/*.tmpl"
202205 }
203206 }
204207 soVersion = fmt .Sprintf ("%v.%v" , semVer .Major , semVer .Minor )
@@ -220,11 +223,11 @@ func generateDockerfile(params Params, mainPackagesPaths sets.Set[string]) error
220223 d := map [string ]interface {}{
221224 "builder" : builderImage ,
222225 }
223- if _ , err = saveDockerfile (d , DockerfileBuildImageTemplate , params .Output , params .DockerfilesBuildDir ); err != nil {
226+ if _ , err = saveDockerfile (d , DockerfileBuildImageTemplate , templateFilePattern , params .Output , params .DockerfilesBuildDir ); err != nil {
224227 return err
225228 }
226229
227- if _ , err = saveDockerfile (d , DockerfileSourceImageTemplate , params .Output , params .DockerfilesSourceDir ); err != nil {
230+ if _ , err = saveDockerfile (d , DockerfileSourceImageTemplate , templateFilePattern , params .Output , params .DockerfilesSourceDir ); err != nil {
228231 return err
229232 }
230233
@@ -316,7 +319,7 @@ func generateDockerfile(params Params, mainPackagesPaths sets.Set[string]) error
316319 ErrBadConf , params .TemplateName )
317320 }
318321 templateFiles := "dockerfile-templates/*.tmpl"
319- if rhelVersion == "rhel-9" {
322+ if rhelVersion == RHEL9 {
320323 templateFiles = "dockerfile-templates/rhel-9/*.tmpl"
321324 }
322325 t , err := template .ParseFS (dockerfileTemplate , templateFiles )
@@ -338,7 +341,7 @@ func generateDockerfile(params Params, mainPackagesPaths sets.Set[string]) error
338341 out = filepath .Join (params .Output , params .DockerfilesTestDir , filepath .Base (p ))
339342 }
340343
341- dockerfilePath , err := saveDockerfile (d , dockerfileTemplate , out , "" )
344+ dockerfilePath , err := saveDockerfile (d , dockerfileTemplate , templateFiles , out , "" )
342345 if err != nil {
343346 return err
344347 }
@@ -474,7 +477,7 @@ func generateMustGatherDockerfile(params Params) error {
474477 }
475478
476479 out := filepath .Join (params .Output , params .DockerfilesDir , filepath .Base (projectName ))
477- if _ , err = saveDockerfile (d , DockerfileMustGatherTemplate , out , "" ); err != nil {
480+ if _ , err = saveDockerfile (d , DockerfileMustGatherTemplate , templateFile , out , "" ); err != nil {
478481 return err
479482 }
480483 if err = writeRPMLockFile (rpmsLockTemplate , params .RootDir ); err != nil {
@@ -593,8 +596,8 @@ func downloadImagesFrom(r string, branch string, urlFmt string) (map[string]stri
593596 return images , nil
594597}
595598
596- func saveDockerfile (d map [string ]interface {}, imageTemplate embed.FS , output string , dir string ) (string , error ) {
597- bt , err := template .ParseFS (imageTemplate , "dockerfile-templates/*.tmpl" )
599+ func saveDockerfile (d map [string ]interface {}, imageTemplate embed.FS , templatePattern , output string , dir string ) (string , error ) {
600+ bt , err := template .ParseFS (imageTemplate , templatePattern )
598601 if err != nil {
599602 return "" , fmt .Errorf ("%w: Failed creating template: %w" ,
600603 ErrBadTemplate , errors .WithStack (err ))
0 commit comments