feat: staging
This commit is contained in:
parent
63faacdd27
commit
233d912150
@ -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
|
||||
|
50
deployments/staging/docker-compose.yaml
Normal file
50
deployments/staging/docker-compose.yaml
Normal file
@ -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) {
|
||||
|
Loading…
Reference in New Issue
Block a user