@@ -360,6 +360,7 @@ consumes:
360360 }
361361 for _ , cmd := range commands {
362362 cmd .Dir = inputPath
363+ cmd .Env = append (os .Environ (), "GIT_AUTHOR_NAME=test" , "GIT_AUTHOR_EMAIL=test@test.com" , "GIT_COMMITTER_NAME=test" , "GIT_COMMITTER_EMAIL=test@test.com" )
363364 out , err := cmd .CombinedOutput ()
364365 Expect (err ).NotTo (HaveOccurred (), "error invoking git: " + string (out ))
365366 }
@@ -390,6 +391,8 @@ consumes:
390391 Expect (err ).NotTo (HaveOccurred ())
391392
392393 Expect (outMeta .Name ).To (Equal ("k8s-tile-test" ))
394+ Expect (subject .GetName ()).To (Equal ("k8s-tile-test" ))
395+ Expect (subject .GetBoshReleaseName ()).To (Equal ("k8s-tile-test-pkg" ))
393396 Expect (outMeta .ProductVersion ).To (Equal (`$( version )` ))
394397 Expect (outMeta .MetadataVersion ).To (Equal ("3.2.0" ))
395398 Expect (outMeta .Rank ).To (Equal (1 ))
@@ -402,7 +405,7 @@ consumes:
402405 Expect (outMeta .Variables [0 ].Options ).To (HaveKeyWithValue ("common_name" , "Sample Tile CA" ))
403406 Expect (outMeta .Variables [0 ].Options ).To (HaveKeyWithValue ("is_ca" , true ))
404407 Expect (outMeta .Releases ).To (HaveLen (1 ))
405- Expect (outMeta .Releases [0 ]).To (ContainSubstring ( "k8s-tile-test" ))
408+ Expect (outMeta .Releases [0 ]).To (Equal ( `$( release "k8s-tile-test-pkg" )` ))
406409 Expect (outMeta .InstanceGroups ).To (HaveLen (0 ))
407410 Expect (outMeta .RuntimeConfigs ).To (HaveLen (1 ))
408411 Expect (outMeta .RuntimeConfigs [0 ]).To (Equal (`$( runtime_config "k8s-tile-test-pkgr" )` ))
@@ -429,7 +432,7 @@ consumes:
429432 releaseVersion := subject .GetReleaseVersion ()
430433 Expect (releaseVersion ).To (HavePrefix ("0.1.1+" ))
431434 Expect (releaseVersion ).To (MatchRegexp (`^0\.1\.1\+[0-9a-f]{12}$` ))
432- Expect (filepath .Join (outputPath , "releases" , "k8s-tile-test-" + releaseVersion + ".tgz" )).To (BeAnExistingFile ())
435+ Expect (filepath .Join (outputPath , "releases" , "k8s-tile-test-pkg- " + releaseVersion + ".tgz" )).To (BeAnExistingFile ())
433436
434437 tarball , err := subject .GetReleaseTarball ()
435438 Expect (err ).NotTo (HaveOccurred ())
@@ -497,7 +500,7 @@ consumes:
497500 By ("having only the registry-data job (no separate package-install job)" )
498501 Expect (addon .Jobs ).To (HaveLen (1 ))
499502 Expect (addon .Jobs [0 ].Name ).To (Equal ("registry-data" ))
500- Expect (addon .Jobs [0 ].Release ).To (Equal ("k8s-tile-test" ))
503+ Expect (addon .Jobs [0 ].Release ).To (Equal ("k8s-tile-test-pkg " ))
501504
502505 By ("carrying package install properties on the registry-data job" )
503506 Expect (addon .Jobs [0 ].Properties ).To (HaveKey ("test-install" ))
@@ -577,6 +580,7 @@ consumes:
577580 }
578581 for _ , cmd := range commands {
579582 cmd .Dir = inputPath
583+ cmd .Env = append (os .Environ (), "GIT_AUTHOR_NAME=test" , "GIT_AUTHOR_EMAIL=test@test.com" , "GIT_COMMITTER_NAME=test" , "GIT_COMMITTER_EMAIL=test@test.com" )
580584 out , err := cmd .CombinedOutput ()
581585 Expect (err ).NotTo (HaveOccurred (), "error invoking git: " + string (out ))
582586 }
@@ -596,7 +600,7 @@ consumes:
596600 uploadReleaseVersion := subject .GetReleaseVersion ()
597601
598602 releaseLock := cargo.BOSHReleaseTarballLock {
599- Name : "k8s-tile-test" ,
603+ Name : "k8s-tile-test-pkg " ,
600604 Version : uploadReleaseVersion ,
601605 }
602606
@@ -607,7 +611,7 @@ consumes:
607611
608612 outputPath := path .Join (inputPath , ".carvel-tile" )
609613 Expect (filepath .Join (outputPath , "base.yml" )).To (BeAnExistingFile ())
610- Expect (filepath .Join (outputPath , "releases" , "k8s-tile-test-" + uploadReleaseVersion + ".tgz" )).To (BeAnExistingFile ())
614+ Expect (filepath .Join (outputPath , "releases" , "k8s-tile-test-pkg- " + uploadReleaseVersion + ".tgz" )).To (BeAnExistingFile ())
611615 Expect (filepath .Join (outputPath , "runtime_configs" )).To (BeADirectory ())
612616 Expect (subject2 .GetReleaseVersion ()).To (Equal (uploadReleaseVersion ))
613617 })
@@ -631,7 +635,27 @@ consumes:
631635 subject := NewBaker ()
632636 err = subject .BakeFromLockfile (inputPath , releaseLock , "/nonexistent/tarball.tgz" )
633637 Expect (err ).To (HaveOccurred ())
634- Expect (err .Error ()).To (ContainSubstring ("does not match tile name" ))
638+ Expect (err .Error ()).To (ContainSubstring ("does not match tile-derived name" ))
639+ })
640+ })
641+
642+ When ("the tile metadata name is missing" , func () {
643+ It ("returns an error early" , func () {
644+ inputPath , err := os .MkdirTemp ("" , "missing-name-*" )
645+ Expect (err ).NotTo (HaveOccurred ())
646+ defer func () { _ = os .RemoveAll (inputPath ) }()
647+
648+ err = os .WriteFile (filepath .Join (inputPath , "base.yml" ), []byte ("label: no-name-tile" ), 0644 )
649+ Expect (err ).NotTo (HaveOccurred ())
650+
651+ subject := NewBaker ()
652+ err = subject .Bake (inputPath )
653+ Expect (err ).To (HaveOccurred ())
654+ Expect (err .Error ()).To (ContainSubstring ("missing required field 'name'" ))
655+
656+ err = subject .BakeFromLockfile (inputPath , cargo.BOSHReleaseTarballLock {}, "/nonexistent/tarball.tgz" )
657+ Expect (err ).To (HaveOccurred ())
658+ Expect (err .Error ()).To (ContainSubstring ("missing required field 'name'" ))
635659 })
636660 })
637661 })
@@ -684,7 +708,7 @@ consumes:
684708 Expect (copyTestFile (uploadTarball , cachedTarball )).To (Succeed ())
685709
686710 releaseLock := cargo.BOSHReleaseTarballLock {
687- Name : "k8s-tile-test" ,
711+ Name : "k8s-tile-test-pkg " ,
688712 Version : uploadBaker .GetReleaseVersion (),
689713 }
690714
@@ -808,6 +832,13 @@ consumes:
808832 })
809833 })
810834
835+ Context ("GetBoshReleaseName" , func () {
836+ It ("returns empty string before Bake is called" , func () {
837+ b := NewBaker ()
838+ Expect (b .GetBoshReleaseName ()).To (BeEmpty ())
839+ })
840+ })
841+
811842 Context ("generateManifestTemplate with different entry names" , func () {
812843 It ("parameterizes the entry name throughout the template" , func () {
813844 template := generateManifestTemplate ("my-custom-pkg" , "" )
0 commit comments