etcdPort = 4001 + GinkgoParallelNode() etcdUrl = fmt.Sprintf("http://127.0.0.1:%d", etcdPort) etcdRunner = etcdstorerunner.NewETCDClusterRunner(etcdPort, 1, nil) etcdRunner.Start() if test_helpers.UseSQL() { dbName := fmt.Sprintf("diego_%d", GinkgoParallelNode()) sqlRunner = test_helpers.NewSQLRunner(dbName) sqlProcess = ginkgomon.Invoke(sqlRunner) // mysql must be set up on localhost as described in the CONTRIBUTING.md doc // in diego-release. var err error rawSQLDB, err = sql.Open(sqlRunner.DriverName(), sqlRunner.ConnectionString()) Expect(err).NotTo(HaveOccurred()) Expect(rawSQLDB.Ping()).NotTo(HaveOccurred()) } encryptionKey, err := encryption.NewKey("label", "passphrase") Expect(err).NotTo(HaveOccurred()) keyManager, err := encryption.NewKeyManager(encryptionKey, nil) Expect(err).NotTo(HaveOccurred()) cryptor = encryption.NewCryptor(keyManager, rand.Reader) fakeClock = fakeclock.NewFakeClock(time.Now()) }) var _ = AfterSuite(func() { etcdRunner.Stop()
bbsArgs = testrunner.Args{ Address: bbsAddress, AdvertiseURL: bbsURL.String(), AuctioneerAddress: auctioneerServer.URL(), ConsulCluster: consulRunner.ConsulCluster(), DropsondePort: port, EtcdCluster: etcdUrl, MetricsReportInterval: 10 * time.Millisecond, HealthAddress: bbsHealthAddress, EncryptionKeys: []string{"label:key"}, ActiveKeyLabel: "label", } if test_helpers.UseSQL() { bbsArgs.DatabaseDriver = sqlRunner.DriverName() bbsArgs.DatabaseConnectionString = sqlRunner.ConnectionString() } storeClient = etcd.NewStoreClient(etcdClient) consulHelper = test_helpers.NewConsulHelper(logger, consulClient) }) var _ = AfterEach(func() { ginkgomon.Kill(bbsProcess) // Make sure the healthcheck server is really gone before trying to start up // the bbs again in another test. Eventually(func() error { conn, err := net.Dial("tcp", bbsHealthAddress) if err == nil { conn.Close()