github.com/cloudfoundry-incubator/stembuild@v0.0.0-20211223202937-5b61d62226c6/integration/package/package_suite_test.go (about) 1 package package_test 2 3 import ( 4 "fmt" 5 "io/ioutil" 6 "os" 7 "testing" 8 9 "github.com/cloudfoundry-incubator/stembuild/test/helpers" 10 11 . "github.com/onsi/ginkgo" 12 . "github.com/onsi/gomega" 13 ) 14 15 func TestPackage(t *testing.T) { 16 RegisterFailHandler(Fail) 17 RunSpecs(t, "Package Suite") 18 } 19 20 const ( 21 VcenterCACert = "VCENTER_CA_CERT" 22 baseVMNameEnvVar = "PACKAGE_TEST_VM_NAME" 23 vcenterURLVariable = "VCENTER_BASE_URL" 24 vcenterAdminCredentialUrlVariable = "VCENTER_ADMIN_CREDENTIAL_URL" 25 vcenterFolderVariable = "VM_FOLDER" 26 vcenterStembuildUsernameVariable = "VCENTER_USERNAME" 27 vcenterStembuildPasswordVariable = "VCENTER_PASSWORD" 28 stembuildVersionVariable = "STEMBUILD_VERSION" 29 ) 30 31 var ( 32 pathToCACert string 33 stembuildVersion string 34 executable string 35 baseVMName string 36 ) 37 38 var _ = SynchronizedBeforeSuite(func() []byte { 39 rawCA := envMustExist(VcenterCACert) 40 t, err := ioutil.TempFile("", "ca-cert") 41 Expect(err).ToNot(HaveOccurred()) 42 pathToCACert = t.Name() 43 Expect(t.Close()).To(Succeed()) 44 err = ioutil.WriteFile(pathToCACert, []byte(rawCA), 0666) 45 Expect(err).ToNot(HaveOccurred()) 46 47 stembuildVersion = helpers.EnvMustExist(stembuildVersionVariable) 48 executable, err = helpers.BuildStembuild(stembuildVersion) 49 Expect(err).NotTo(HaveOccurred()) 50 51 baseVMName = os.Getenv(baseVMNameEnvVar) 52 Expect(baseVMName).NotTo(Equal(""), fmt.Sprintf("%s required", baseVMNameEnvVar)) 53 return nil 54 }, func(_ []byte) { 55 }) 56 57 var _ = SynchronizedAfterSuite(func() { 58 }, func() { 59 if pathToCACert != "" { 60 os.RemoveAll(pathToCACert) 61 } 62 }) 63 64 func envMustExist(variableName string) string { 65 result := os.Getenv(variableName) 66 if result == "" { 67 Fail(fmt.Sprintf("%s must be set", variableName)) 68 } 69 70 return result 71 }