mirror of
https://github.com/anyproto/anytype-heart.git
synced 2025-06-09 09:35:00 +09:00
network config
This commit is contained in:
parent
7a60ffc262
commit
77e1d3c4f4
12 changed files with 156 additions and 658 deletions
|
@ -2,13 +2,15 @@ package anytype
|
|||
|
||||
import (
|
||||
"context"
|
||||
"github.com/anytypeio/any-sync/util/crypto"
|
||||
"github.com/anytypeio/any-sync/coordinator/nodeconfsource"
|
||||
"github.com/anytypeio/any-sync/nodeconf/nodeconfstore"
|
||||
"os"
|
||||
|
||||
"github.com/anytypeio/any-sync/util/crypto"
|
||||
|
||||
"github.com/anytypeio/any-sync/app"
|
||||
"github.com/anytypeio/any-sync/commonfile/fileservice"
|
||||
"github.com/anytypeio/any-sync/commonspace"
|
||||
|
||||
"github.com/anytypeio/any-sync/coordinator/coordinatorclient"
|
||||
"github.com/anytypeio/any-sync/net/dialer"
|
||||
"github.com/anytypeio/any-sync/net/pool"
|
||||
|
@ -22,6 +24,7 @@ import (
|
|||
decorator "github.com/anytypeio/go-anytype-middleware/core/block/bookmark/bookmarkimporter"
|
||||
"github.com/anytypeio/go-anytype-middleware/core/block/collection"
|
||||
"github.com/anytypeio/go-anytype-middleware/core/block/editor"
|
||||
"github.com/anytypeio/go-anytype-middleware/core/block/editor/converter"
|
||||
"github.com/anytypeio/go-anytype-middleware/core/block/export"
|
||||
importer "github.com/anytypeio/go-anytype-middleware/core/block/import"
|
||||
"github.com/anytypeio/go-anytype-middleware/core/block/object"
|
||||
|
@ -53,7 +56,6 @@ import (
|
|||
"github.com/anytypeio/go-anytype-middleware/pkg/lib/localstore/objectstore"
|
||||
"github.com/anytypeio/go-anytype-middleware/space"
|
||||
"github.com/anytypeio/go-anytype-middleware/space/clientserver"
|
||||
//nolint: misspell
|
||||
"github.com/anytypeio/go-anytype-middleware/space/credentialprovider"
|
||||
"github.com/anytypeio/go-anytype-middleware/space/debug/clientdebugrpc"
|
||||
"github.com/anytypeio/go-anytype-middleware/space/localdiscovery"
|
||||
|
@ -104,10 +106,13 @@ func Bootstrap(a *app.App, components ...app.Component) {
|
|||
sbtProvider := typeprovider.New(spaceService)
|
||||
objectStore := objectstore.New(sbtProvider)
|
||||
objectCreator := object.NewCreator(sbtProvider)
|
||||
blockService := block.New(tempDirService, sbtProvider)
|
||||
layoutConverter := converter.NewLayoutConverter(objectStore, sbtProvider)
|
||||
blockService := block.New(tempDirService, sbtProvider, layoutConverter)
|
||||
collectionService := collection.New(blockService, objectStore, objectCreator, blockService)
|
||||
indexerService := indexer.New(blockService, spaceService)
|
||||
a.Register(clientds.New()).
|
||||
Register(nodeconfsource.New()).
|
||||
Register(nodeconfstore.New()).
|
||||
Register(nodeconf.New()).
|
||||
Register(peerstore.New()).
|
||||
Register(storage.New()).
|
||||
|
@ -159,6 +164,6 @@ func Bootstrap(a *app.App, components ...app.Component) {
|
|||
Register(decorator.New()).
|
||||
Register(objectCreator).
|
||||
Register(kanban.New()).
|
||||
Register(editor.NewObjectFactory(tempDirService, sbtProvider))
|
||||
Register(editor.NewObjectFactory(tempDirService, sbtProvider, layoutConverter))
|
||||
return
|
||||
}
|
||||
|
|
|
@ -348,12 +348,13 @@ func (c *Config) GetDebugAPIConfig() DebugAPIConfig {
|
|||
}
|
||||
}
|
||||
|
||||
func (c *Config) GetNodes() []nodeconf.NodeConfig {
|
||||
var nodes struct {
|
||||
Nodes []nodeconf.NodeConfig `yaml:"nodes"`
|
||||
}
|
||||
if err := yaml.Unmarshal(nodesConfYmlBytes, &nodes); err != nil {
|
||||
func (c *Config) GetNodeConf() (conf nodeconf.Configuration) {
|
||||
if err := yaml.Unmarshal(nodesConfYmlBytes, &conf); err != nil {
|
||||
panic(fmt.Errorf("unable to parse node config: %v", err))
|
||||
}
|
||||
return nodes.Nodes
|
||||
return
|
||||
}
|
||||
|
||||
func (c *Config) GetNodeConfStorePath() string {
|
||||
return filepath.Join(c.RepoPath, "nodeconf")
|
||||
}
|
||||
|
|
|
@ -4,5 +4,5 @@ package config
|
|||
|
||||
import _ "embed"
|
||||
|
||||
//go:embed nodes/nodes.yml
|
||||
//go:embed nodes/staging.yml
|
||||
var nodesConfYmlBytes []byte
|
||||
|
|
30
core/anytype/config/nodes/local.yml
Normal file
30
core/anytype/config/nodes/local.yml
Normal file
|
@ -0,0 +1,30 @@
|
|||
network:
|
||||
id: 64384a038e697b7fce2f447e
|
||||
networkId: N4N1wDHFpFpovXBqdbq2TDXE9tXdXbtV1eTJFpKJW4YeaJqR
|
||||
nodes:
|
||||
- peerId: 12D3KooWKLCajM89S8unbt3tgGbRLgmiWnFZT3adn9A5pQciBSLa
|
||||
addresses:
|
||||
- "127.0.0.1:4830"
|
||||
types:
|
||||
- coordinator
|
||||
- peerId: 12D3KooWKnXTtbveMDUFfeSqR5dt9a4JW66tZQXG7C7PdDh3vqGu
|
||||
addresses:
|
||||
- 127.0.0.1:4430
|
||||
types:
|
||||
- tree
|
||||
- peerId: 12D3KooWKgVN2kW8xw5Uvm2sLUnkeUNQYAvcWvF58maTzev7FjPi
|
||||
addresses:
|
||||
- 127.0.0.1:4431
|
||||
types:
|
||||
- tree
|
||||
- peerId: 12D3KooWCUPYuMnQhu9yREJgQyjcz8zWY83rZGmDLwb9YR6QkbZX
|
||||
addresses:
|
||||
- 127.0.0.1:4432
|
||||
types:
|
||||
- tree
|
||||
- peerId: 12D3KooWQxiZ5a7vcy4DTJa8Gy1eVUmwb5ojN4SrJC9Rjxzigw6C
|
||||
addresses:
|
||||
- 127.0.0.1:4730
|
||||
types:
|
||||
- file
|
||||
creationTime: 2023-04-13T20:29:23.453806629+02:00
|
|
@ -1,27 +0,0 @@
|
|||
nodes:
|
||||
- peerId: 12D3KooWKnXTtbveMDUFfeSqR5dt9a4JW66tZQXG7C7PdDh3vqGu
|
||||
address:
|
||||
- 127.0.0.1:4430
|
||||
signingKey: /Ou28/uU/z3BbGmkHMV5ev0mwl6lJI/NNniFlMm2gOeUHDfed/zbwYZLbPt1B0sujNx0DGKUgUTUXy/SE7biwg==
|
||||
encryptionKey: MIIEpAIBAAKCAQEA23AWlsGaLrUxea+x6rkpy1ByqUJKdb2oS10q0urntUCivsNb7ipo1tvM2rldn6DAIrIC1nQHdlwrakNhl/j9zfX/GdACRDEuy7pVigm78QqYwSoyZn1l717HGjXKpJpa2m9Qyo6ZNGTLcej06zuOK8yUR4gudxSV5BJ2AmMvB9v4jUdCUwROSMy0e/hDa3Cx2xV33iULF/XltoeBVDoW6yYXfsok2yH3jHUV59yqQDbZO+kAj5rO8Fd/DnmGriuQZwAwdqJBH6/NtkhbA6triS/xW7f+RoyjjA3dp7TSUscHTFW0LIUaS0ZKt6amaanT7L/Jwi/0w133wTboYPG7NQIDAQABAoIBAGRYaGv+ElSDlSFRP6nXjI4ltplB8CzRUrFL5HZY5yZSbVmQmmxZxmFiV9Y5Z9/EMbhr8LJCktsEIPJR58IIIX/amxIhtbebSgvtpIogE2qRbvL+KdgGRePlUmTg7k7BKwSyXJ6UAOkdoo7veXhMXqIWxkPDuYPIzRZjfsVut6X+j0e9W2/kK7Tx1cn07GGyEX6T9sYsrDZud9xAgDWeE3ARga+M8l3RpTi3GiM6aaz82byjtn+uROUioUSDRLeOx4lOsmTzwWs4+tcyguqC4h/01Hejs9gDsJTOZ+xsrSc+eTsj1oOmABtHcuQ6NWq4KTqV9gVAB9BEMa39k3SrzaECgYEA9kd71vAwqFp6iu3INXBuwJouV72Egwm936KGcs9/NxfXQ7R6NdKa4LiWxdIn8e7uT6+bGPxCPuUmeJ9pYandb6j6fcBcGAjPOJPg5cTtoaeXSTOBNtzaoDLM191dNkhftXAgVoz6EQXUXaGXqnUEWDCptZ8/VKO4Jbb+Zco3F30CgYEA5BljE1KiWKP3IXwfndnPFKwev8Ds6YMczCFpiCzHB4LVLAWShUQrQIcA12yIRHTvD35Vg7SwH5mM+DFd9AMNxTznz8aC7R+jXEApeaCEQqBEKakoDFMsdblT6WFwerfl5ug32IyeKglfLuOiID5M740t+6TxUR1ZjnhIx3QdMBkCgYBUANn63H6cThBSZvzNTYZZZ72668fRMndzWmplquUHk7g3Pc4ZobZ2REAZRa+eVBMxVwKeKR0net3+ctFtIJWJSqf2ULCY+hhEghxKAzvS0elGbKz8W6Su0+UPFFCA/Xq31oERRJDfUY+4SDAFUlijBCY+7wyZACcFpj9r1OepuQKBgQDAJV6ffWHC98SLkYr0pvFZgbCZaYRpJQiSMKc8jjPO8PhwD/Wgi48/2TntPsD/od1sGMkinIgs5mWpAbUag6QK/cZs8dWCuL8dS/NkQMKJeYZR7ewNjdcLCGZWV72vstBZFk9M/Q+Ta7ehwSHmtXSL60rMC+M4qFezu0HbusWHqQKBgQCNuIsiB1yS1aByY2Hw2NJyAWFIRLuv4VNm+S/+YUJzOb/cuX5rwJ+PydJj0xD5mKKq5zGhCFzGZYdheKCYC4UQKn+Zz6Iv5T/mIJU7ELy9R2/I/Jv/IQMQwDXUokbNU8p25Hxul+rI+INjoHihUFKRNL68iuGVNjQHyKQYjit+mg==
|
||||
types:
|
||||
- tree
|
||||
- peerId: 12D3KooWKgVN2kW8xw5Uvm2sLUnkeUNQYAvcWvF58maTzev7FjPi
|
||||
address:
|
||||
- 127.0.0.1:4431
|
||||
signingKey: ckI1ThxMQmAWH48so5jT614HNg4VppB/3jTfh1cdrzSSkFuVPiGzSDJcsgFLsRGW2WT0a8ymqtc4hog5Z4mdfQ==
|
||||
encryptionKey: MIIEpAIBAAKCAQEAwQcHwXkTynIvU5PfTn9kaQEb5Zzz8eHl/uO1srbWI0hM+sIvhOq/ahYuhDlai0mAhRFQIvb6QRnWzCp3qvMH8+j8ls83BKV4hfxuS+SR/Y/LonW+WeLljiloMM5ju9tjw1iSslUK6z7d0HSLppQCCjMP+v3kKjx24qJ2T+2N1MAMbdt+S5c2P2jBUJVSvQbZ1AVuZTEzDau//+cZzV47lsODrVZ2SxW/KAAKA9xIJSIwBFyIqya54FDlrsy4HMcThxUbmcqy0Ou3bRjPR2f9A6QaNDNlolPhW1Z4gs+MTQOXJyAj2vdKwNKPwr8X6wyUtN4v8MiJt2yl4h3EVSVkGQIDAQABAoIBAQCak4iwdMdWfa5MncRb1kSQmiS+8bug3igSwEOHREejpYiP3uWy6VI0IGNL26oYlNnotf6YoXOyooCSqwd9zHV37AIquvHyNJiZo5aoC/ilN3v5M5Ul4j+2Yo5fV0gi7gOsMcf4K4Y88PEst8gFs80WYeHQO3V2JUmHIFbilvfXgDfQNuKlHXgWq5kNNCxIobGpuP70Vvn1ANkDXLt+bU8RCbmBYFUZ/4HUeawf2NX+Xn5T1NFpheA68hAGprFQu6CuEsM34TtPZwH5SxyvOmA218nQbtq5fNLUgHZdq/uAeQyq7E8kxyOMEbx7m1UYtxDjwowBQgQd1dOtm3wTeQdpAoGBANjs7B0IW/B3TY6mRipcKtTYMVJ+M6AKu7etTkcmM6NpLGaIL9HqNP/a8PoNmHzVOBPJlC96ChQAvcULe+SKBL4L5g1T+k7OQvHEFMwzkFgs/HxjvQE9b1xX1Qyp+e9H7yvrcJhvRPbj3LLp7vunHL9dEm4/PFNKgCFExNsiv8WvAoGBAOPMGXtAethDYZE7vdlD55GdhsgklCmF3YQcraWsZrswj9paIBV8FWtVZIUDdaqOasPwT8L2NdajYWXXcmLlvxkOQQx7+cJG4SdLRwEz531rXvtcYrWPYYwjf37DQMi2qRmvZ0Oc/atitwN7mQ4wCMzZ+CV04HJTjK4eRfeDeyy3AoGAFbQWp4z3jeaR1uzh5kkUa/k5bhR8W83XHDh1tX6n+fiC3btQdYMmTFb+dzY3BH5cvvYTInDmYzvzwKw2eBYrBUyxdrHpQEs4vXGt1wRts7TEijl8ZoxcAPQ0t7Cl9f/PeSh0OnwffUgtA6WOKJV+tdK9DlS7V2YDzdBQldAzObcCgYAbjn0mo844iy4qW4fD2KsSunOrkoE55K+/Y5i+CfUDgARm7bAj6TbOHS5jyN9bGo9f1JpRg2dP58PIhh+YRyKu7UKBOB4mmlxyXHDifFzslyiOT8bBH+80/LZXp1cW8MHUEZv0WfF14iMxkKobRURLQ7L5FQJx0hmalp7wKj+kUQKBgQCEavx+ELQu1M22t4Kk1MOI1zEsrG4D+hjACmoWQsIjMqi5x+9vPJNshrO9vbYljjsIt4EOfqBB88oMepCesVHwbX3+/j7Yb48pmf2vZNcQ+SFozJqnCqYNQiWMtNXWT312NVdzkvpTlA0e1vaauwJjtetRnYDJUOPjc8BrdKsftw==
|
||||
types:
|
||||
- tree
|
||||
- peerId: 12D3KooWCUPYuMnQhu9yREJgQyjcz8zWY83rZGmDLwb9YR6QkbZX
|
||||
address:
|
||||
- 127.0.0.1:4432
|
||||
signingKey: EqD0bdvO2E9+i29hfJTMtae8Zw8Dgnb/KanLSg59K7YndQHdxxvtVUljy3htlXd7dGKfEuJ7EglVHdNxzg5q7g==
|
||||
encryptionKey: MIIEpAIBAAKCAQEAuOwKfzHLrm94jH4PElKfkB9geQ5OhtdbcS4K3TeyZ5xU0hi0TiXxOiHQOCg2uO7B/fnQcAArUBvPNa4QOvNuWRY+246FHYBxCJvJdfOpwirQbQ2l5iqR13rpSAELnF/zB4XMQa6wGVhsgWipvY9PUrLF6RwpeeBu9OtpVaA2oUiUXyD+v1f4dNXjZqrTKS9IycksGEEI4knEfG421K862BRty94pVWfqv/ZgpJUQZiWLX9CSbAdvjoHxOdm96VhMjTBw3oyv7hTr/zQR9y77OMFwOOBtn4QWXSS54r89inoksgGjH5cProhR+V4QZ4962TGsnc92j+IjtlxI/o3CuQIDAQABAoIBACyLl5+6NBFqAsT9HM5SHuPN2yRuINZ0jC+AYteVMiGpU/lkQBLPKwPQ32KXtU7pHMv8YIyKTeS3Pjv1GS3KNBu7sxqag1Bu/0uOk4IZVxxRyfFrJzqBqK4aipVwwwZBSr7WKTTtSrhgR4sI1lK2ceo+7FPSF9+nA7N1/eLFfENvWegG9cM9G1162f1ypTmTKB6zvyEhrMnpw5IWGiyL41Pbn7Q6qMxJCMedJn40UWwZ+K04StxcX0MdPqiRC1mhEECF23y/Yu3QYVlyAR/Ya6POPK+Y/PQhvYuA8gMbdJgM/BpFntqqJx6nf9ojZjmkpFytHuKojDP+SOYSvifGSzECgYEA85YGa9DNHeEGU7e7U6iReHn0Cy1ZlDl4q/E1tyOSY1tpuTdiIYNLZAmx/ZDLj7y8NcNwK44CWhNGUlsTGOL0wrsFefH6tJOLLklTgwo6gnFFeNKUaTrZMQhu1Rf6fruO6yUHe34EgDnMIclx3+bXpZmWGVVOXLx7e/gQfDiRg3UCgYEAwlimHW2pJshQdCCyIFPvf36FK7xNiTIGy4VW8q8ulX4UESioxQtv8Irf5UCo1WpTSNA8RYRPU4gZnp0jkBydNDU2bdNGiN3IySU99/2dtYEHPJAferwXoOVdSCVXw2fGyQZK6GaciWDP3bgZdVKBSGBCN30eJ2PDVKni2NiHbbUCgYAdPHKE2kjkPy/9OF45ik/7f9e0x7qqucMsEAV8d76IQl6MJoOWtiWEWk2Mu6ZTGDoW0eBSufa6TPnxxJCkOglangvoOQz4Q4U/BvoJDl87bNED0XKStsd+xR5YYUplj6l1u7oMLnHn2ggQPhd24kQb0jVb0QtYwh6oIHwKDNgaSQKBgQCuTYeeuS2ORPYzUOexKtaQSE7z7My1kZKakhprSkbDePJSeV70as+Ys1UfbaB+1/+ePHTx/DqRNm2T3md45tDvdBI+6dBHDHL6RFaRxnrdwL1WygQRtgSTH2NMQ4G1Fawpu2UPjogyhguoVWcv3DFrUjnRPnv+4/DaTAvSZFECSQKBgQDh6g0n+MIknDo89ffCmIuD5qkPi7GYYGBfQ7HHHq5dUXazN6+vKazgGEJo72MU4ZlHl/U33MoMuuVP2cBEYJx8iMaP7ze8jUWVRA7rzg4A2ayBCOQxpBehEBhD1yEBPKO5PVTYV0a3BiM4tQLLPuoh5QcB7ANwmZkFdLpizLqn2A==
|
||||
types:
|
||||
- tree
|
||||
- peerId: 12D3KooWQxiZ5a7vcy4DTJa8Gy1eVUmwb5ojN4SrJC9Rjxzigw6C
|
||||
address:
|
||||
- 127.0.0.1:4730
|
||||
types:
|
||||
- file
|
|
@ -1,72 +0,0 @@
|
|||
nodes:
|
||||
- address:
|
||||
- stage1-any-sync-node1.anytype.io:443
|
||||
encryptionKey: MIIEogIBAAKCAQEAp1uwLB58vK61ySIeHjCZ2VBcI5USH7PjEzHzs/6nk6Un1rUK9VzsfXu3ttd1ldYP8EqYnWMNML0H7290kNsaKr32vbom7TEsZV6nz3BYIi8peTygq5KDqj3oJrwreje2tG1Ucj/VIrOxJCHzLKftLaaD9hN1J+DnXTYmGa6W7gmq/7ezWFf0WZrx7UoZeCC6kOkudvA+Eh3VI4LWi/MSnPgRgh9nnBhF8vM3I/Y6NWFIMQvD3/vPqlrJ6k3Dm/aJIvcYZ+99jDtAbdkUfkFFFi22O+SZKT2aBRsXIkJFP6FmqP+GPbe+gxRKrGmW5dnBy8FjyRsHLnnccH6LOT94HwIDAQABAoIBAHLQe0d5TvgfIAWxy1nI2/NzpxKeNYXcYn+LuHaW0R6AopkxMShtrKzV0I62uCuoZNzkQFlRV/5E4QnJu/2Y4xXJp1o4OHZnUt7kllnA6CXjlx9ekZfDd2K2/+p7E5TQXh7gFpwe4Lji8Dcqt2q+df/oigWrCafnKrMO8AqUdWUtzg3RAmrbZUom9By7C1SVscBWGse8IW7T0bcNfn3p706bv/t1nlJ02QJd6v+BiS6yhCUOXjBtC3vdGbJkbFmb3rZgi+hqtpBFugB0/EKHhsLTkrLD3fOfE/MgVrkpgeoNyUEt9lREcqck2AAFh/MawUU3O9h2kww4vBR+i0/RAeECgYEA3mlYuqbbfhWAtxiKecdP/CofoNOUKofzyRhS0jTZ1d5ioWARU4RfvrJMWccut4NMDm2C+cAdey3mmyWcMbzs1HhMCMZGJ7Sjcl3iicAkH5RqLVAVQkv6AuWNrmd9sYJTViLl2FEiXL6jBo59fLnfMueFLvx5a7y4d6n7jqT9PpECgYEAwKHsYzsvycHTjnsWRaUdTQ3stM6Ns+aaHwWeKS7BYtJYv/h7ILoRXczfv+ZxCkrvcTxHw8KNEvB6sAJ3GfWJ5QdSg8kjjx3NR55mWmqNcbMaxcq4StYPqM6eZQaV5JyBKL7cXYsLPSK3y25uDufh3hwg6lfKqCGgpBy6zHEGA68CgYA8LF5QKYKq6yBm6SHV7sHKJI9oELY+h4fCeW026AujnEYtCPPHF8JbspuLkqMmDUTPhntwHLUdNX71rMhEgKvGlEFmAlbKuUmbUKFQyYY8cQgE+Gy4AhxDGl4puGA+XVc0r75ltxXH59/tjzGORC+J8y+KVc54ApgZ8AhaQHMvsQKBgGF80RQ7LOkvdbCC7Heco2KOrH+olSA5kUAn6K4w4l/v0kh9KVsbr5RIDeihaA3sdJdbCXqx6BFwsLaI2NvDXuEQvprBXYSdcXlQWb5idGjZWrBE8tW01cH5p0G7fnpvFhKX3RBeQPbUri1/GqXihnWQyLuwaHiEZDcJ7yNuA7wzAoGADJGj2RXiqVmlwWzzfR54mUJlZ3QaqF4qnL7+XMRvKB1J03cwhuN7W7sEDgtfT62UQGQDH8OR4b5spSRSVQ9ycKDX3vDNmt8QiCThPobk8qKKccQQ76Sh9jhjFOkZev18yQ5NUgMxBQcJNAMaOcXq20QzRJ8SNYgewbbLPe0N9IM=
|
||||
peerId: 12D3KooWN6Wwdod3axHpfWq1anBCgYG1sZK42RpgEZEokT4KnMu7
|
||||
signingKey: clgDuUSkRuj82F06G0wq6JLERJs093YentCuXledMZq2b3TzDfYbLgQDJ8lxTFqnR+Q3YyXAJ8fpGX3JMZVVpg==
|
||||
types:
|
||||
- tree
|
||||
- address:
|
||||
- stage1-any-sync-node2.anytype.io:443
|
||||
encryptionKey: MIIEpAIBAAKCAQEA1D3x2RvxeQ4+fUKE/IftsAdBS5bGid7nVkUUsKaLDLcGcVe4ZjENDEKizX8IJ45villg29xJTvMG4PojWbfoBzvmwD4jEUy9XWDJPxQaPuPvN7VCrCw8fQROV3QScp0Dx/JcA7ogMolNau40+vKAo3lQi0W1VVuhSPc0c2xmccGx+u1RpCwgCmSb6SGSSvArlqv++VeIUNSL1UEmaOMvSYo+qKMIWuTBOTwDnuFB7qP0UAjQvQSvHQ/jm7DGEnQwq0d9eFnIXzn5I2pwhZGet9dPjUnr7rE33UTKaQhFSA4L2gGunm+/CGifSL50yUe1c5+cFxDNn+2XzhO1HRK+UQIDAQABAoIBAQC1JinFpJP1PrMXNi9LWrkEBS011vqdsiLA/zUpkPwdXhmho70/e54nWLibrFDJckjBTIffH6VyPPsiCl0htlXT1sycSGyl11nI2VLrA71i8Ci843iEez0ldwdmnSshp+ISRklC5RmWCJqLKcUOauxgmqqkNFsQ/6QpItUhruPBMoLwUvf9zwlgqr22yJlhbL4foFCMxXMoTfRZyzS9/MDlxFs6esKATh0pKzOIQNJpTuzD4nUTiDOTrjYUvx8yZcayPutzgSDxb/Ry9Lm1159z3RZ5l7hBtuUldiE+K+QYMFoBkFGBWYRd1IWNvv+jzW2krknd3556O8hHPLmKG6IBAoGBAPNdzJLTC14roNb9WtXUp1cqfjvD9QLtNznFb9ixi7Ej+oabY09KUqVNzbohd4SOwcG8LeX4hrvlTLcGRlTjzkB6RWFPWTc4MU/Am0jotjYj6TzWoQw6qH7RmCz6EBuHUi8DCqIap+/6EjL+jybP23FIrHBVzmYxnVa4F9vozKazAoGBAN9ChQcWg7oJSl31HtOzxEqzNzU8UFx3O/HOgGUbSgYwqvRlUCO0hawRw2Qzp2vA+dJrEk78vhBhfkvpPILSpyQ4AyVNaVV2ConinunoWPfBo6CrUVwSbU4BTDfZO/Xjyfw+wMYi7LBXKEZZGidxv18twEj9aH+fscfPE9z7D2jrAoGAaUDQEVAlQn0r+s9oUcK+/PvrzH1bogBmOh4h2V4wRFSDLWRW9xv10nhr2WxP/IyhT+DLGQL7gpgRLbcRA/XiZhB7oTJoK3GqIgvzHP1IkPHHFgDddiSIaxDK9+jOvpkv+hUerC1LJIbLCDMARpDvH3eG3K6/rYMXwUGtT/bHS/ECgYEAnkkLB3tu6PatQvAGaxGImW12NsgMMYJXfZhqb0RptvnKOnuZ1banDteJMAFvMXYfqI9A679FAVgdsrQpspam6YbMtCWuCGkoD5ocELoqWX1wBPlxNVXbKPLCltXtLOfSzIOxKMiaBmvEohuJ7201wMUvDpCbBeCyqnamHoXg5wECgYBmRruLXSWQZWFcfVDcIeuA2h52rQ1ou5Xh2SGeuoZMbUPoEZP8unQVL3PhD5bjL0XPonHJI/au/FlYJRb89ESjiYYPVxvx3pIM3Kc7uoPzeYofcHk8u2NJQcKkZT9iO3s3kegRK1FAi9d06C0H93jEUU2Fs/OmfIe/pEzqyIDkvA==
|
||||
peerId: 12D3KooWJuqyFQ2ZgnYFNhdHAddF7DrTPP2rNueLjw5BWDJa9kqg
|
||||
signingKey: wmZ8Ynw8aYYplFyCNMsulmJtv77WNgpitD1ZsjA5aJmHIIWgmLMNioeGvIoY9/JNYsYXo8N0Wn9CPK4BKKQ1gw==
|
||||
types:
|
||||
- tree
|
||||
- address:
|
||||
- stage1-any-sync-node3.anytype.io:443
|
||||
encryptionKey: MIIEpAIBAAKCAQEAotdoSHw/rWTG8J/PirXv82qHcOHWmbdVZlTd3vHRLo2inYJLZTy8nAbJRssBEKzaFy5OjQp/FCXfq4x0z8+aQaXH7Omzyrlom0Qv1DT6HAbQC4BPljVE3M0a5WsoCYF8XTMW83oUT66ahDT++MOYg9FIbzU2Xvu2osRA69aKegid4Cc2FrZjLhC9c2+IzQdjRB0bgKYgmmuJmStMSF8+Rqp6qkkUVImRcOqyvRR/pFCBYs6RF5OmpHMpw61ieS2/nBPn8VpS7J56H2FM7Zu1oTkInn08JbdxiyQuo5kxTpIBHCQdgY6FQk/7Alyft971upC3nVxf9HptQwispkYfoQIDAQABAoIBADYlB5Cqd4XQ73EMwjZt/kXikvxOq0tbMTMgXtGFeDdRctOKgkU8J759Zyl50HXZ834nsIinB9AMM83XmvOKJNFVLR+yKUzrz0NpLboSj2MIRN6+IDhip+3+6MWFlr9qZY6bsTLt0ZkZBlmVQX43kxupV7taZyS372c5eBiyskKW2Q5vCR8THYOycpilbMAqGndd76YumkU6yuJDNX5YIkcRnZtB7rVGrNC270g6Jsysyo3kk2+CDHH22x8xrLInaUDGGcTWA0WLhuqx5Diqg1FM0pak6YkSaAl1Yh4X/cnmObtdumt8bAM6br+rQ4qRwNhWSkqnOMS93QlVsFzJIlECgYEA0SZhInwBCNK0EOiIAUbHH7iCC/oPa8KbqSH9N819tbIBEUlX71a4E0gQreVzt84xsISViXRHO9tifL6lq9iT1yfg6YpSQrcqIwqg6xZav8WmmZSzple+Y5Hp3BEVUoMTjMQS7452vWhRVzY/BfS84uCB2XVxS8jOrSoCsWETJIUCgYEAx1F8ZgbbgOF0Kp7mMnxWY72xvuvpdy4NmWzILlSuVBylUL6jL3TbIwan/wBsdHCKXajQoi5ykDbbrgSD/xdBIrW8qW4eOwAG7QePjwFWjafJCiQk3WKY3GYRXMOSx6QUUN60hpjk0ukV6a9POLnZR0Invhuuv33dMD3VPiVbN20CgYEAtJP2edem7P8/CPo7sx5w/ipH3h9hASFdVIJMJsn9J8swsMQqcDLna35lKD9b0e7taAKROcRzXHLmbd4NHHo56yI7Rmhu7btHXknm9hKu97SnSyLgmVZYw49P4vm89yjE0FzaHItcadyPnkTv1SyhiSFd+2szDsOp7ki/Wnb+GCECgYA+f7ioLWJK6WcJrkW0cvSL1gGUQlk0u8Yb49ZpYLhBO7JCvWRiDxxfwUiQV0uqv1dDwxmYoUPfILSFvni9VkdgYOhFoHfuPDXvwT0stFi1lnUdrvO4T6BrC75J/jFaVILiUNL+mZa248uxOP14Zh5Rj9byb6+97/OZmunw0LnniQKBgQCxMc+DXjyQTjqjxClvQxNgEHTQAXSyL8XdcFnagxqTOZZuL5Rx0yoo12dmm0tog5xEZblI+dAMeaZhLhvVz2/Zeh1gI1x61gQgZ82US+A09DddXbj9PlzcN+iGaFJds5hrddrZwjI5AXe40rqFh1uyVBYUVLqK+clPKI8xtniW+A==
|
||||
peerId: 12D3KooWCub3vY3kWmAQ5qf9TtKBHKY6Yk7F6tGb13M1sXqvcbV4
|
||||
signingKey: Xu0skpFFgNKz6yR/GVmro6RJZKoi9nPnLqcYeUeTIoIt6Yfv5OXDB7WF0Rx5D55jYgWqSfuKVRWTms3d92gzaw==
|
||||
types:
|
||||
- tree
|
||||
- address:
|
||||
- stage1-any-sync-node4.anytype.io:443
|
||||
encryptionKey: MIIEpAIBAAKCAQEArwxBf1IkwTB+hCfUYj3eOWHnVwTzn1X6Dn0rH5fLOjX5IzfAOt3sxj7AYEk+PupcJluwO1zyWfwr22i+RvWG2Qf7a7vR24K+HR9CZhZPsufk195Qbsrn2mBDoPKDwzXU6NS88kVaDqeZIHIqyFT6mTcGJuinaO/a4yBmbiIdpsrtdPVBnceQzAyYzHFG8xOmXFenG4pvQYrMd970MuAQbEo9pQb/GbOawtqe5W3ETeKq7uN7LcjzGojkZx7pA6BaZRBymSzidHoK9ef7eE+xzp7kiKpNDGmHIKU+CLoE/F6XnJCYCNBlJTqWXLteF4tWf+SvHVT7mCog4U9403Yz/QIDAQABAoIBAHb6jJY+vg61qHipHdl8lcxI+FYUXobhiGpKt4HsycySHPnMDhO0/hetVVLc1bsrzmCgF4Px5CQ3m5OxeQuAHRztKP4MFlLuZcwjkB0Vcyx2I/x59g+oSLkMj0sZK2gG8eUjnB3L969YSWNdVij+Yaq8VKkjn45a4VtZjWW0OJVB3x9slli/4mDuykYwakctIjXojga0oBSWHYqCCN5h5gEo0SWtyCspGweY2i5tGeTcD19y/X33YWbbDXZ/gD/LAX5yWRHT8vvVFmuepnYYWfeSnHgZb0sgVYN2h/J+JY5nQ1On+kk0VEa+XO8gwva8JHZXcwsJe1YRMFpb7NUpcgECgYEA0EjkvyHuMjyZAqltzzcTpxVz3b6BqjtMNwquZqBV5mEpvSUpaEdxW+a6RgAPaILS1tzGwl0wN8RZ7Qp322HtZNrULwbOMDD/2fzlaph/u/edbAI2iRxUtraAN8t6i+zcZk6yX/mZP1qGr50vRTq8+8SPi0FnWa9uIA/xQF6Arn0CgYEA1yYlkWmc0AHTyMYQOqbiFmt5/Y/YcEigfSLZVCPpTbWA44pWRudmgJQYG3no2/9ZKKQA3dfN1+pE/KbYs/iWIWvkZSf8tJM71b2kpGvYQjTW4qOxiCeB6szdxU89wo+/g71UTYjwZMFn+skCMQ9uRmVna0es+gHnOVSmnr9HE4ECgYEAjmSHHbQQp/+Ni6hRDgzVPrEH2VzYQIzxed+vgzGyCCH86vZw7H2LHg0K47g+0HA/u+yLZW1X/YgbAlbZwf2c0gpYbR318DRPdbPTE6DWEqch1ClfJzVbJN53oa1WRjrUIo1CnSKChjFZSs3m9ylE8cpbaBR6l3G7k+fSQvNYffECgYBrs23lABB+1BtXi0a+haHyBTVZKDP56XFlkxdmFmAJBY4S2cJc1iOqw/fZcUqPLqFMReUlKI2jw2Nrcn5SgWNuMZtww/at0nKGidusb0wfwGG9rKIHfXd8ubdeuU86YUlGwnU8Jwvn9CWAFjWhp47VcJe3zXaa5G8CdQy/tRL4gQKBgQCvZKl/YZsDWx0P4sHv+tgk0AUKPJHOtMAN8K/vVmYImsunbhrSYrMDzmG/rKifjlMHCCgFiaBTMPbGNwjEsbOjwl/z7idkxkS5CEbSeak1rKF7U0orO75sB0+9iR9iCXXvv7LT8f0lHIYOe0m88TcTAN1HcGhfQ9FLGwZHsuDK9A==
|
||||
peerId: 12D3KooWRzT7eeiqPpkaXabqrtLEi1WmWPoUqZVRYiguUdJQz3sz
|
||||
signingKey: QRIar0aC6Bry4WexZrJZBvNjTILsicZZFlCdMeK2oIXwUGRg6GkI40lErEpHPtvctvXzzjPcTn0KXMTjS5u3TQ==
|
||||
types:
|
||||
- tree
|
||||
- address:
|
||||
- stage1-any-sync-node5.anytype.io:443
|
||||
encryptionKey: MIIEpAIBAAKCAQEA0TOVkf79Z7KHnRc4Vnwszs8AhT+Tv50vfwGnRQgQ6IvKN2nsailw4nBOxr+YBLClK/C/J7c7BAZjNwEFQF28CYMVhr+sy3q818vPxZZevVXuSgiHisc4RAigKDd4wm0Vakg2aBkE0Go35Fxj0HARIeN2FWuf63EueO8hFkAa+01W1p198LTg7sRi/MPG2es5bTsY7CZUlR1FIEGyM5AcTj0JLq2EU6PIfwk+n1CeIgMPThHhf1xIL+xBBVUFfue4B8inyLymPJeA/Lvf4fJPY2mDf2Bz9R/25dMvPFxh3TdXD6DZzEJkNjsxihWDVMsPf/ap2hBQhO0hsNyGszXX9wIDAQABAoIBACj1P4Bg+v31byWraSVNlHw8/O4Zn3Sxcp4cFcKnLKBK1iF5RIcYa/h5YoL4+etZJk1vCg3ditlj4sLfGUcb0vfNyUYjetIvyo85YQlfQlcxXsDx4I+kJ3jyc2DMU4FFWB8B2l0RIOcpFJ5KFGS3vDL1VKYm9x1igGW+86xmiqHOjOL32cJVCv6bXKt9MobT6Nlf+9OHh5hajfGH2aDhe1L8AvXo7w5f1hngmr/ZwOEPg/v8uts8GWRuDdraHj0RMDR+m+ez7vJNyKTVZ+pk0xP3o/0c3dSiVteqAxmyJmIX9auvfQCCqCf3g9j7ZBkiMk7AZCCO0vwQ8ignNaYIH6kCgYEA66P6CTB36gBDLIcG2NtW6ckcyxkcqr+IptkiMxNwzQT8emBXae9yTT2jkIYaIlqf/ydRGU3tdzWQDy1ADFe4AlZq1xWBOr7iaDSNzEyILjUuVHRI4EBZKPWP5rnWD+a/BwtyGihrwiAvTcpMgURZP/+LG10oLZHsimps916wuM0CgYEA40bQnLXjHZrhUH/0ttj2M1LwNivgHxzTM2UdUZTHDzEp7wjWNqghgrkc9rGNxwpRJUUqRQgN0ZX+iSyoWsDEEKOQSPZuvhsw/25WKhfYCLQ7dsZIGcBik+EK54zvOXoqBuFscgcqKFQaTGffkmJcO+ZwaELyuFRjSZTRkQVvo9MCgYBXjgsWpQK5WLWc8uLxarZlkYt4T3FeZGKDFETn035jP0oMsoVoYEcJOjDvP1SwlRnD9bjlfRYR6D4J1ZdpvqIphDCYkG3/BPQdIgHZ+knTWYFIchit8lrupCd+5GgMaoFqPa981q4LaGgLMHKyyVGcPPhUB44pOII6gAbS90UUtQKBgQDb6ShvidsxSSyczMLHrdVDwgumDvw0fpqpTzx4NMILpCGUJfPIPRT3vRAWb6Tko8nyiyMkWm+sjTsWFfzsmzrbcrhosPJkxkC511RONHYXrfUfryoSqMF5nzYC6K6M6fUCZVqeVupmzUIJDjUZGk1utEGt0KG01AqiJvpEHYNxewKBgQCDnpU8jdn8twRySpbtD/egdPEfg2h4WCcg+M3SvdA/sYAAHUR4CxFpDw5tyCQcLa/x1Q8RitWT3UABVrqhSXTndLm0ioIVMnjhdLwb6Cuj37CkY7DRY9qSSZY6CGeP+HJJ+gfhDQWDWaEMtrolGt+uL0fYn9EiOhhIboGqJLR+6A==
|
||||
peerId: 12D3KooWPkZDAzAzioUmtd2HkPeFb8mrMgkkYtfL5Es69dbhoUMT
|
||||
signingKey: e9g1IAZix8l0z5I4yiQtIeaTj18AGtLaegBNZLDlps7PCcdggVoXa5x2TXwTvvtn4QyTFTy9PU6QdVh4+AdWXg==
|
||||
types:
|
||||
- tree
|
||||
- address:
|
||||
- stage1-any-sync-node6.anytype.io:443
|
||||
encryptionKey: MIIEpAIBAAKCAQEAp8jd50ye6BoKWcWQPtL44RxesS9rtH3ThorMSweKtn0KXoUnu2b73sZ/t3H8BDNBVXUW11YSJTSzky3y9y9+IhFMWALx82S2O7I4lFxpJICqorj3/pv0Didg38qpc9A69TJmDsG/U/wifQnxszNIcWacZQ0idAS6jMJsFAZPUdljxdgzZROyXoIpf3XIGftFiwsKZVfI/AVGy7ZPoSamoB05/uB5zveHT8OSJBZVWfMkXTqZrwk5TlRF+nxQP4kxYJbQ1vSesQgIWF7dSeNyYDEsJqHFHi+rDUAoLcjFAkxquBum5QnsLq+25VSq2ZjNRYx2QBYCZoxGFL0nwx7LAQIDAQABAoIBADK1e5NvTct6K0yscAb8vilS6K+GVHftW2ObSVkXw22Z5utgNPzniBHxTiJEOdWPJBzO0YNtSPijr+44gekBGo7zSW6EHVnhQ05Rc9YrA7/7fxbE7nat7ZnlftrEJmiRM3BttfiZx9h7KHU/7yOoySk0yOmliZck4rit/fojWg+zNX08n0uXIIKssxAzhLePF+f7sXQLYU6Y3oc8r066yst8lVrqYVSr0VUu5hVlzToalu4f5jJFJ2xcYOz/WvjqIu+g8OOB/m4XsMAKU9WI5k1difLWtbs2iD2boLRpgHm2obHrXhdLEuuiIn4ItGeQJ3Zft2EbcKtDyeMRyA6kUS0CgYEAw2UsaQPVEvhINXoc473r51G1ZeqFgMCyKL8k2V+0cDlWorw/mr66/tmNtQmiwA01JEK6MinLXy5Juo4gJunha2cQrui8s6t/gLHKtv+BrLNXzQeAQg9pRG74Neueq+sda2AXkZgctLYRAFtNF+eJNeJE9mC2Pi0ZAtkZmUW+VosCgYEA29NZxrt6xeRHS38nvYhhoL8cUNJJAQ46YLnzXBPl67gEAt11A7rubcxMiwpZSUccAGDuPAodvPKJKhhiatwE9mgcBtxBLEcFdlkUwI/UdJGyQd46NCc89Bcq7SB3jq1KOXwqZFbtoKS36iU6JI1RgdKSYChWI/YvHxw10vWfoiMCgYEApNadeJp7Dt3WTQcPiDGY6jTMS4ZlyhDGPAnFFHzgxCwbIn6dSfbN2mG+YpQWcN6zjjucyOTpZQqvuGpeRXXZbbotIOHHD+wGTJOw6GD1DLTfxWAmm5RUwh671wFHgtF+qC8QswsYbHuMLDjZ+OijoImalB9Sn3F8QCLWra9gu7ECgYAoIvjbXlPWWg3ibP8WjhY1QW+sGhkWRkDGdG1IvKFYXqrs0v6QhcsO5SR8ppES3hbwwsH82GQBoc8Fjpo5pJ6LVwr2/bQwn28R4sX1Os2x0wBXInpCF3/7mVdPIIRz2pQY1uDunSiaEjk6WT26essNByOOxw6jVknYRlBVil9xPQKBgQCJJKfqeZELv0IhQKXcPVS9COaoxrspICBHdEy7FKaDt0UPWVzO1Vg162RQyKiKKfMr5qoO55AbN26XzT7H4Xv49gJKWoH8cZDUSMX00IQ7T65WXsajgm2c5d7lqpBnOvmglurGrsI57b7nTugkjgSwiHtkGQ1rRyhCf7cgm2+r0g==
|
||||
peerId: 12D3KooWF5pVsv8oaPeZj7MeAXQAbdqqrGB7AEENMnxguZtEi44V
|
||||
signingKey: KwI4I24XMyRCkeOZy+aJq4QkLs98uX///A+JJRUvBZlOP+sHYOAM/d1LeYzDb/d1c9ZMpfzy6FU09Wr9KET8Tg==
|
||||
types:
|
||||
- tree
|
||||
- address:
|
||||
- stage1-any-sync-node7.anytype.io:443
|
||||
encryptionKey: MIIEogIBAAKCAQEAzqkV2ZkLYEofuQ4qtjuN5NTecsuvsv2lmnpgbQWMyxI63j4gn2tnU3eP1fIdciiqE5f5IM221RzZ2qEQZml8p1ZRhma4iaGUMARGnjBpV3C8z2rS1dj6iet8/BC7O9hc4uKS5Wz2BMv2xNYT3Yhx9h7vA6iT8goz9s6OhESW4njTcd8YuYw9bdHxcfmrKrFjAq5BFZhzS01Lbmislwm5lz8NqTgWrxJN9Ek/spbBF0Hd8SfI2VjGrI8x49X290e6GKWJr3cjc4UgX9kKkcNcXM1M+zG55nPJfaIJ+skrepOmUmsBnTkNoCGxbo/OwyOfbsmHKRtvtD9SM0sfWEBmiwIDAQABAoIBAA16NXSVaIqFCwCUjfCIfb54q3EtG24+4HfslzFE9WOg8rnfr1z2MizdVUIMoiL5x+2zMYoUIGJRmVuKuXkUVA7NsE9lj49aPEHNZZWXbqdHMOkN/GX52oz4EJSXur4yZAxf3lib/Idfjd5UX8NIzLXSWqAQdGWKiM0Ft4Gkv3pRbOBRcznq0FkwFgtODgryzNPmW6OD7AxHG+5jWnIfIdKP9cfYi9z8EvV1JreIEdEDodIjqrVwaG4FHL+d8UeFKvaoSxJGcCddavzux3cDqRWdC7+ZZOCUGnGBszN/icVPY207+lf7lrjDNHDeuOab7DDdlTetkZA8XWkCeaaeyCECgYEA8OARAF46h3qFz3/Ze2DP/B+vosxvdrWgtvdXu5rAMv4eki17csEcURJGMQ3xVsTU1d7Y0egkIIvcp7nAbe5kg8ph7tVwoLhPD+zIiFfh/SHsRFfbcYz2U+Yk/dy9EnSdW/uBdK16ks30iyCvpn26EW7/V8TMsL5XM0PZjLsFyHMCgYEA26MJLlEiYEwomYlrdNmF5II/7wjbYuB55P8x9F8F2G+SRCZsg/j8Vx2prisCDiKpPOoWnE/Gr5DaJUELDzx99QdFTFo8CG7tkVOxP6IIqJZk2HEx1i/7ipQ+1PC4hnbbxZIBp4h8T6yQvwmF91C+Uiy5413pU2WtzWSb8LTsG4kCgYAeE2wsBpf6SJMiqI0IObteeLpecnZMdTs+/T1IIHd1JoO8rs8mMfSOLuDyyRHkSqlklvGtq/Wu1qfTjX74evaz+fYmcyIf/0Nn8qHLXGXMTIsKsYml8Prk2OyvgftdrY/kZ0/vuKWAZRTutkMYX8R23swlMl54hxuuO/+S8dsz/wKBgG3iP3GgveYXtCg8jDpFqasNTxc0Ay6Qx+s9kayE7dO+3hqibqAILZcYDBBLDBguVyVWqEFD2E911O3WgMX6qbmxDYaJjodZmBmhGYiQdGyD8agn2ZsjHmHSkSzP0kHTrVhHF/TNYAQsfa5WAWQeTVmnbsjF7zn+INolf68JlSahAoGACgrngOI1GunVE/BzVz0sDi7f13eQZVbXVcS2G7opXckrg46i1R1Y9j6M/zVQPNYXjQRvfW9LB702Ks+xnhbVxI9RD3KzCSdEQpkzFfcf708atYPzLVz1nMMxSxR3kRKfPX1FBqrkgnV44ExOwiyxfR27AQHGWNALVTcCPzE59KM=
|
||||
peerId: 12D3KooW9xRUDQbW6bbsek45dQop9BDZBC8ATCpKxYssE8zMy2wa
|
||||
signingKey: tMh89K9SsZqTpyA+fFTMpNWT3j/9cY/EmnkrbK4qR9ICEGEQ7YlCfHwyq5azqidwVTUO3mPOQYKDoBgeKSD2YQ==
|
||||
types:
|
||||
- tree
|
||||
- address:
|
||||
- stage1-any-sync-node8.anytype.io:443
|
||||
encryptionKey: MIIEogIBAAKCAQEAseQhj+os3JpNVzxPnalXL69tFtvcZR4GjJ6Ligv+/l4yDZyUgt22T9SvFNpUaX/iolFxaUJrhf0d1z/ydvjlsrNsSxRt9h2IvFvpXG/7wi+EDrwYN9Fz8JcLq+ENSIt+US3IXAuEOyXDwv/eIbYmP/WA33x3ujJCxEy0J/feGwZoPqIGCsVdDY09Sqawb8Wh9tGI+rZHFYwQkhPdAy1EbHA5b5YTYw9pkLJB/j7ybyndkHedSNdrFIvDygGI1askFY8IHFN84k8NAM+IqRu11bt5knxIP3OMYVlc+gUGjK9Lb5VOlYLbc7CvZin9sAxhSctIxOPFZNIrTjo1XnzwxwIDAQABAoIBABEFkkySDM7jGOlzBO9CJ+yRLbAVQ6aNU/UaqqF/+lteqg1xYSiQjIRhBovJRHB/4zDC+EYpK967VKKnJM1LjbcmwgMBJnB5bP8REGhe8sknAMzkJLEaoqxv15cPxtSdPG4KInTkSTfbqjq7fwbcxhYyqK053L79VjQwXsDAUAlnz4nEZuqWtEzwMU7kwm40PC+HvIdDFqYEJpmKOdvyS+3wQbgvQXlqSPnYen9k10MiCPt+RZgO6HM0oQmwrl0ph3fHcnUExohAjjdMq0/PXT79tpA4S3HzKbiYJ7Ztcf3WSErfqKWHaP9YwQa+4MvH/15v5CUDxmVACLcg1qnm5lECgYEA6af6KtKTX6aVsVI8a0rim8ZOlV9GRct9q3+klO9If4l9PKXMZlIKuLgWaQ/hoVrPKF6MAj5cQy4b0rLXsGq99kDBMA4PgqI0tgYppCORIZV++sAd0Qh5jds8n2/KVdv0AcKKG+scxRHFvyneS8+pcn3atqspztvA17hbO3uEei8CgYEAwub/WkKzxSm2bJ1rEsUrwSrsBvUPLUrCJ0djlwWj3agIwo6ODDzppm5UERvJWRT0XDhxDUpjnwQ8FjnqSDJumj5/dFjrxxkngaUWieqM3OasNHH9+WOHvprv3RJ9S8PI4GMyfTNQ9eW+q9Y+FCamptlcHXk23TlnoJyLF/vPBOkCgYAE8BjYWNTme5XERpGiTtXVJu64N2g7x14jhrIKt7fXgidUZciZDPjPCIzosX46M7oXB1B8J6c5gDr0S/VE9CyJjLrIcjOfth/ZDO5KWroRdKBXWkIHDd/LwKtaTzl+cQSKGPtkNabI/2QncxIQlhXlpoU9wQZEKd68cFf1PNoC3wKBgCWzUy+deXKo9+2Yoa6WzzjlWZSa8J2dOWMprvz2jVUB/PfNZXK+kZ+s9bv9ePwvTnlMPaoJeq22vvy5pTTj9HsHndXeoXT4y6iLS4nQAgF06ViXuD32X7qh88X6npv6OjAVYB3RwFZgY3qPzaBOPaxGnUfiO5edVAtAXLN99PSJAoGAQa+1HtfiPRz7umfckwLNHZnt6ui56cuh7TOuoFxjR7JG6ASVnizXeBvkkdyfVrhvtgCdJypLIntQ8O3lShC2pkKfEwabbkEmbzfbixTx0vLXkwv4Np+iv7aeKwo7UEyD7dpARPZ0CbFFaL/Jlf7Tu4UZyT/jJUd7GPKf4grTz44=
|
||||
peerId: 12D3KooWBqUE5e6BuxWDiAAvYATq36qCUvNysyDMdddUqmeCb5jG
|
||||
signingKey: Pc6G5mwRY7+oaRiKlLflWU+Bn/UP2mm0TjkqW0vVfDMd/83ODRAqMSkq/EOI3vCUCDa2u1JHU2cI7Vdph3TFQw==
|
||||
types:
|
||||
- tree
|
||||
- address:
|
||||
- ec2-18-159-252-150.eu-central-1.compute.amazonaws.com:443
|
||||
peerId: 12D3KooWKcGtB8jsW7mpB8zWMdVrPTZygnwkRoUKBd2ETmRDFa8x
|
||||
types:
|
||||
- file
|
||||
- address:
|
||||
- ec2-3-68-113-221.eu-central-1.compute.amazonaws.com:443
|
||||
peerId: 12D3KooWR5ishjnaTfLbwQur6ifXSQDLSroaQxWH1KHmR1YL9Srk
|
||||
types:
|
||||
- file
|
||||
- address:
|
||||
- ec2-3-75-246-136.eu-central-1.compute.amazonaws.com:443
|
||||
peerId: 12D3KooWAzNCQWQSdfspUCT6ea3TLvJFahEHwXndh8PQGanjHhbF
|
||||
types:
|
||||
- file
|
75
core/anytype/config/nodes/staging.yml
Normal file
75
core/anytype/config/nodes/staging.yml
Normal file
|
@ -0,0 +1,75 @@
|
|||
id: 643d42c2c112117072700a8f
|
||||
networkId: N9DU6hLkTAbvcpji3TCKPPd3UQWKGyzUxGmgJEyvhByqAjfD
|
||||
nodes:
|
||||
- addresses:
|
||||
- stage1-any-sync-node1.anytype.io:443
|
||||
peerId: 12D3KooWN6Wwdod3axHpfWq1anBCgYG1sZK42RpgEZEokT4KnMu7
|
||||
types:
|
||||
- tree
|
||||
- addresses:
|
||||
- stage1-any-sync-node2.anytype.io:443
|
||||
peerId: 12D3KooWJuqyFQ2ZgnYFNhdHAddF7DrTPP2rNueLjw5BWDJa9kqg
|
||||
types:
|
||||
- tree
|
||||
- addresses:
|
||||
- stage1-any-sync-node3.anytype.io:443
|
||||
peerId: 12D3KooWCub3vY3kWmAQ5qf9TtKBHKY6Yk7F6tGb13M1sXqvcbV4
|
||||
types:
|
||||
- tree
|
||||
- addresses:
|
||||
- stage1-any-sync-node4.anytype.io:443
|
||||
peerId: 12D3KooWRzT7eeiqPpkaXabqrtLEi1WmWPoUqZVRYiguUdJQz3sz
|
||||
types:
|
||||
- tree
|
||||
- addresses:
|
||||
- stage1-any-sync-node5.anytype.io:443
|
||||
peerId: 12D3KooWPkZDAzAzioUmtd2HkPeFb8mrMgkkYtfL5Es69dbhoUMT
|
||||
types:
|
||||
- tree
|
||||
- addresses:
|
||||
- stage1-any-sync-node6.anytype.io:443
|
||||
peerId: 12D3KooWF5pVsv8oaPeZj7MeAXQAbdqqrGB7AEENMnxguZtEi44V
|
||||
types:
|
||||
- tree
|
||||
- addresses:
|
||||
- stage1-any-sync-node7.anytype.io:443
|
||||
peerId: 12D3KooW9xRUDQbW6bbsek45dQop9BDZBC8ATCpKxYssE8zMy2wa
|
||||
types:
|
||||
- tree
|
||||
- addresses:
|
||||
- stage1-any-sync-node8.anytype.io:443
|
||||
peerId: 12D3KooWBqUE5e6BuxWDiAAvYATq36qCUvNysyDMdddUqmeCb5jG
|
||||
types:
|
||||
- tree
|
||||
- addresses:
|
||||
- ec2-18-159-252-150.eu-central-1.compute.amazonaws.com:443
|
||||
peerId: 12D3KooWKcGtB8jsW7mpB8zWMdVrPTZygnwkRoUKBd2ETmRDFa8x
|
||||
types:
|
||||
- file
|
||||
- addresses:
|
||||
- ec2-3-68-113-221.eu-central-1.compute.amazonaws.com:443
|
||||
peerId: 12D3KooWR5ishjnaTfLbwQur6ifXSQDLSroaQxWH1KHmR1YL9Srk
|
||||
types:
|
||||
- file
|
||||
- addresses:
|
||||
- ec2-3-75-246-136.eu-central-1.compute.amazonaws.com:443
|
||||
peerId: 12D3KooWAzNCQWQSdfspUCT6ea3TLvJFahEHwXndh8PQGanjHhbF
|
||||
types:
|
||||
- file
|
||||
- addresses:
|
||||
- ec2-3-122-177-128.eu-central-1.compute.amazonaws.com:443
|
||||
peerId: 12D3KooWHyWNKYPdYeFK9eQ32UK9uqM1yTdXZT6qTTbtCowCYBAp
|
||||
types:
|
||||
- coordinator
|
||||
- addresses:
|
||||
- ec2-3-125-155-229.eu-central-1.compute.amazonaws.com:443
|
||||
peerId: 12D3KooWNPpzKPUzcf86KemKwa3ap8kBfCmPRWkBsvymGZdoBdni
|
||||
types:
|
||||
- coordinator
|
||||
- addresses:
|
||||
- ec2-3-65-13-48.eu-central-1.compute.amazonaws.com:443
|
||||
peerId: 12D3KooWB4hmEo7YAdWzAaFpjyk4npkcwrPm2kRigsWu3MP9Xdmg
|
||||
types:
|
||||
- coordinator
|
||||
|
||||
creationTime: 2023-04-17T14:59:46.807436097+02:00
|
|
@ -4,5 +4,5 @@ package config
|
|||
|
||||
import _ "embed"
|
||||
|
||||
//go:embed nodes/nodes.local.yml
|
||||
//go:embed nodes/local.yml
|
||||
var nodesConfYmlBytes []byte
|
||||
|
|
|
@ -3,6 +3,7 @@ package rpcstore
|
|||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"github.com/anytypeio/any-sync/nodeconf/mock_nodeconf"
|
||||
"sort"
|
||||
"sync"
|
||||
"testing"
|
||||
|
@ -124,6 +125,7 @@ func TestStore_AddAsync(t *testing.T) {
|
|||
}
|
||||
|
||||
func newFixture(t *testing.T) *fixture {
|
||||
ctrl := gomock.NewController(t)
|
||||
fx := &fixture{
|
||||
a: new(app.App),
|
||||
s: New().(*service),
|
||||
|
@ -131,25 +133,28 @@ func newFixture(t *testing.T) *fixture {
|
|||
data: make(map[string][]byte),
|
||||
files: make(map[string][][]byte),
|
||||
},
|
||||
ctrl: ctrl,
|
||||
nodeConf: mock_nodeconf.NewMockService(ctrl),
|
||||
}
|
||||
|
||||
conf := &config{}
|
||||
|
||||
var filePeers []string
|
||||
for i := 0; i < 11; i++ {
|
||||
conf.Nodes = append(conf.Nodes, nodeconf.NodeConfig{
|
||||
PeerId: fmt.Sprint(i),
|
||||
Types: []nodeconf.NodeType{nodeconf.NodeTypeFile},
|
||||
})
|
||||
filePeers = append(filePeers, fmt.Sprint(i))
|
||||
}
|
||||
rserv := rpctest.NewTestServer()
|
||||
require.NoError(t, fileproto.DRPCRegisterFile(rserv.Mux, fx.serv))
|
||||
fx.ctrl = gomock.NewController(t)
|
||||
|
||||
fx.nodeConf.EXPECT().Name().Return(nodeconf.CName).AnyTimes()
|
||||
fx.nodeConf.EXPECT().Init(fx.a).AnyTimes()
|
||||
fx.nodeConf.EXPECT().Run(ctx).AnyTimes()
|
||||
fx.nodeConf.EXPECT().Close(ctx).AnyTimes()
|
||||
fx.nodeConf.EXPECT().FilePeers().Return(filePeers).AnyTimes()
|
||||
|
||||
fx.a.Register(fx.s).
|
||||
Register(mock_accountservice.NewAccountServiceWithAccount(fx.ctrl, &accountdata.AccountKeys{})).
|
||||
Register(rpctest.NewTestPool().WithServer(rserv)).
|
||||
Register(nodeconf.New()).
|
||||
Register(peerstore.New()).
|
||||
Register(conf)
|
||||
Register(fx.nodeConf).
|
||||
Register(peerstore.New())
|
||||
require.NoError(t, fx.a.Start(ctx))
|
||||
fx.store = fx.s.NewStore().(*store)
|
||||
return fx
|
||||
|
@ -157,10 +162,11 @@ func newFixture(t *testing.T) *fixture {
|
|||
|
||||
type fixture struct {
|
||||
*store
|
||||
s *service
|
||||
a *app.App
|
||||
serv *testServer
|
||||
ctrl *gomock.Controller
|
||||
s *service
|
||||
a *app.App
|
||||
serv *testServer
|
||||
ctrl *gomock.Controller
|
||||
nodeConf *mock_nodeconf.MockService
|
||||
}
|
||||
|
||||
func (fx *fixture) Finish(t *testing.T) {
|
||||
|
@ -261,17 +267,3 @@ func (t *testServer) SpaceInfo(ctx context.Context, req *fileproto.SpaceInfoRequ
|
|||
func (t *testServer) Check(ctx context.Context, req *fileproto.CheckRequest) (*fileproto.CheckResponse, error) {
|
||||
return &fileproto.CheckResponse{AllowWrite: true}, nil
|
||||
}
|
||||
|
||||
type config struct {
|
||||
Nodes []nodeconf.NodeConfig
|
||||
}
|
||||
|
||||
func (c config) Init(a *app.App) (err error) {
|
||||
return
|
||||
}
|
||||
|
||||
func (c config) Name() string { return "config" }
|
||||
|
||||
func (c config) GetNodes() []nodeconf.NodeConfig {
|
||||
return c.Nodes
|
||||
}
|
||||
|
|
6
go.mod
6
go.mod
|
@ -7,7 +7,7 @@ require (
|
|||
github.com/PuerkitoBio/goquery v1.8.1
|
||||
github.com/VividCortex/ewma v1.2.0
|
||||
github.com/adrium/goheif v0.0.0-20230113233934-ca402e77a786
|
||||
github.com/anytypeio/any-sync v0.0.33
|
||||
github.com/anytypeio/any-sync v0.28.1-0.20230417123359-649e8fe53890
|
||||
github.com/anytypeio/go-naturaldate/v2 v2.0.1
|
||||
github.com/araddon/dateparse v0.0.0-20210429162001-6b43995a97de
|
||||
github.com/blevesearch/bleve/v2 v2.3.6
|
||||
|
@ -50,7 +50,7 @@ require (
|
|||
github.com/ipfs/go-ipld-format v0.4.0
|
||||
github.com/ipfs/go-log v1.0.5
|
||||
github.com/ipfs/go-merkledag v0.10.0
|
||||
github.com/ipfs/go-path v0.3.0
|
||||
github.com/ipfs/go-path v0.3.1
|
||||
github.com/ipfs/go-unixfs v0.4.5
|
||||
github.com/ipfs/interface-go-ipfs-core v0.10.0
|
||||
github.com/joho/godotenv v1.5.1
|
||||
|
@ -103,7 +103,7 @@ require (
|
|||
github.com/anytypeio/go-slip10 v0.0.0-20200330112030-a352ca8495e4 // indirect
|
||||
github.com/anytypeio/go-slip21 v0.0.0-20200218204727-e2e51e20ab51 // indirect
|
||||
github.com/ipfs/go-ipfs-files v0.3.0 // indirect
|
||||
github.com/ipfs/go-libipfs v0.6.0 // indirect
|
||||
github.com/ipfs/go-libipfs v0.7.0 // indirect
|
||||
github.com/tyler-smith/go-bip39 v1.1.0 // indirect
|
||||
)
|
||||
|
||||
|
|
|
@ -148,9 +148,9 @@ func (p *peerStore) RemoveLocalPeer(peerId string) {
|
|||
}
|
||||
|
||||
func (p *peerStore) ResponsibleNodeIds(spaceId string) (ids []string) {
|
||||
return p.nodeConf.GetLast().NodeIds(spaceId)
|
||||
return p.nodeConf.NodeIds(spaceId)
|
||||
}
|
||||
|
||||
func (p *peerStore) ResponsibleFilePeers() (ids []string) {
|
||||
return p.nodeConf.GetLast().FilePeers()
|
||||
return p.nodeConf.FilePeers()
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue