initial commit

This commit is contained in:
Mike Mason
2023-07-01 00:04:52 +00:00
commit 80fb879ef6
65 changed files with 3544 additions and 0 deletions

31
internal/config/config.go Normal file
View File

@@ -0,0 +1,31 @@
// Package config defines app configuration.
package config
import (
"go.infratographer.com/x/echox"
"go.infratographer.com/x/events"
"go.infratographer.com/x/loggingx"
"go.infratographer.com/x/otelx"
"go.equinixmetal.net/infra9-metal-bridge/internal/metal"
"go.equinixmetal.net/infra9-metal-bridge/internal/permissions"
"go.equinixmetal.net/infra9-metal-bridge/internal/service"
)
// AppConfig is the main application configuration.
var AppConfig struct {
Logging loggingx.Config
EquinixMetal metal.Config
OTel otelx.Config
Server echox.Config
Service service.Config
Events EventsConfig
Roles service.ConfigRoles
Permissions permissions.Config
}
// EventsConfig defines the configuration setting up both subscriptions and publishing
type EventsConfig struct {
Publisher events.PublisherConfig
Subscriber events.SubscriberConfig
}