Fix test node setup
This commit is contained in:
parent
041598dbb6
commit
d30d9a30bc
@ -2,8 +2,6 @@ package node
|
||||
|
||||
import (
|
||||
"context"
|
||||
"github.com/ipfs/go-filestore"
|
||||
|
||||
"github.com/filecoin-project/go-lotus/api"
|
||||
"github.com/filecoin-project/go-lotus/build"
|
||||
"github.com/filecoin-project/go-lotus/chain"
|
||||
@ -23,7 +21,6 @@ type API struct {
|
||||
Host host.Host
|
||||
Chain *chain.ChainStore
|
||||
PubSub *pubsub.PubSub
|
||||
Filestore *filestore.Filestore
|
||||
Mpool *chain.MessagePool
|
||||
Wallet *chain.Wallet
|
||||
}
|
||||
|
@ -168,8 +168,7 @@ func Online() Option {
|
||||
Override(new(blockstore.GCLocker), blockstore.NewGCLocker),
|
||||
Override(new(blockstore.GCBlockstore), blockstore.NewGCBlockstore),
|
||||
Override(new(exchange.Interface), modules.Bitswap),
|
||||
Override(new(*filestore.Filestore), modules.ClientFstore),
|
||||
Override(new(ipld.DAGService), modules.ClientDAG),
|
||||
Override(new(ipld.DAGService), testing.MemoryClientDag),
|
||||
|
||||
// Filecoin services
|
||||
Override(new(*chain.Syncer), chain.NewSyncer),
|
||||
@ -221,6 +220,9 @@ func Repo(r repo.Repo) Option {
|
||||
Override(new(datastore.Batching), modules.Datastore),
|
||||
Override(new(blockstore.Blockstore), modules.Blockstore),
|
||||
|
||||
Override(new(*filestore.Filestore), modules.ClientFstore),
|
||||
Override(new(ipld.DAGService), modules.ClientDAG),
|
||||
|
||||
Override(new(ci.PrivKey), pk),
|
||||
Override(new(ci.PubKey), ci.PrivKey.GetPublic),
|
||||
Override(new(peer.ID), peer.IDFromPublicKey),
|
||||
|
@ -2,6 +2,7 @@ package client
|
||||
|
||||
import (
|
||||
"context"
|
||||
"errors"
|
||||
"github.com/filecoin-project/go-lotus/api"
|
||||
"github.com/ipfs/go-filestore"
|
||||
"go.uber.org/fx"
|
||||
@ -19,7 +20,7 @@ type LocalStorage struct {
|
||||
fx.In
|
||||
|
||||
LocalDAG ipld.DAGService
|
||||
Filestore *filestore.Filestore
|
||||
Filestore *filestore.Filestore `optional:"true"`
|
||||
}
|
||||
|
||||
func (s *LocalStorage) ClientImport(ctx context.Context, path string) (cid.Cid, error) {
|
||||
@ -60,6 +61,9 @@ func (s *LocalStorage) ClientImport(ctx context.Context, path string) (cid.Cid,
|
||||
}
|
||||
|
||||
func (s *LocalStorage) ClientListImports(ctx context.Context) ([]api.Import, error) {
|
||||
if s.Filestore == nil {
|
||||
return nil, errors.New("listing imports is not supported with in-memory dag yet")
|
||||
}
|
||||
next, err := filestore.ListAll(s.Filestore, false)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
|
@ -2,20 +2,20 @@ package modules
|
||||
|
||||
import (
|
||||
"context"
|
||||
"github.com/ipfs/go-blockservice"
|
||||
"github.com/ipfs/go-datastore/namespace"
|
||||
"github.com/ipfs/go-filestore"
|
||||
"github.com/ipfs/go-merkledag"
|
||||
"path/filepath"
|
||||
|
||||
"github.com/ipfs/go-bitswap"
|
||||
"github.com/ipfs/go-bitswap/network"
|
||||
"github.com/ipfs/go-blockservice"
|
||||
"github.com/ipfs/go-datastore"
|
||||
"github.com/ipfs/go-datastore/namespace"
|
||||
"github.com/ipfs/go-filestore"
|
||||
blockstore "github.com/ipfs/go-ipfs-blockstore"
|
||||
exchange "github.com/ipfs/go-ipfs-exchange-interface"
|
||||
offline "github.com/ipfs/go-ipfs-exchange-offline"
|
||||
ipld "github.com/ipfs/go-ipld-format"
|
||||
logging "github.com/ipfs/go-log"
|
||||
"github.com/ipfs/go-merkledag"
|
||||
"github.com/libp2p/go-libp2p-core/host"
|
||||
"github.com/libp2p/go-libp2p-core/peerstore"
|
||||
"github.com/libp2p/go-libp2p-core/routing"
|
||||
|
@ -1,9 +1,16 @@
|
||||
package testing
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/ipfs/go-blockservice"
|
||||
"github.com/ipfs/go-datastore"
|
||||
dsync "github.com/ipfs/go-datastore/sync"
|
||||
blockstore "github.com/ipfs/go-ipfs-blockstore"
|
||||
offline "github.com/ipfs/go-ipfs-exchange-offline"
|
||||
ipld "github.com/ipfs/go-ipld-format"
|
||||
"github.com/ipfs/go-merkledag"
|
||||
"go.uber.org/fx"
|
||||
)
|
||||
|
||||
func MapBlockstore() blockstore.Blockstore {
|
||||
@ -16,3 +23,17 @@ func MapBlockstore() blockstore.Blockstore {
|
||||
func MapDatastore() datastore.Batching {
|
||||
return dsync.MutexWrap(datastore.NewMapDatastore())
|
||||
}
|
||||
|
||||
func MemoryClientDag(lc fx.Lifecycle) ipld.DAGService {
|
||||
ibs := blockstore.NewBlockstore(datastore.NewMapDatastore())
|
||||
bsvc := blockservice.New(ibs, offline.Exchange(ibs))
|
||||
dag := merkledag.NewDAGService(bsvc)
|
||||
|
||||
lc.Append(fx.Hook{
|
||||
OnStop: func(_ context.Context) error {
|
||||
return bsvc.Close()
|
||||
},
|
||||
})
|
||||
|
||||
return dag
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user