INNER CODE UNIT · Go
mount
container2wasm/container2wasm · cmd/init/main.go:319
func mount(m inittype.MountInfo) error {
log.Printf("mounting %+v\n", m)
for _, d := range m.Dir {
if err := os.MkdirAll(d.Path, os.FileMode(d.Mode)); err != nil {
return fmt.Errorf("failed to create %q: %w", d.Path, err)
}
}
for _, f := range m.File {
cf, err := os.Create(f.Path)
if err != nil {
return fmt.Errorf("failed to create %q: %w", f.Path, err)
}
if _, err := cf.Write([]byte(f.Contents)); err != nil {
return fmt.Errorf("failed to write contents to %q: %w", f.Path, err)
}
if err := cf.Close(); err != nil {
return fmt.Errorf("failed to close %q: %w", f.Path, err)
}