etcd

package
v0.0.0-...-711078c Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 16, 2019 License: BSD-2-Clause Imports: 12 Imported by: 0

Documentation

Overview

Package etcd ... This was influenced by https://github.com/Merovius/etcdfs/blob/master/etcdfs.go since both fuse and etcd are the same.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Exit

func Exit() error

Exit ... Exit hook

func Mount

func Mount(mountPoint string, ioMap *qos.IOMap) error

Mount ... Place to mount etcd

Types

type EDDir

type EDDir struct {
	Key  string
	FS   *EDFS
	Node *client.Node
}

EDDir ... Directory entry in etcd

func (*EDDir) Attr

func (e *EDDir) Attr(ctx context.Context, attr *fuse.Attr) error

Attr ... Required for fuse

func (*EDDir) Create

func (e *EDDir) Create(ctx context.Context, req *fuse.CreateRequest, resp *fuse.CreateResponse) (fs.Node, fs.Handle, error)

Create ... file creating implementation

func (*EDDir) Lookup

func (e *EDDir) Lookup(ctx context.Context, req *fuse.LookupRequest, resp *fuse.LookupResponse) (fs.Node, error)

Lookup ... Fuse lookup

func (*EDDir) Mkdir

func (e *EDDir) Mkdir(ctx context.Context, req *fuse.MkdirRequest) (fs.Node, error)

Mkdir ... Fuse make directory hook

func (*EDDir) ReadDirAll

func (e *EDDir) ReadDirAll(ctx context.Context) ([]fuse.Dirent, error)

ReadDirAll ... Get everything in a directory

type EDFS

type EDFS struct {
	Path     string
	KApi     client.KeysAPI
	ReadOnly bool
}

EDFS ... etcd root structure

func NewEDFS

func NewEDFS(mountPoint string, servers []string, readOnly bool) (*EDFS, error)

NewEDFS ... Create a new EDFS instance

func (*EDFS) Root

func (ed *EDFS) Root() (fs.Node, error)

Root ... Required for fuse system

type EDFile

type EDFile struct {
	Key  string
	FS   *EDFS
	Node *client.Node
}

EDFile ... File entry in etcd

func (*EDFile) Attr

func (ef *EDFile) Attr(ctx context.Context, attr *fuse.Attr) error

Attr ... Fuse atter

func (*EDFile) Open

func (ef *EDFile) Open(ctx context.Context, req *fuse.OpenRequest, resp *fuse.OpenResponse) (fs.Handle, error)

Open ... manage cache ect

func (*EDFile) ReadAll

func (ef *EDFile) ReadAll(ctx context.Context) ([]byte, error)

ReadAll ... Etcd files are small so read the entire thing

func (*EDFile) Write

func (ef *EDFile) Write(ctx context.Context, req *fuse.WriteRequest, resp *fuse.WriteResponse) error

Write ... Implements write fuse handler

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL