Daemons Search
This commit is contained in:
42
main.go
42
main.go
@@ -1,38 +1,33 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"oc-discovery/models"
|
||||
"context"
|
||||
"oc-discovery/conf"
|
||||
"oc-discovery/daemons/dht"
|
||||
"oc-discovery/daemons/pubsub"
|
||||
_ "oc-discovery/routers"
|
||||
|
||||
oclib "cloud.o-forge.io/core/oc-lib"
|
||||
"cloud.o-forge.io/core/oc-lib/logs"
|
||||
beego "github.com/beego/beego/v2/server/web"
|
||||
"github.com/beego/beego/v2/server/web/filter/cors"
|
||||
pss "github.com/libp2p/go-libp2p-pubsub"
|
||||
)
|
||||
|
||||
const appname = "oc-discovery"
|
||||
|
||||
func main() {
|
||||
logger := oclib.GetLogger()
|
||||
// Init the oc-lib
|
||||
oclib.Init(appname)
|
||||
// get the right config file
|
||||
|
||||
o := oclib.GetConfLoader()
|
||||
|
||||
models.GetConfig().Port = o.GetIntDefault("port", 8080)
|
||||
models.GetConfig().LokiUrl = o.GetStringDefault("lokiurl", "")
|
||||
models.GetConfig().RedisUrl = o.GetStringDefault("redisurl", "localhost:6379")
|
||||
models.GetConfig().RedisPassword = o.GetStringDefault("redispassword", "")
|
||||
models.GetConfig().ZincUrl = o.GetStringDefault("zincurl", "http://localhost:4080")
|
||||
models.GetConfig().ZincLogin = o.GetStringDefault("zinclogin", "admin")
|
||||
models.GetConfig().ZincPassword = o.GetStringDefault("zincpassword", "admin")
|
||||
models.GetConfig().IdentityFile = o.GetStringDefault("identityfile", "./identity.json")
|
||||
models.GetConfig().Defaultpeers = o.GetStringDefault("defaultpeers", "./peers.json")
|
||||
|
||||
// set oc-lib logger
|
||||
if models.GetConfig().LokiUrl != "" {
|
||||
logs.CreateLogger(appname)
|
||||
}
|
||||
conf.GetConfig().PSKPath = o.GetStringDefault("PSK_PATH", "./psk/psk")
|
||||
conf.GetConfig().DHTEndpointPort = o.GetInt64Default("DHT_ENDPOINT_PORT", 4001)
|
||||
conf.GetConfig().PublicKeyPath = o.GetStringDefault("PUBLIC_KEY_PATH", "./pem/public.pem")
|
||||
conf.GetConfig().PrivateKeyPath = o.GetStringDefault("PRIVATE_KEY_PATH", "./pem/private.pem")
|
||||
conf.GetConfig().BootstrapAddresses = o.GetStringDefault("BOOTSTRAP_ADDRESSES", "")
|
||||
|
||||
// Normal beego init
|
||||
beego.BConfig.AppName = appname
|
||||
@@ -46,5 +41,20 @@ func main() {
|
||||
ExposeHeaders: []string{"Content-Length", "Content-Type"},
|
||||
AllowCredentials: true,
|
||||
}))
|
||||
ctx := context.Background()
|
||||
DHT, err := dht.Init(ctx)
|
||||
if err == nil {
|
||||
logger.Err(err)
|
||||
} else {
|
||||
ps, err := pss.NewGossipSub(
|
||||
ctx, DHT.Host,
|
||||
pss.WithMessageSigning(true),
|
||||
pss.WithStrictSignatureVerification(true),
|
||||
)
|
||||
pubsub.Init(ctx, ps)
|
||||
if err != nil {
|
||||
logger.Err(err)
|
||||
}
|
||||
}
|
||||
beego.Run()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user