本文整理汇总了Golang中github.com/cloudfoundry/bosh-utils/system.FileSystem.ReadFile方法的典型用法代码示例。如果您正苦于以下问题:Golang FileSystem.ReadFile方法的具体用法?Golang FileSystem.ReadFile怎么用?Golang FileSystem.ReadFile使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/cloudfoundry/bosh-utils/system.FileSystem
的用法示例。
在下文中一共展示了FileSystem.ReadFile方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: NewConfigFromPath
func NewConfigFromPath(path string, fs boshsys.FileSystem) (Config, error) {
var config Config
bytes, err := fs.ReadFile(path)
if err != nil {
return config, bosherr.WrapErrorf(err, "Reading config %s", path)
}
config = DefaultConfig
err = json.Unmarshal(bytes, &config)
if err != nil {
return config, bosherr.WrapError(err, "Unmarshalling config")
}
if config.VMProvisioner.AgentProvisioner.Configuration == nil {
config.VMProvisioner.AgentProvisioner.Configuration = DefaultAgentConfiguration
}
err = config.validate()
if err != nil {
return config, bosherr.WrapError(err, "Validating config")
}
return config, nil
}
示例2: NewManifestFromPath
func NewManifestFromPath(path string, fs boshsys.FileSystem) (Manifest, error) {
bytes, err := fs.ReadFile(path)
if err != nil {
return Manifest{}, bosherr.WrapErrorf(err, "Reading manifest %s", path)
}
return NewManifestFromBytes(bytes)
}
示例3: NewConfig
func NewConfig(fs boshsys.FileSystem) (*Config, error) {
path := os.Getenv("BOSH_INIT_CONFIG_PATH")
if path == "" {
return &Config{}, errors.New("Must provide config file via BOSH_INIT_CONFIG_PATH environment variable")
}
configContents, err := fs.ReadFile(path)
if err != nil {
return &Config{}, err
}
var config Config
err = json.Unmarshal(configContents, &config)
if err != nil {
return &Config{}, err
}
return &config, nil
}
示例4: LoadConfigFromPath
func LoadConfigFromPath(fs boshsys.FileSystem, path string) (Config, error) {
var config Config
if path == "" {
return config, nil
}
bytes, err := fs.ReadFile(path)
if err != nil {
return config, bosherr.WrapError(err, "Reading file")
}
err = json.Unmarshal(bytes, &config)
if err != nil {
return config, bosherr.WrapError(err, "Loading file")
}
return config, nil
}
示例5: NewBootstrapState
func NewBootstrapState(fs boshsys.FileSystem, path string) (*BootstrapState, error) {
state := BootstrapState{fs: fs, path: path}
if !fs.FileExists(path) {
return &state, nil
}
bytes, err := fs.ReadFile(path)
if err != nil {
return nil, bosherr.WrapError(err, "Reading bootstrap state file")
}
err = json.Unmarshal(bytes, &state)
if err != nil {
return nil, bosherr.WrapError(err, "Unmarshalling bootstrap state")
}
return &state, nil
}
示例6: NewConfigFromPath
func NewConfigFromPath(path string, fs boshsys.FileSystem) (Config, error) {
var config Config
bytes, err := fs.ReadFile(path)
if err != nil {
return config, bosherr.WrapErrorf(err, "Reading config %s", path)
}
err = json.Unmarshal(bytes, &config)
if err != nil {
return config, bosherr.WrapError(err, "Unmarshalling config")
}
err = config.Validate()
if err != nil {
return config, bosherr.WrapError(err, "Validating config")
}
return config, nil
}
示例7:
Expect(err).ToNot(HaveOccurred())
assert.Contains(GinkgoT(), content, "this is app stderr")
content, err = fs.ReadFileString(dstDir + "/other_logs/other_app.stdout.log")
Expect(err).ToNot(HaveOccurred())
assert.Contains(GinkgoT(), content, "this is other app stdout")
content, err = fs.ReadFileString(dstDir + "/other_logs/more_logs/more.stdout.log")
Expect(err).ToNot(HaveOccurred())
assert.Contains(GinkgoT(), content, "this is more stdout")
Expect(fs.FileExists(dstDir + "/some_directory")).To(BeTrue())
Expect(fs.FileExists(dstDir + "/some_directory/sub_dir")).To(BeTrue())
Expect(fs.FileExists(dstDir + "/some_directory/sub_dir/other_sub_dir")).To(BeTrue())
_, err = fs.ReadFile(dstDir + "/other_logs/other_app.stderr.log")
Expect(err).To(HaveOccurred())
_, err = fs.ReadFile(dstDir + "/../some.config")
Expect(err).To(HaveOccurred())
})
It("copies the content of directories when specified as a filter", func() {
srcDir := copierFixtureSrcDir()
filters := []string{
"some_directory",
}
dstDir, err := cpCopier.FilteredCopyToTemp(srcDir, filters)
Expect(err).ToNot(HaveOccurred())
示例8:
Expect(err).ToNot(HaveOccurred())
assert.Contains(GinkgoT(), content, "this is app stderr")
content, err = fs.ReadFileString(filepath.Join(dstDir, "other_logs", "other_app.stdout.log"))
Expect(err).ToNot(HaveOccurred())
assert.Contains(GinkgoT(), content, "this is other app stdout")
content, err = fs.ReadFileString(filepath.Join(dstDir, "other_logs", "more_logs", "more.stdout.log"))
Expect(err).ToNot(HaveOccurred())
assert.Contains(GinkgoT(), content, "this is more stdout")
Expect(fs.FileExists(filepath.Join(dstDir, "some_directory"))).To(BeTrue())
Expect(fs.FileExists(filepath.Join(dstDir, "some_directory", "sub_dir"))).To(BeTrue())
Expect(fs.FileExists(filepath.Join(dstDir, "some_directory", "sub_dir", "other_sub_dir"))).To(BeTrue())
_, err = fs.ReadFile(filepath.Join(dstDir, "other_logs", "other_app.stderr.log"))
Expect(err).To(HaveOccurred())
_, err = fs.ReadFile(filepath.Join(dstDir, "..", "some.config"))
Expect(err).To(HaveOccurred())
})
Describe("changing permissions", func() {
BeforeEach(func() {
if runtime.GOOS == "windows" {
// https://golang.org/src/os/path_test.go#L124
Skip("Pending on Windows, chmod is not supported")
}
})
It("fixes permissions on destination directory", func() {