func (maker ComponentMaker) Consul(argv ...string) ifrit.Runner { _, port, err := net.SplitHostPort(maker.Addresses.Consul) Expect(err).NotTo(HaveOccurred()) httpPort, err := strconv.Atoi(port) Expect(err).NotTo(HaveOccurred()) startingPort := httpPort - consulrunner.PortOffsetHTTP clusterRunner := consulrunner.NewClusterRunner(startingPort, 1, "http") return ifrit.RunFunc(func(signals <-chan os.Signal, ready chan<- struct{}) error { done := make(chan struct{}) go func() { clusterRunner.Start() close(done) }() Eventually(done, 10).Should(BeClosed()) close(ready) select { case <-signals: clusterRunner.Stop() } return nil }) }
func TestDB(t *testing.T) { RegisterFailHandler(Fail) RunSpecs(t, "ETCD DB Suite") } var _ = BeforeSuite(func() { clock = fakeclock.NewFakeClock(time.Unix(0, 1138)) etcdPort = 4001 + GinkgoParallelNode() etcdUrl = fmt.Sprintf("http://127.0.0.1:%d", etcdPort) etcdRunner = etcdstorerunner.NewETCDClusterRunner(etcdPort, 1, nil) consulRunner = consulrunner.NewClusterRunner( 9001+config.GinkgoConfig.ParallelNode*consulrunner.PortOffsetLength, 1, "http", ) consulRunner.Start() consulRunner.WaitUntilReady() etcdRunner.Start() Expect(workPoolCreateError).ToNot(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)
"testing" ) func TestConsulAdapter(t *testing.T) { RegisterFailHandler(Fail) RunSpecs(t, "Adapter <-> Cluster-Runner Integration Suite") } const clusterSize = 1 var clusterRunner *consulrunner.ClusterRunner var session *consuladapter.Session var _ = BeforeSuite(func() { clusterStartingPort := 5001 + config.GinkgoConfig.ParallelNode*consulrunner.PortOffsetLength*clusterSize clusterRunner = consulrunner.NewClusterRunner(clusterStartingPort, clusterSize, "http") }) func stopCluster() { clusterRunner.Stop() } func stopClusterAndSession() { if session != nil { session.Destroy() } stopCluster() } func startClusterAndSession() { startCluster() session = clusterRunner.NewSession(fmt.Sprintf("session-%d", config.GinkgoConfig.ParallelNode))