feat: staging

This commit is contained in:
Kirill 2023-06-19 22:25:51 +03:00
parent 63faacdd27
commit 233d912150
7 changed files with 79 additions and 15 deletions

@ -17,12 +17,12 @@ services:
- GRPC_PORT=9085
- IS_MOCK=true
- MOCK_SERVICE_HOST=http://localhost:8080
- MOCK_SERVICE_HOST=http://treasurer-mock:8080
- YOOMONEY_STORE_ID=id
- YOOMONEY_SECRET_KEY=secret
- YOOMONEY_WEBHOOKS_URL=http://localhost:8080/webhooks
- YOOMONEY_PAYMENTS_URL=http://localhost:8080/payments
- YOOMONEY_WEBHOOKS_URL=http://treasurer-mock:8080/webhooks
- YOOMONEY_PAYMENTS_URL=http://treasurer-mock:8080/payments
- MONGO_HOST=mongo
- MONGO_PORT=27017

@ -0,0 +1,50 @@
version: "3.3"
services:
treasurer-app:
container_name: treasurer-service
tty: true
build:
context: ../../.
dockerfile: Dockerfile
target: production
environment:
- HTTP_HOST=0.0.0.0
- HTTP_PORT=8085
- HTTP_DOMEN=http://localhost:8085
- GRPC_HOST=0.0.0.0
- GRPC_PORT=9085
- IS_MOCK=true
- MOCK_SERVICE_HOST=http://treasurer-mock:8080
- YOOMONEY_STORE_ID=id
- YOOMONEY_SECRET_KEY=secret
- YOOMONEY_WEBHOOKS_URL=http://treasurer-mock:8080/webhooks
- YOOMONEY_PAYMENTS_URL=http://treasurer-mock:8080/payments
- MONGO_HOST=mongo
- MONGO_PORT=27017
- MONGO_USER=test
- MONGO_PASSWORD=test
- MONGO_DB_NAME=admin
- MONGO_AUTH=admin
ports:
- 8085:8085
- 9085:9085
networks:
- dev
depends_on:
- treasurer-mock
treasurer-mock:
container_name: treasurermock-container
image: 'wiremock/wiremock:2.35.0'
ports:
- 8080:8080
networks:
- dev
networks:
dev:

@ -8,26 +8,31 @@ services:
target: test
environment:
- HTTP_HOST=0.0.0.0
- HTTP_PORT=8080
- HTTP_DOMEN=http://localhost:8080
- HTTP_PORT=8085
- HTTP_DOMEN=http://localhost:8085
- GRPC_HOST=0.0.0.0
- GRPC_PORT=8081
- GRPC_PORT=9085
- YOOMONEY_STORE_ID=storeid
- IS_MOCK=false
- MOCK_SERVICE_HOST=http://mock:8080
- YOOMONEY_STORE_ID=id
- YOOMONEY_SECRET_KEY=secret
- YOOMONEY_WEBHOOKS_URL=http://mock:8080/webhooks
- YOOMONEY_PAYMENTS_URL=http://mock:8080/payments
- MONGO_HOST=mongo
- MONGO_PORT=27017
- MONGO_USER=admin
- MONGO_PASSWORD=admin
- MONGO_USER=test
- MONGO_PASSWORD=test
- MONGO_DB_NAME=admin
- MONGO_AUTH=admin
ports:
- 8080:8080
- 8081:8081
networks:
- dev
- integartion_test
depends_on:
- mongo
@ -39,16 +44,16 @@ services:
ports:
- '27017:27017'
networks:
- dev
- integartion_test
mock:
image: 'wiremock/wiremock:2.35.0'
ports:
- 8000:8080
networks:
- dev
- integartion_test
depends_on:
- treasurer-app
networks:
dev:
integartion_test:

@ -82,6 +82,7 @@ func NewServices(deps ServicesDeps) (*Services, errors.Error) {
mockService, err := mock.New(mock.Deps{
Logger: deps.Logger,
Enabled: deps.Configuration.MockConfiguration.IsMock,
MockServiceHost: deps.Configuration.MockConfiguration.Host,
YoomoneyMockService: yoomoneyMockService,
})

@ -13,12 +13,14 @@ type MockStrategyService interface {
type Deps struct {
Logger *zap.Logger
MockServiceHost string
Enabled bool
YoomoneyMockService MockStrategyService
}
type Service struct {
logger *zap.Logger
mockServiceHost string
enabled bool
yoomoneyMockService MockStrategyService
}
@ -39,10 +41,16 @@ func New(deps Deps) (*Service, errors.Error) {
logger: deps.Logger,
mockServiceHost: deps.MockServiceHost,
yoomoneyMockService: deps.YoomoneyMockService,
enabled: deps.Enabled,
}, nil
}
func (receiver *Service) Register() bool {
if !receiver.enabled {
receiver.logger.Info("register mocks is disabled")
return false
}
if err := receiver.yoomoneyMockService.Register(receiver.mockServiceHost); err != nil {
receiver.logger.Error("failed to register yoomoney mocks", zap.Error(err), zap.String("host", receiver.mockServiceHost))
return false

@ -4,7 +4,7 @@ import (
"testing"
"github.com/stretchr/testify/assert"
"penahub.gitlab.yandexcloud.net/pena-services/customer/pkg/validate"
"penahub.gitlab.yandexcloud.net/external/treasurer/pkg/validate"
)
func TestIsStringEmpty(t *testing.T) {

@ -4,7 +4,7 @@ import (
"testing"
"github.com/stretchr/testify/assert"
"penahub.gitlab.yandexcloud.net/pena-services/customer/pkg/validate"
"penahub.gitlab.yandexcloud.net/external/treasurer/pkg/validate"
)
func TestValidateURL(t *testing.T) {