This commit is contained in:
Piotr Biernat 2024-12-05 16:57:56 +01:00
parent 5b1bf92845
commit 5feb115f62
16 changed files with 49 additions and 33 deletions

View File

@ -5,10 +5,20 @@
"Tags": ["catalog-svc", "catalog", "https", "service"],
"Port": 443,
"Connect": {
"Native": true
"Native": true,
"SidecarService": {
"Port": 20000,
"Check": {
"Name": "Connect Envoy Sidecar",
"TCP": "127.0.0.1:20000",
"Interval": "5s"
}
}
},
"Check": {
"TCP": "__IP__:443",
"Interval": "5s",
"Timeout": "1s",
"DeregisterCriticalServiceAfter": "10s"
}
}

View File

@ -7,7 +7,7 @@ APP_PATH_PREFIX=/catalog
APP_KV_NAMESPACE=dev.egommerce/service/catalog-svc
LOGGER_ADDR=api-logger:24224
REGISTRY_ADDR=api-registry:8500
REGISTRY_ADDR=api-registry:8501
DATABASE_URL=postgres://postgres:12345678@postgres-db:5432/egommerce
CACHE_ADDR=api-cache:6379
CACHE_PASSWORD=12345678

View File

@ -1,14 +1,15 @@
# Builder
FROM golang:alpine
WORKDIR /go/src/app
COPY src ./
ARG BIN_OUTPUT=/go/bin
ARG GO_SERVER=cmd/server/main.go
ARG GO_MIGRATE=cmd/migrate/main.go
ARG GO_WORKER=cmd/worker/main.go
ARG GO_HEALTH=cmd/health/main.go
WORKDIR /go/src/app
COPY src ./
RUN export CGO_ENABLED=0 ; export GOOS=linux ; export GOARCH=amd64 && \
go build -ldflags="-w -s" -o "$BIN_OUTPUT/server" $GO_SERVER && \

View File

@ -27,6 +27,7 @@ COPY ./bin /bin
RUN chmod 755 /bin/entrypoint.sh /bin/migrate.sh
RUN apk add curl
# is required / ^^
EXPOSE 443

View File

@ -14,13 +14,18 @@ waitForService()
done
}
update-resolv # provided by stack - better approach - single copy
update-resolv
update-ca-certificates
waitForService "postgres-db:5432"
waitForService "api-eventbus:5672"
waitForService "api-logger:24224"
waitForService "api-registry:8500"
waitForService "api-registry:8501"
waitForService "esb.service.ego.io:5672"
waitForService "logger.service.ego.io:24224"
waitForService "postgresdb.service.ego.io:5432"
# waitForService "api-eventbus:5672"
# waitForService "api-logger:24224"
# waitForService "db-postgres:5432"
register-service
# run migrations
migrate.sh

View File

@ -1,7 +1,7 @@
#!/bin/sh
# RUN IN REPO ROOT DIR !!
export IMAGE_PREFIX="git.pbiernat.io/egommerce/catalog"
export IMAGE_PREFIX="git.ego.cloudns.be/egommerce/catalog"
export BUILDER_IMAGE="egommerce-builder:catalog"
export BUILD_TIME=$(date +"%Y%m%d%H%M%S")
export SERVER_IMAGE="$IMAGE_PREFIX-svc"

View File

@ -1,7 +1,7 @@
#!/bin/sh
# RUN IN REPO ROOT DIR !!
export IMAGE_BASE="git.pbiernat.io/egommerce/catalog"
export IMAGE_BASE="git.ego.cloudns.be/egommerce/catalog"
export SERVER_IMAGE="$IMAGE_BASE-svc"
export WORKER_IMAGE="$IMAGE_BASE-worker"

View File

@ -29,7 +29,7 @@ func main() {
}
func healthCheck() bool {
run, err := os.Open("/app.run")
run, err := os.Open("./app.run")
if err != nil {
return false
}

View File

@ -25,7 +25,7 @@ func main() {
a.RegisterPlugin(app.CachePlugin(cArr))
a.RegisterPlugin(app.DatabasePlugin(cArr))
a.RegisterPlugin(app.EventbusPlugin(cArr))
a.RegisterPlugin(app.RegistryPlugin(cArr))
// a.RegisterPlugin(app.RegistryPlugin(cArr))
while := make(chan struct{})
err := a.Start(while)

View File

@ -4,7 +4,7 @@ go 1.18
require (
git.pbiernat.io/egommerce/api-entities v0.2.3
git.pbiernat.io/egommerce/go-api-pkg v0.3.18
git.pbiernat.io/egommerce/go-api-pkg v0.3.28
github.com/georgysavva/scany/v2 v2.0.0
github.com/go-pg/migrations/v8 v8.1.0
github.com/go-pg/pg/v10 v10.11.1

View File

@ -37,8 +37,8 @@ cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9
dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU=
git.pbiernat.io/egommerce/api-entities v0.2.3 h1:mR6EYfZkAzh4teydb7KXDBWoxwVW3qasnmmH5J3mnas=
git.pbiernat.io/egommerce/api-entities v0.2.3/go.mod h1:INXAG5x4+i+vNwg1NpfPHiDW8nY1kn1K7pgLOtX+/I0=
git.pbiernat.io/egommerce/go-api-pkg v0.3.18 h1:0+C9BMsllrNvRbh4kb7dJ5lrzP1Lc7J4pb+KV76YrXk=
git.pbiernat.io/egommerce/go-api-pkg v0.3.18/go.mod h1:XIy2mmvRNIzQmYIUAcDZafhRPxTQFS2HDmsK7ZQ6980=
git.pbiernat.io/egommerce/go-api-pkg v0.3.28 h1:PiqwprMSJxtK/nLUiidfBQUHz2n6XIpWZysWNfby4kw=
git.pbiernat.io/egommerce/go-api-pkg v0.3.28/go.mod h1:XIy2mmvRNIzQmYIUAcDZafhRPxTQFS2HDmsK7ZQ6980=
github.com/Azure/azure-sdk-for-go v44.0.0+incompatible h1:e82Yv2HNpS0kuyeCrV29OPKvEiqfs2/uJHic3/3iKdg=
github.com/Azure/go-autorest v14.2.0+incompatible h1:V5VMDjClD3GiElqLWO7mz2MxNAK/vTfRHdAubSIPRgs=
github.com/Azure/go-autorest/autorest v0.11.18 h1:90Y4srNYrwOtAgVo3ndrQkTYn6kf1Eg/AjTFJ8Is2aM=

View File

@ -1,6 +1,7 @@
package app
import (
"fmt"
"log"
"os"
"strconv"
@ -104,6 +105,12 @@ func RegistryPlugin(cArr map[string]string) Plugin {
os.Exit(1) // TODO: retry in background...
}
svc, _ := registry.Connect()
tlsCnf := svc.ServerTLSConfig()
// s.Base.App.Server().TLSConfig = tlsCnf
fmt.Println("Podmiana configa TLS", tlsCnf)
// defer svc.Close()
err = registry.Register()
if err != nil {
log.Fatalf("Failed to register in the Consul service. Err: %v", err)
@ -115,12 +122,6 @@ func RegistryPlugin(cArr map[string]string) Plugin {
return registry
// svc, _ := registry.Connect()
// tlsCnf := svc.ServerTLSConfig()
// s.Base.App.Server().TLSConfig = tlsCnf
// fmt.Println("Podmiana configa TLS")
// defer svc.Close()
// go func() { // Consul KV updater
// ticker := time.NewTicker(time.Second * 15)
// for range ticker.C {

View File

@ -21,7 +21,7 @@ const (
defNetAddr = ":443"
defMongoDbURL = "mongodb://mongodb:12345678@mongo-db:27017"
defPathPrefix = "/catalog"
defRegistryAddr = "api-registry:8500"
defRegistryAddr = "api-registry:8501"
defEbEventsExchange = "api-events"
defEbEventsQueue = "catalog-svc"
)

View File

@ -1,8 +1,6 @@
package server
import (
"strings"
"github.com/gofiber/fiber/v2"
"git.pbiernat.io/egommerce/go-api-pkg/fluentd"
@ -17,10 +15,10 @@ func SetupMiddleware(s *Server) {
func LoggingMiddleware(log *fluentd.Logger) func(c *fiber.Ctx) error {
return func(c *fiber.Ctx) error {
path := string(c.Request().URI().Path())
if strings.Contains(path, "/health") {
return c.Next()
}
// path := string(c.Request().URI().Path())
// if strings.Contains(path, "/health") {
// return c.Next()
// }
log.Log("Request: %s, remote: %s, via: %s",
c.Request().URI().String(),

View File

@ -69,7 +69,7 @@ func (s *Server) RegisterHandler(name string, fn func() any) {
func (s *Server) OnShutdown() {
// s.GetLogger().Log("Server %s is going down...", s.ID)
s.GetRegistry().Unregister()
// s.GetRegistry().Unregister()
// a.clearMetadataCache()
s.GetEventBus().Close()
s.GetDatabase().Close()

View File

@ -89,7 +89,7 @@ func (w *Worker) GetCache() *redis.Client {
return (w.handlers["cache"]).(*redis.Client)
}
func (w *Worker) GetDatabase() *pgxpool.Pool { // FIXME hardcoded index issue
func (w *Worker) GetDatabase() *pgxpool.Pool {
return (w.handlers["database"]).(*pgxpool.Pool)
}
@ -158,8 +158,8 @@ func (w *Worker) processMsg(cSrv *service.CatalogService, d amqp.Delivery) {
w.GetLogger().Log("Event: %s", event.EVENT_WAREHOUSE_STOCK_UPDATED)
}
rnr := NewCommandRunner(data, cSrv)
ok, _ = rnr.run(data)
r := NewCommandRunner(data, cSrv)
ok, _ = r.run(data)
if ok {
w.GetLogger().Log("Successful executed message \"%s\"\n", name)
fmt.Printf("Successful executed message \"%s\"\n", name)