func writeInstance(instance *redis.Instance, repo *redis.LocalRepository) {
	err := repo.EnsureDirectoriesExist(instance)
	Ω(err).NotTo(HaveOccurred())
	err = repo.WriteConfigFile(instance)
	Ω(err).NotTo(HaveOccurred())
	file, err := os.Create(filepath.Join(repo.InstanceBaseDir(instance.ID), "monitor"))
	Ω(err).NotTo(HaveOccurred())
	file.Close()
}
func writeInstance(instance *redis.Instance, repo *redis.LocalRepository) {
	err := repo.EnsureDirectoriesExist(instance)
	Ω(err).NotTo(HaveOccurred())
	err = repo.WriteConfigFile(instance)
	Ω(err).NotTo(HaveOccurred())
	file, err := os.Create(filepath.Join(repo.InstanceBaseDir(instance.ID), "monitor"))
	Ω(err).NotTo(HaveOccurred())
	pid := []byte("1234")
	err = ioutil.WriteFile(repo.InstancePidFilePath(instance.ID), pid, 0644)
	Ω(err).NotTo(HaveOccurred())
	file.Close()
}
示例#3
0
func copyConfigFile(instance *redis.Instance, repo *redis.LocalRepository, logger lager.Logger) {
	err := repo.EnsureDirectoriesExist(instance)
	if err != nil {
		logger.Fatal("Error creating instance directories", err, lager.Data{
			"instance": instance.ID,
		})
	}

	err = repo.WriteConfigFile(instance)
	if err != nil {
		logger.Fatal("Error writing redis config", err, lager.Data{
			"instance": instance.ID,
		})
	}
}
				writeInstance(instance, repo)

				logFileContents, err := ioutil.ReadFile(logFilePath)
				Ω(err).NotTo(HaveOccurred())
				Ω(logFileContents).Should(Equal(originalLogFileContents))
			})

			Context("when there is no log directory", func() {
				BeforeEach(func() {
					err := os.RemoveAll(repo.InstanceLogDir(instance.ID))
					Ω(err).NotTo(HaveOccurred())
				})

				It("recreates the log directory", func() {
					err := repo.EnsureDirectoriesExist(instance)
					Ω(err).NotTo(HaveOccurred())

					Ω(fileExists(repo.InstanceLogDir(instance.ID))).Should(BeTrue())
				})
			})
		})
	})

	Describe("FindByID", func() {
		Context("when instance does not exist", func() {
			It("returns an error", func() {
				_, err := repo.FindByID(instanceID)
				Ω(err).To(BeAssignableToTypeOf(&os.PathError{}))
			})
		})