本文整理匯總了Golang中bosh/settings/directories.DirectoriesProvider類的典型用法代碼示例。如果您正苦於以下問題:Golang DirectoriesProvider類的具體用法?Golang DirectoriesProvider怎麽用?Golang DirectoriesProvider使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了DirectoriesProvider類的9個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: NewProvider
func NewProvider(logger boshlog.Logger, dirProvider boshdirs.DirectoriesProvider) (p provider) {
runner := boshsys.NewExecCmdRunner(logger)
fs := boshsys.NewOsFileSystem(logger, runner)
sigarCollector := boshstats.NewSigarStatsCollector()
linuxDiskManager := boshdisk.NewLinuxDiskManager(logger, runner, fs)
udev := boshudev.NewConcreteUdevDevice(runner)
linuxCdrom := boshcdrom.NewLinuxCdrom("/dev/sr0", udev, runner)
linuxCdutil := boshcd.NewCdUtil(dirProvider.SettingsDir(), fs, linuxCdrom)
compressor := boshcmd.NewTarballCompressor(runner, fs)
copier := boshcmd.NewCpCopier(runner, fs)
vitalsService := boshvitals.NewService(sigarCollector, dirProvider)
centosNetManager := boshnet.NewCentosNetManager(fs, runner, 10*time.Second)
ubuntuNetManager := boshnet.NewUbuntuNetManager(fs, runner, 10*time.Second)
centos := NewLinuxPlatform(
fs,
runner,
sigarCollector,
compressor,
copier,
dirProvider,
vitalsService,
linuxCdutil,
linuxDiskManager,
centosNetManager,
500*time.Millisecond,
logger,
)
ubuntu := NewLinuxPlatform(
fs,
runner,
sigarCollector,
compressor,
copier,
dirProvider,
vitalsService,
linuxCdutil,
linuxDiskManager,
ubuntuNetManager,
500*time.Millisecond,
logger,
)
p.platforms = map[string]Platform{
"ubuntu": ubuntu,
"centos": centos,
"dummy": NewDummyPlatform(sigarCollector, fs, runner, dirProvider, linuxDiskManager),
}
return
}
示例2: buildApplierAndCompiler
func (app *app) buildApplierAndCompiler(
dirProvider boshdirs.DirectoriesProvider,
blobstore boshblob.Blobstore,
jobSupervisor boshjobsuper.JobSupervisor,
) (boshapplier.Applier, boshcomp.Compiler) {
jobsBc := boshbc.NewFileBundleCollection(
dirProvider.DataDir(),
dirProvider.BaseDir(),
"jobs",
app.platform.GetFs(),
app.logger,
)
packageApplierProvider := boshpa.NewConcretePackageApplierProvider(
dirProvider.DataDir(),
dirProvider.BaseDir(),
dirProvider.JobsDir(),
"packages",
blobstore,
app.platform.GetCompressor(),
app.platform.GetFs(),
app.logger,
)
jobApplier := boshja.NewRenderedJobApplier(
jobsBc,
jobSupervisor,
packageApplierProvider,
blobstore,
app.platform.GetCompressor(),
app.platform.GetFs(),
app.logger,
)
applier := boshapplier.NewConcreteApplier(
jobApplier,
packageApplierProvider.Root(),
app.platform,
jobSupervisor,
dirProvider,
)
compiler := boshcomp.NewConcreteCompiler(
app.platform.GetCompressor(),
blobstore,
app.platform.GetFs(),
app.platform.GetRunner(),
dirProvider,
packageApplierProvider.Root(),
packageApplierProvider.RootBundleCollection(),
)
return applier, compiler
}
示例3: init
func init() {
Describe("bootstrap", func() {
Describe("Run", func() {
var (
inf *fakeinf.FakeInfrastructure
platform *fakeplatform.FakePlatform
dirProvider boshdir.DirectoriesProvider
settingsServiceProvider *fakesettings.FakeSettingsServiceProvider
settingsService *fakesettings.FakeSettingsService
)
BeforeEach(func() {
inf = &fakeinf.FakeInfrastructure{
GetEphemeralDiskPathFound: true,
GetEphemeralDiskPathRealPath: "/dev/sdz",
}
platform = fakeplatform.NewFakePlatform()
dirProvider = boshdir.NewDirectoriesProvider("/var/vcap")
settingsServiceProvider = fakesettings.NewServiceProvider()
settingsService = settingsServiceProvider.NewServiceSettingsService
})
bootstrap := func() (boshsettings.Service, error) {
logger := boshlog.NewLogger(boshlog.LevelNone)
return New(inf, platform, dirProvider, settingsServiceProvider, logger).Run()
}
It("sets up runtime configuration", func() {
_, err := bootstrap()
Expect(err).NotTo(HaveOccurred())
Expect(platform.SetupRuntimeConfigurationWasInvoked).To(BeTrue())
})
It("sets up ssh", func() {
_, err := bootstrap()
Expect(err).NotTo(HaveOccurred())
Expect(inf.SetupSshUsername).To(Equal("vcap"))
})
It("sets up hostname", func() {
settingsService.Settings.AgentID = "foo-bar-baz-123"
_, err := bootstrap()
Expect(err).NotTo(HaveOccurred())
Expect(platform.SetupHostnameHostname).To(Equal("foo-bar-baz-123"))
})
It("returns the settings service", func() {
settingsService, err := bootstrap()
Expect(err).NotTo(HaveOccurred())
Expect(settingsService).To(Equal(settingsService))
Expect(settingsServiceProvider.NewServiceFs).To(Equal(platform.GetFs()))
Expect(settingsServiceProvider.NewServiceDir).To(Equal(dirProvider.BoshDir()))
fetchedSettings, err := settingsServiceProvider.NewServiceFetcher()
Expect(err).NotTo(HaveOccurred())
Expect(fetchedSettings).To(Equal(inf.Settings))
})
It("fetches initial settings", func() {
_, err := bootstrap()
Expect(err).NotTo(HaveOccurred())
Expect(settingsService.SettingsWereLoaded).To(BeTrue())
})
It("returns error from loading initial settings", func() {
settingsService.LoadSettingsError = errors.New("fake-load-error")
_, err := bootstrap()
Expect(err).To(HaveOccurred())
Expect(err.Error()).To(ContainSubstring("fake-load-error"))
})
It("sets up networking", func() {
networks := boshsettings.Networks{
"bosh": boshsettings.Network{},
}
settingsService.Settings.Networks = networks
_, err := bootstrap()
Expect(err).NotTo(HaveOccurred())
Expect(inf.SetupNetworkingNetworks).To(Equal(networks))
})
It("sets up ephemeral disk", func() {
settingsService.Disks = boshsettings.Disks{
Ephemeral: "fake-ephemeral-disk-setting",
}
inf.GetEphemeralDiskPathRealPath = "/dev/sda"
inf.GetEphemeralDiskPathFound = true
_, err := bootstrap()
Expect(err).NotTo(HaveOccurred())
Expect(platform.SetupEphemeralDiskWithPathDevicePath).To(Equal("/dev/sda"))
Expect(inf.GetEphemeralDiskPathDevicePath).To(Equal("fake-ephemeral-disk-setting"))
})
//.........這裏部分代碼省略.........
示例4: NewProvider
func NewProvider(logger boshlog.Logger, dirProvider boshdirs.DirectoriesProvider, options ProviderOptions) (p provider) {
runner := boshsys.NewExecCmdRunner(logger)
fs := boshsys.NewOsFileSystem(logger)
linuxDiskManager := boshdisk.NewLinuxDiskManager(logger, runner, fs, options.Linux.BindMountPersistentDisk)
udev := boshudev.NewConcreteUdevDevice(runner)
linuxCdrom := boshcdrom.NewLinuxCdrom("/dev/sr0", udev, runner)
linuxCdutil := boshcd.NewCdUtil(dirProvider.SettingsDir(), fs, linuxCdrom)
compressor := boshcmd.NewTarballCompressor(runner, fs)
copier := boshcmd.NewCpCopier(runner, fs, logger)
sigarCollector := boshstats.NewSigarStatsCollector(&sigar.ConcreteSigar{})
// Kick of stats collection as soon as possible
go sigarCollector.StartCollecting(SigarStatsCollectionInterval, nil)
vitalsService := boshvitals.NewService(sigarCollector, dirProvider)
routesSearcher := boshnet.NewCmdRoutesSearcher(runner)
ipResolver := boship.NewIPResolver(boship.NetworkInterfaceToAddrsFunc)
defaultNetworkResolver := boshnet.NewDefaultNetworkResolver(routesSearcher, ipResolver)
arping := bosharp.NewArping(runner, fs, logger, ArpIterations, ArpIterationDelay, ArpInterfaceCheckDelay)
centosNetManager := boshnet.NewCentosNetManager(fs, runner, defaultNetworkResolver, ipResolver, arping, logger)
ubuntuNetManager := boshnet.NewUbuntuNetManager(fs, runner, defaultNetworkResolver, ipResolver, arping, logger)
centos := NewLinuxPlatform(
fs,
runner,
sigarCollector,
compressor,
copier,
dirProvider,
vitalsService,
linuxCdutil,
linuxDiskManager,
centosNetManager,
500*time.Millisecond,
options.Linux,
logger,
)
ubuntu := NewLinuxPlatform(
fs,
runner,
sigarCollector,
compressor,
copier,
dirProvider,
vitalsService,
linuxCdutil,
linuxDiskManager,
ubuntuNetManager,
500*time.Millisecond,
options.Linux,
logger,
)
p.platforms = map[string]Platform{
"ubuntu": ubuntu,
"centos": centos,
"dummy": NewDummyPlatform(sigarCollector, fs, runner, dirProvider, logger),
}
return
}
示例5: init
func init() {
Describe("monitJobSupervisor", func() {
var (
fs *fakesys.FakeFileSystem
runner *fakesys.FakeCmdRunner
client *fakemonit.FakeMonitClient
logger boshlog.Logger
dirProvider boshdir.DirectoriesProvider
jobFailuresServerPort int
monit JobSupervisor
)
BeforeEach(func() {
fs = &fakesys.FakeFileSystem{}
runner = &fakesys.FakeCmdRunner{}
client = fakemonit.NewFakeMonitClient()
logger = boshlog.NewLogger(boshlog.LevelNone)
dirProvider = boshdir.NewDirectoriesProvider("/var/vcap")
jobFailuresServerPort = getJobFailureServerPort()
monit = NewMonitJobSupervisor(
fs,
runner,
client,
logger,
dirProvider,
jobFailuresServerPort,
0*time.Millisecond,
)
})
It("waits until the job is reloaded", func() {
client.Incarnations = []int{1, 1, 1, 2, 3}
client.StatusStatus = fakemonit.FakeMonitStatus{
Services: []boshmonit.Service{
boshmonit.Service{Monitored: true, Status: "failing"},
boshmonit.Service{Monitored: true, Status: "running"},
},
Incarnation: 1,
}
err := monit.Reload()
Expect(err).ToNot(HaveOccurred())
Expect(1).To(Equal(len(runner.RunCommands)))
Expect(runner.RunCommands[0]).To(Equal([]string{"monit", "reload"}))
Expect(client.StatusCalledTimes).To(Equal(4))
})
It("stops trying to reload after 60 attempts", func() {
for i := 0; i < 61; i++ {
client.Incarnations = append(client.Incarnations, 1)
}
client.StatusStatus = fakemonit.FakeMonitStatus{
Services: []boshmonit.Service{
boshmonit.Service{Monitored: true, Status: "failing"},
boshmonit.Service{Monitored: true, Status: "running"},
},
Incarnation: 1,
}
err := monit.Reload()
Expect(err).To(HaveOccurred())
Expect(1).To(Equal(len(runner.RunCommands)))
Expect(runner.RunCommands[0]).To(Equal([]string{"monit", "reload"}))
Expect(client.StatusCalledTimes).To(Equal(60))
})
It("start starts each monit service in group vcap", func() {
client.ServicesInGroupServices = []string{"fake-service"}
err := monit.Start()
Expect(err).ToNot(HaveOccurred())
Expect("vcap").To(Equal(client.ServicesInGroupName))
Expect(1).To(Equal(len(client.StartServiceNames)))
Expect("fake-service").To(Equal(client.StartServiceNames[0]))
})
It("stop stops each monit service in group vcap", func() {
client.ServicesInGroupServices = []string{"fake-service"}
err := monit.Stop()
Expect(err).ToNot(HaveOccurred())
Expect("vcap").To(Equal(client.ServicesInGroupName))
Expect(1).To(Equal(len(client.StopServiceNames)))
Expect("fake-service").To(Equal(client.StopServiceNames[0]))
})
It("status returns running when all services are monitored and running", func() {
client.StatusStatus = fakemonit.FakeMonitStatus{
Services: []boshmonit.Service{
boshmonit.Service{Monitored: true, Status: "running"},
boshmonit.Service{Monitored: true, Status: "running"},
},
}
//.........這裏部分代碼省略.........
示例6:
. "github.com/onsi/gomega"
"github.com/stretchr/testify/assert"
. "bosh/infrastructure"
fakedpresolv "bosh/infrastructure/devicepathresolver/fakes"
fakeplatform "bosh/platform/fakes"
boshsettings "bosh/settings"
boshdir "bosh/settings/directories"
fakefs "bosh/system/fakes"
)
var _ = Describe("dummyInfrastructure", func() {
Describe("GetSettings", func() {
var (
fs *fakefs.FakeFileSystem
dirProvider boshdir.DirectoriesProvider
inf Infrastructure
)
BeforeEach(func() {
fs = fakefs.NewFakeFileSystem()
dirProvider = boshdir.NewDirectoriesProvider("/var/vcap")
platform := fakeplatform.NewFakePlatform()
fakeDevicePathResolver := fakedpresolv.NewFakeDevicePathResolver()
inf = NewDummyInfrastructure(fs, dirProvider, platform, fakeDevicePathResolver)
})
Context("when infrastructure settings file is found", func() {
BeforeEach(func() {
settingsPath := filepath.Join(dirProvider.BoshDir(), "dummy-cpi-agent-env.json")
示例7: NewProvider
func NewProvider(logger boshlog.Logger, dirProvider boshdirs.DirectoriesProvider, options ProviderOptions) (p provider) {
runner := boshsys.NewExecCmdRunner(logger)
fs := boshsys.NewOsFileSystem(logger)
linuxDiskManager := boshdisk.NewLinuxDiskManager(logger, runner, fs, options.Linux.BindMountPersistentDisk)
udev := boshudev.NewConcreteUdevDevice(runner)
linuxCdrom := boshcdrom.NewLinuxCdrom("/dev/sr0", udev, runner)
linuxCdutil := boshcd.NewCdUtil(dirProvider.SettingsDir(), fs, linuxCdrom)
compressor := boshcmd.NewTarballCompressor(runner, fs)
copier := boshcmd.NewCpCopier(runner, fs, logger)
sigarCollector := boshstats.NewSigarStatsCollector()
vitalsService := boshvitals.NewService(sigarCollector, dirProvider)
routesSearcher := boshnet.NewCmdRoutesSearcher(runner)
defaultNetworkResolver := boshnet.NewDefaultNetworkResolver(
routesSearcher,
boshnet.DefaultInterfaceToAddrsFunc,
)
centosNetManager := boshnet.NewCentosNetManager(fs, runner, defaultNetworkResolver, 10*time.Second, logger)
ubuntuNetManager := boshnet.NewUbuntuNetManager(fs, runner, defaultNetworkResolver, 10*time.Second, logger)
centos := NewLinuxPlatform(
fs,
runner,
sigarCollector,
compressor,
copier,
dirProvider,
vitalsService,
linuxCdutil,
linuxDiskManager,
centosNetManager,
500*time.Millisecond,
options.Linux,
logger,
)
ubuntu := NewLinuxPlatform(
fs,
runner,
sigarCollector,
compressor,
copier,
dirProvider,
vitalsService,
linuxCdutil,
linuxDiskManager,
ubuntuNetManager,
500*time.Millisecond,
options.Linux,
logger,
)
p.platforms = map[string]Platform{
"ubuntu": ubuntu,
"centos": centos,
"dummy": NewDummyPlatform(sigarCollector, fs, runner, dirProvider, linuxDiskManager, logger),
}
return
}
示例8:
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
boshlog "bosh/logger"
. "bosh/platform"
fakestats "bosh/platform/stats/fakes"
boshsettings "bosh/settings"
boshdirs "bosh/settings/directories"
fakesys "bosh/system/fakes"
)
var _ = Describe("dummyPlatform", func() {
var (
collector *fakestats.FakeStatsCollector
fs *fakesys.FakeFileSystem
cmdRunner *fakesys.FakeCmdRunner
dirProvider boshdirs.DirectoriesProvider
platform Platform
)
BeforeEach(func() {
collector = &fakestats.FakeStatsCollector{}
fs = fakesys.NewFakeFileSystem()
cmdRunner = fakesys.NewFakeCmdRunner()
dirProvider = boshdirs.NewDirectoriesProvider("/fake-dir")
logger := boshlog.NewLogger(boshlog.LevelNone)
platform = NewDummyPlatform(collector, fs, cmdRunner, dirProvider, logger)
})
Describe("GetDefaultNetwork", func() {
Context("when default networks settings file is found", func() {
示例9:
boshalert "bosh/agent/alert"
. "bosh/jobsupervisor"
boshmonit "bosh/jobsupervisor/monit"
fakemonit "bosh/jobsupervisor/monit/fakes"
boshlog "bosh/logger"
boshdir "bosh/settings/directories"
fakesys "bosh/system/fakes"
)
var _ = Describe("monitJobSupervisor", func() {
var (
fs *fakesys.FakeFileSystem
runner *fakesys.FakeCmdRunner
client *fakemonit.FakeMonitClient
logger boshlog.Logger
dirProvider boshdir.DirectoriesProvider
jobFailuresServerPort int
monit JobSupervisor
)
var jobFailureServerPort = 5000
getJobFailureServerPort := func() int {
jobFailureServerPort++
return jobFailureServerPort
}
BeforeEach(func() {
fs = fakesys.NewFakeFileSystem()
runner = fakesys.NewFakeCmdRunner()