1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
package libmachine
import (
"io"
"github.com/crc-org/crc/v2/pkg/libmachine/host"
"github.com/crc-org/crc/v2/pkg/libmachine/persist"
rpcdriver "github.com/crc-org/machine/libmachine/drivers/rpc"
)
type API interface {
io.Closer
NewHost(driverName string, driverPath string, rawDriver []byte) (*host.Host, error)
persist.Store
}
type Client struct {
*persist.Filestore
clientDriverFactory rpcdriver.RPCClientDriverFactory
}
func NewClient(storePath string) *Client {
return &Client{
Filestore: persist.NewFilestore(storePath),
clientDriverFactory: rpcdriver.NewRPCClientDriverFactory(),
}
}
func (api *Client) Close() error {
return api.clientDriverFactory.Close()
}
|