@@ -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" )` ))
@@ -434,7 +437,7 @@ consumes:
434437 releaseVersion := subject .GetReleaseVersion ()
435438 Expect (releaseVersion ).To (HavePrefix ("0.1.1+" ))
436439 Expect (releaseVersion ).To (MatchRegexp (`^0\.1\.1\+[0-9a-f]{12}$` ))
437- Expect (filepath .Join (outputPath , "releases" , "k8s-tile-test-" + releaseVersion + ".tgz" )).To (BeAnExistingFile ())
440+ Expect (filepath .Join (outputPath , "releases" , "k8s-tile-test-pkg- " + releaseVersion + ".tgz" )).To (BeAnExistingFile ())
438441
439442 tarball , err := subject .GetReleaseTarball ()
440443 Expect (err ).NotTo (HaveOccurred ())
@@ -502,7 +505,7 @@ consumes:
502505 By ("having only the registry-data job (no separate package-install job)" )
503506 Expect (addon .Jobs ).To (HaveLen (1 ))
504507 Expect (addon .Jobs [0 ].Name ).To (Equal ("registry-data" ))
505- Expect (addon .Jobs [0 ].Release ).To (Equal ("k8s-tile-test" ))
508+ Expect (addon .Jobs [0 ].Release ).To (Equal ("k8s-tile-test-pkg " ))
506509
507510 By ("carrying package install properties on the registry-data job" )
508511 Expect (addon .Jobs [0 ].Properties ).To (HaveKey ("test-install" ))
@@ -624,6 +627,7 @@ consumes:
624627 }
625628 for _ , cmd := range commands {
626629 cmd .Dir = inputPath
630+ 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" )
627631 out , err := cmd .CombinedOutput ()
628632 Expect (err ).NotTo (HaveOccurred (), "error invoking git: " + string (out ))
629633 }
@@ -643,7 +647,7 @@ consumes:
643647 uploadReleaseVersion := subject .GetReleaseVersion ()
644648
645649 releaseLock := cargo.BOSHReleaseTarballLock {
646- Name : "k8s-tile-test" ,
650+ Name : "k8s-tile-test-pkg " ,
647651 Version : uploadReleaseVersion ,
648652 }
649653
@@ -654,7 +658,7 @@ consumes:
654658
655659 outputPath := path .Join (inputPath , ".carvel-tile" )
656660 Expect (filepath .Join (outputPath , "base.yml" )).To (BeAnExistingFile ())
657- Expect (filepath .Join (outputPath , "releases" , "k8s-tile-test-" + uploadReleaseVersion + ".tgz" )).To (BeAnExistingFile ())
661+ Expect (filepath .Join (outputPath , "releases" , "k8s-tile-test-pkg- " + uploadReleaseVersion + ".tgz" )).To (BeAnExistingFile ())
658662 Expect (filepath .Join (outputPath , "runtime_configs" )).To (BeADirectory ())
659663 Expect (subject2 .GetReleaseVersion ()).To (Equal (uploadReleaseVersion ))
660664 })
@@ -678,7 +682,27 @@ consumes:
678682 subject := NewBaker ()
679683 err = subject .BakeFromLockfile (inputPath , releaseLock , "/nonexistent/tarball.tgz" )
680684 Expect (err ).To (HaveOccurred ())
681- Expect (err .Error ()).To (ContainSubstring ("does not match tile name" ))
685+ Expect (err .Error ()).To (ContainSubstring ("does not match tile-derived name" ))
686+ })
687+ })
688+
689+ When ("the tile metadata name is missing" , func () {
690+ It ("returns an error early" , func () {
691+ inputPath , err := os .MkdirTemp ("" , "missing-name-*" )
692+ Expect (err ).NotTo (HaveOccurred ())
693+ defer func () { _ = os .RemoveAll (inputPath ) }()
694+
695+ err = os .WriteFile (filepath .Join (inputPath , "base.yml" ), []byte ("label: no-name-tile" ), 0644 )
696+ Expect (err ).NotTo (HaveOccurred ())
697+
698+ subject := NewBaker ()
699+ err = subject .Bake (inputPath )
700+ Expect (err ).To (HaveOccurred ())
701+ Expect (err .Error ()).To (ContainSubstring ("missing required field 'name'" ))
702+
703+ err = subject .BakeFromLockfile (inputPath , cargo.BOSHReleaseTarballLock {}, "/nonexistent/tarball.tgz" )
704+ Expect (err ).To (HaveOccurred ())
705+ Expect (err .Error ()).To (ContainSubstring ("missing required field 'name'" ))
682706 })
683707 })
684708 })
@@ -731,7 +755,7 @@ consumes:
731755 Expect (copyTestFile (uploadTarball , cachedTarball )).To (Succeed ())
732756
733757 releaseLock := cargo.BOSHReleaseTarballLock {
734- Name : "k8s-tile-test" ,
758+ Name : "k8s-tile-test-pkg " ,
735759 Version : uploadBaker .GetReleaseVersion (),
736760 }
737761
@@ -855,6 +879,13 @@ consumes:
855879 })
856880 })
857881
882+ Context ("GetBoshReleaseName" , func () {
883+ It ("returns empty string before Bake is called" , func () {
884+ b := NewBaker ()
885+ Expect (b .GetBoshReleaseName ()).To (BeEmpty ())
886+ })
887+ })
888+
858889 Context ("generateManifestTemplate with different entry names" , func () {
859890 It ("parameterizes the entry name throughout the template" , func () {
860891 template := generateManifestTemplate ("my-custom-pkg" , "" )
0 commit comments