Documentation
¶
Overview ¶
Package profile is for specific profiles @todo this package is the definition of cruft and should be rewritten in a more elegant way
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var Client = &Profile{ Name: "client", Setup: func(ctx *cli.Context) error { return nil }, }
Client profile is for any entrypoint that behaves as a client
View Source
var Dev = &Profile{ Name: "dev", Setup: func(ctx *cli.Context) error { auth.DefaultAuth = mAuthNoop.NewAuth() runtime.DefaultRuntime = mRuntimeLocal.NewRuntime() store.DefaultStore = mStoreNoop.NewStore() config.DefaultConfig, _ = mConfigEnv.NewConfig() var err error events.DefaultStream, err = mEventStream.NewStream() if err != nil { logger.Fatalf("Error configuring stream for simple profile: %v", err) } SetupBroker(mBrokerMemory.NewBroker()) setupRegistry(mRegistryNoop.NewRegistry()) return nil }, }
Dev profile to run service in simple config
View Source
var Kubernetes = &Profile{ Name: "kubernetes", Setup: func(ctx *cli.Context) (err error) { auth.DefaultAuth = mAuthJwt.NewAuth() SetupJWT(ctx) runtime.DefaultRuntime = mRuntimeK8s.NewRuntime() build.DefaultBuilder, err = mBuildGolang.NewBuilder() if err != nil { logger.Fatalf("Error configuring golang builder: %v", err) } events.DefaultStream, err = mEventStream.NewStream() if err != nil { logger.Fatalf("Error configuring stream: %v", err) } store.DefaultStore = mStoreFile.NewStore(mStoreFile.WithDir("/store")) store.DefaultBlobStore, err = mStoreFile.NewBlobStore(mStoreFile.WithDir("/store/blob")) if err != nil { logger.Fatalf("Error configuring file blob store: %v", err) } model.DefaultModel = model.NewModel( model.WithStore(store.DefaultStore), ) if ctx.Args().Get(1) == "registry" { SetupRegistry(mRegMemory.NewRegistry()) } if ctx.Args().Get(1) == "broker" { SetupBroker(mBrokerMemory.NewBroker()) } config.DefaultConfig, err = mConfigStore.NewConfig(store.DefaultStore, "") if err != nil { logger.Fatalf("Error configuring config: %v", err) } SetupConfigSecretKey(ctx) router.DefaultRouter = mRouterK8s.NewRouter() client.DefaultClient.Init(client.Router(router.DefaultRouter)) tracingServiceName := ctx.Args().Get(1) if len(tracingServiceName) == 0 { tracingServiceName = "Micro" } openTracer, _, err := jaeger.New( opentelemetry.WithServiceName(tracingServiceName), opentelemetry.WithTraceReporterAddress("localhost:6831"), ) if err != nil { logger.Fatalf("Error configuring opentracing: %v", err) } opentelemetry.DefaultOpenTracer = openTracer return nil }, }
Kubernetes profile to run on kubernetes with zero deps. Designed for use with the micro helm chart
View Source
var Local = &Profile{ Name: "local", Setup: func(ctx *cli.Context) error { auth.DefaultAuth = mAuthJwt.NewAuth() store.DefaultStore = mStoreFile.NewStore(mStoreFile.WithDir(filepath.Join(inUser.Dir, "server", "store"))) SetupConfigSecretKey(ctx) config.DefaultConfig, _ = mConfigStore.NewConfig(store.DefaultStore, "") SetupJWT(ctx) if ctx.Args().Get(1) == "registry" { SetupRegistry(mRegMemory.NewRegistry()) } else { registry.DefaultRegistry.Init( registry.Addrs("localhost:8000"), ) SetupRegistry(registry.DefaultRegistry) } if ctx.Args().Get(1) == "broker" { SetupBroker(mBrokerMemory.NewBroker()) } else { broker.DefaultBroker.Init( broker.Addrs("localhost:8003"), ) SetupBroker(broker.DefaultBroker) } model.DefaultModel = model.NewModel( model.WithStore(store.DefaultStore), ) runtime.DefaultRuntime = mRuntimeLocal.NewRuntime() var err error events.DefaultStream, err = mEventStream.NewStream() if err != nil { logger.Fatalf("Error configuring stream: %v", err) } events.DefaultStore = mEventStore.NewStore( mEventStore.WithStore(store.DefaultStore), ) store.DefaultBlobStore, err = mStoreFile.NewBlobStore() if err != nil { logger.Fatalf("Error configuring file blob store: %v", err) } tracingServiceName := ctx.Args().Get(1) if len(tracingServiceName) == 0 { tracingServiceName = "Micro" } openTracer, _, err := jaeger.New( opentelemetry.WithServiceName(tracingServiceName), opentelemetry.WithSamplingRate(1), ) if err != nil { logger.Fatalf("Error configuring opentracing: %v", err) } opentelemetry.DefaultOpenTracer = openTracer return nil }, }
Local profile to run locally
View Source
var Service = &Profile{ Name: "service", Setup: func(ctx *cli.Context) error { return nil }, }
Service is the default for any services run
View Source
var Simple = &Profile{ Name: "simple", Setup: func(ctx *cli.Context) error { auth.DefaultAuth = mAuthNoop.NewAuth() runtime.DefaultRuntime = mRuntimeLocal.NewRuntime() store.DefaultStore = mStoreMemory.NewStore() config.DefaultConfig, _ = mConfigEnv.NewConfig() var err error events.DefaultStream, err = mEventStream.NewStream() if err != nil { logger.Fatalf("Error configuring stream for simple profile: %v", err) } SetupBroker(mBrokerMemory.NewBroker()) setupRegistry(mRegistryNoop.NewRegistry()) return nil }, }
Simple profile to run service in simple config
View Source
var Test = &Profile{ Name: "test", Setup: func(ctx *cli.Context) error { auth.DefaultAuth = mAuthNoop.NewAuth() store.DefaultStore = mStoreMemory.NewStore() store.DefaultBlobStore, _ = mStoreFile.NewBlobStore() config.DefaultConfig, _ = mConfigStore.NewConfig(store.DefaultStore, "") SetupRegistry(mRegMemory.NewRegistry()) model.DefaultModel = model.NewModel( model.WithStore(store.DefaultStore), ) return nil }, }
Test profile is used for the go test suite
Functions ¶
func SetupConfigSecretKey ¶
SetupConfigSecretKey config default SecretKey
func SetupRegistry ¶
SetupRegistry configures the registry
Types ¶
Click to show internal directories.
Click to hide internal directories.