chore: new env

This commit is contained in:
Kirill 2023-06-13 19:21:20 +03:00
parent de1aced10b
commit 40b3fb6ff5
7 changed files with 50 additions and 32 deletions

@ -11,8 +11,12 @@
## Переменные окружения приложения
```
HTTP_HOST - хост приложения
HTTP_PORT - порт приложения
HTTP_HOST - хост приложения (HTTP)
HTTP_PORT - порт приложения (HTTP)
GRPC_HOST - хост приложения (GRPC)
GRPC_PORT - порт приложения (GRPC)
GRPC_DOMEN - домен приложения (GRPC)
MONGO_HOST - хост MongoDB
MONGO_PORT - порт MongoDB
@ -24,6 +28,8 @@ MONGO_AUTH - имя базы данных Mongo, по которой будет
AUTH_MICROSERVICE_USER_URL - ссылка на получение пользователя микросервиса авторизации
HUBADMIN_MICROSERVICE_TARIFF_URL - ссылка на получение тарифов (hub admin)
CURRENCY_MICROSERVICE_TRANSLATE_URL - ссылка на перевод с одной валюты на другую
DISCOUNT_MICROSERVICE_GRPC_HOST - хост микросервиса discount (GRPC)
PAYMENT_MICROSERVICE_GRPC_HOST - хост микросервиса payment (GRPC)
JWT_PUBLIC_KEY - публичный ключ для верификации jwt токена
JWT_ISSUER - издатель токена

@ -30,11 +30,13 @@ func Run(ctx context.Context, config *models.Config, logger *zap.Logger) error {
return fmt.Errorf("failed connection to db: %w", err)
}
// TODO: добавить недостающие зависимости
clients := initialize.NewClients(&initialize.ClientsDeps{
Logger: logger,
AuthURL: &config.Service.AuthMicroservice.URL,
HubadminURL: &config.Service.HubadminMicroservice.URL,
Logger: logger,
AuthURL: &config.Service.AuthMicroservice.URL,
HubadminURL: &config.Service.HubadminMicroservice.URL,
CurrencyURL: &config.Service.CurrencyMicroservice.URL,
DiscountServiceConfiguration: &config.Service.DiscountMicroservice,
PaymentServiceConfiguration: &config.Service.PaymentMicroservice,
})
repositories := initialize.NewRepositories(&initialize.RepositoriesDeps{

@ -23,12 +23,12 @@ func TestNewAPI(t *testing.T) {
})
clients := initialize.NewClients(&initialize.ClientsDeps{
Logger: logger,
AuthURL: &models.AuthMicroserviceURL{User: ""},
HubadminURL: &models.HubadminMicroserviceURL{Tariff: ""},
CurrencyURL: &models.CurrencyMicroserviceURL{},
DiscountServiceHost: "localhost:8080",
PaymentServiceHost: "localhost:8081",
Logger: logger,
AuthURL: &models.AuthMicroserviceURL{User: ""},
HubadminURL: &models.HubadminMicroserviceURL{Tariff: ""},
CurrencyURL: &models.CurrencyMicroserviceURL{},
DiscountServiceConfiguration: &models.DiscountMicroserviceConfiguration{},
PaymentServiceConfiguration: &models.PaymentMicroserviceConfiguration{},
})
services := initialize.NewServices(&initialize.ServicesDeps{

@ -7,12 +7,12 @@ import (
)
type ClientsDeps struct {
Logger *zap.Logger
AuthURL *models.AuthMicroserviceURL
HubadminURL *models.HubadminMicroserviceURL
CurrencyURL *models.CurrencyMicroserviceURL
DiscountServiceHost string
PaymentServiceHost string
Logger *zap.Logger
AuthURL *models.AuthMicroserviceURL
HubadminURL *models.HubadminMicroserviceURL
CurrencyURL *models.CurrencyMicroserviceURL
DiscountServiceConfiguration *models.DiscountMicroserviceConfiguration
PaymentServiceConfiguration *models.PaymentMicroserviceConfiguration
}
type Clients struct {
@ -39,11 +39,11 @@ func NewClients(deps *ClientsDeps) *Clients {
}),
DiscountClient: client.NewDiscountClient(&client.DiscountClientDeps{
Logger: deps.Logger,
DiscountServiceHost: deps.DiscountServiceHost,
DiscountServiceHost: deps.DiscountServiceConfiguration.HostGRPC,
}),
PaymentClient: client.NewPaymentClient(client.PaymentClientDeps{
Logger: deps.Logger,
PaymentServiceHost: deps.PaymentServiceHost,
PaymentServiceHost: deps.PaymentServiceConfiguration.HostGRPC,
}),
}
}

@ -15,12 +15,12 @@ func TestNewClients(t *testing.T) {
assert.NotPanics(t, func() {
clients := initialize.NewClients(&initialize.ClientsDeps{
Logger: logger,
AuthURL: &models.AuthMicroserviceURL{},
HubadminURL: &models.HubadminMicroserviceURL{},
CurrencyURL: &models.CurrencyMicroserviceURL{},
DiscountServiceHost: "localhost:8080",
PaymentServiceHost: "localhost:8081",
Logger: logger,
AuthURL: &models.AuthMicroserviceURL{},
HubadminURL: &models.HubadminMicroserviceURL{},
CurrencyURL: &models.CurrencyMicroserviceURL{},
DiscountServiceConfiguration: &models.DiscountMicroserviceConfiguration{},
PaymentServiceConfiguration: &models.PaymentMicroserviceConfiguration{},
})
assert.NotNil(t, clients)

@ -18,12 +18,12 @@ func TestNewServices(t *testing.T) {
assert.NotPanics(t, func() {
clients := initialize.NewClients(&initialize.ClientsDeps{
Logger: logger,
AuthURL: &models.AuthMicroserviceURL{},
HubadminURL: &models.HubadminMicroserviceURL{},
CurrencyURL: &models.CurrencyMicroserviceURL{},
DiscountServiceHost: "localhost:8080",
PaymentServiceHost: "localhost:8081",
Logger: logger,
AuthURL: &models.AuthMicroserviceURL{},
HubadminURL: &models.HubadminMicroserviceURL{},
CurrencyURL: &models.CurrencyMicroserviceURL{},
DiscountServiceConfiguration: &models.DiscountMicroserviceConfiguration{},
PaymentServiceConfiguration: &models.PaymentMicroserviceConfiguration{},
})
repositories := initialize.NewRepositories(&initialize.RepositoriesDeps{

@ -29,6 +29,8 @@ type ServiceConfiguration struct {
AuthMicroservice AuthMicroserviceConfiguration
HubadminMicroservice HubadminMicroserviceConfiguration
CurrencyMicroservice CurrencyMicroserviceConfiguration
DiscountMicroservice DiscountMicroserviceConfiguration
PaymentMicroservice PaymentMicroserviceConfiguration
JWT JWTConfiguration
}
@ -53,6 +55,14 @@ type CurrencyMicroserviceConfiguration struct {
URL CurrencyMicroserviceURL
}
type PaymentMicroserviceConfiguration struct {
HostGRPC string `env:"PAYMENT_MICROSERVICE_GRPC_HOST,required"`
}
type DiscountMicroserviceConfiguration struct {
HostGRPC string `env:"DISCOUNT_MICROSERVICE_GRPC_HOST,required"`
}
type AuthMicroserviceURL struct {
User string `env:"AUTH_MICROSERVICE_USER_URL,required"`
}