Skip to content

About

go-billy filesystem wrapper for afero

Resources

Stars

0 stars

Watchers

0 watching

Forks

 
 

Latest commit

 

History

15 Commits

Folders and files

Repository files navigation

go-billy-desfacer GoDocBuild Statuscodecov

go-billy filesystem that wraps afero. It lets use afero filesystems with software that expects go-billy, for example with go-git.

Installation

go get github.com/jmgilman/go-billy-desfacer

Example of use

package main

import (
	"fmt"

	"github.com/spf13/afero"
	"github.com/jmgilman/go-billy-desfacer"
)

func main() {
	// wrap an afero filesystem to billy interface
	aferofs := afero.NewMemMapFs()
	billyfs := desfacer.New(aferofs)

	// create a file with billy interface
	billyfile, err := billyfs.Create("file")
	if err != nil {
		panic(err)
	}

	_, err = billyfile.Write([]byte("some data"))
	if err != nil {
		panic(err)
	}
	_ = billyfile.Close()

	// read file directly in afero filesystem
	aferofile, err := aferofs.Open("file")
	if err != nil {
		panic(err)
	}

	buf := make([]byte, 32)
	n, err := aferofile.Read(buf)
	if err != nil {
		panic(err)
	}
	_ = aferofile.Close()

	fmt.Println(string(buf[:n]))
}

The name

"desfacer" means "to undo" or "to unmake" in Galician and old Spanish.

License

Apache License Version 2.0, see LICENSE.

About

go-billy filesystem wrapper for afero

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages