diff --git a/backend/build.sh b/backend/build.sh index 58776c93b..2aed265cb 100755 --- a/backend/build.sh +++ b/backend/build.sh @@ -18,25 +18,13 @@ check_prereq() { return } - function build_service() { image="$1" echo "BUILDING $image" - case "$image" in - http | db | sink | ender | heuristics | storage | assets) - echo build http - docker build -t ${DOCKER_REPO:-'local'}/$image:${git_sha1} --platform linux/amd64 --build-arg SERVICE_NAME=$image -f ./cmd/Dockerfile . - [[ $PUSH_IMAGE -eq 1 ]] && { - docker push ${DOCKER_REPO:-'local'}/$image:${git_sha1} - } - ;; - *) - docker build -t ${DOCKER_REPO:-'local'}/$image:${git_sha1} --platform linux/amd64 --build-arg SERVICE_NAME=$image . - [[ $PUSH_IMAGE -eq 1 ]] && { - docker push ${DOCKER_REPO:-'local'}/$image:${git_sha1} - } - ;; - esac + docker build -t ${DOCKER_REPO:-'local'}/$image:${git_sha1} --platform linux/amd64 --build-arg SERVICE_NAME=$image -f ./cmd/Dockerfile . + [[ $PUSH_IMAGE -eq 1 ]] && { + docker push ${DOCKER_REPO:-'local'}/$image:${git_sha1} + } return } @@ -50,7 +38,7 @@ function build_api(){ build_service $2 return } - for image in $(ls services); + for image in $(ls cmd); do build_service $image echo "::set-output name=image::${DOCKER_REPO:-'local'}/$image:${git_sha1}" diff --git a/backend/services/integrations/main.go b/backend/cmd/integrations/main.go similarity index 85% rename from backend/services/integrations/main.go rename to backend/cmd/integrations/main.go index e3dd3f05c..543e6e449 100644 --- a/backend/services/integrations/main.go +++ b/backend/cmd/integrations/main.go @@ -2,6 +2,8 @@ package main import ( "log" + config "openreplay/backend/internal/config/integrations" + "openreplay/backend/internal/integrations/clientManager" "time" "os" @@ -9,23 +11,21 @@ import ( "syscall" "openreplay/backend/pkg/db/postgres" - "openreplay/backend/pkg/env" "openreplay/backend/pkg/intervals" "openreplay/backend/pkg/messages" "openreplay/backend/pkg/queue" "openreplay/backend/pkg/token" - "openreplay/backend/services/integrations/clientManager" ) func main() { log.SetFlags(log.LstdFlags | log.LUTC | log.Llongfile) - TOPIC_RAW_WEB := env.String("TOPIC_RAW_WEB") - POSTGRES_STRING := env.String("POSTGRES_STRING") - pg := postgres.NewConn(POSTGRES_STRING) + cfg := config.New() + + pg := postgres.NewConn(cfg.PostgresURI) defer pg.Close() - tokenizer := token.NewTokenizer(env.String("TOKEN_SECRET")) + tokenizer := token.NewTokenizer(cfg.TokenSecret) manager := clientManager.NewManager() @@ -45,7 +45,7 @@ func main() { producer := queue.NewProducer() defer producer.Close(15000) - listener, err := postgres.NewIntegrationsListener(POSTGRES_STRING) + listener, err := postgres.NewIntegrationsListener(cfg.PostgresURI) if err != nil { log.Printf("Postgres listener error: %v\n", err) log.Fatalf("Postgres listener error") @@ -81,7 +81,7 @@ func main() { sessionID = sessData.ID } // TODO: send to ready-events topic. Otherwise it have to go through the events worker. - producer.Produce(TOPIC_RAW_WEB, sessionID, messages.Encode(event.RawErrorEvent)) + producer.Produce(cfg.TopicRawWeb, sessionID, messages.Encode(event.RawErrorEvent)) case err := <-manager.Errors: log.Printf("Integration error: %v\n", err) case i := <-manager.RequestDataUpdates: diff --git a/backend/internal/config/integrations/config.go b/backend/internal/config/integrations/config.go new file mode 100644 index 000000000..037b26f68 --- /dev/null +++ b/backend/internal/config/integrations/config.go @@ -0,0 +1,17 @@ +package integrations + +import "openreplay/backend/pkg/env" + +type Config struct { + TopicRawWeb string + PostgresURI string + TokenSecret string +} + +func New() *Config { + return &Config{ + TopicRawWeb: env.String("TOPIC_RAW_WEB"), + PostgresURI: env.String("POSTGRES_STRING"), + TokenSecret: env.String("TOKEN_SECRET"), + } +} diff --git a/backend/services/integrations/clientManager/manager.go b/backend/internal/integrations/clientManager/manager.go similarity index 95% rename from backend/services/integrations/clientManager/manager.go rename to backend/internal/integrations/clientManager/manager.go index a671a6266..f902cf399 100644 --- a/backend/services/integrations/clientManager/manager.go +++ b/backend/internal/integrations/clientManager/manager.go @@ -1,10 +1,10 @@ package clientManager import ( + "openreplay/backend/internal/integrations/integration" "strconv" "openreplay/backend/pkg/db/postgres" - "openreplay/backend/services/integrations/integration" ) type manager struct { diff --git a/backend/services/integrations/integration/bugsnag.go b/backend/internal/integrations/integration/bugsnag.go similarity index 100% rename from backend/services/integrations/integration/bugsnag.go rename to backend/internal/integrations/integration/bugsnag.go diff --git a/backend/services/integrations/integration/bugsnag.json b/backend/internal/integrations/integration/bugsnag.json similarity index 100% rename from backend/services/integrations/integration/bugsnag.json rename to backend/internal/integrations/integration/bugsnag.json diff --git a/backend/services/integrations/integration/client.go b/backend/internal/integrations/integration/client.go similarity index 100% rename from backend/services/integrations/integration/client.go rename to backend/internal/integrations/integration/client.go diff --git a/backend/services/integrations/integration/cloudwatch.go b/backend/internal/integrations/integration/cloudwatch.go similarity index 100% rename from backend/services/integrations/integration/cloudwatch.go rename to backend/internal/integrations/integration/cloudwatch.go diff --git a/backend/services/integrations/integration/datadog.go b/backend/internal/integrations/integration/datadog.go similarity index 100% rename from backend/services/integrations/integration/datadog.go rename to backend/internal/integrations/integration/datadog.go diff --git a/backend/services/integrations/integration/datadog.json b/backend/internal/integrations/integration/datadog.json similarity index 100% rename from backend/services/integrations/integration/datadog.json rename to backend/internal/integrations/integration/datadog.json diff --git a/backend/services/integrations/integration/elasticsearch.go b/backend/internal/integrations/integration/elasticsearch.go similarity index 100% rename from backend/services/integrations/integration/elasticsearch.go rename to backend/internal/integrations/integration/elasticsearch.go diff --git a/backend/services/integrations/integration/elasticsearch.json b/backend/internal/integrations/integration/elasticsearch.json similarity index 100% rename from backend/services/integrations/integration/elasticsearch.json rename to backend/internal/integrations/integration/elasticsearch.json diff --git a/backend/services/integrations/integration/newrelic.go b/backend/internal/integrations/integration/newrelic.go similarity index 100% rename from backend/services/integrations/integration/newrelic.go rename to backend/internal/integrations/integration/newrelic.go diff --git a/backend/services/integrations/integration/newrelic.json b/backend/internal/integrations/integration/newrelic.json similarity index 100% rename from backend/services/integrations/integration/newrelic.json rename to backend/internal/integrations/integration/newrelic.json diff --git a/backend/services/integrations/integration/newrelic_empty.json b/backend/internal/integrations/integration/newrelic_empty.json similarity index 100% rename from backend/services/integrations/integration/newrelic_empty.json rename to backend/internal/integrations/integration/newrelic_empty.json diff --git a/backend/services/integrations/integration/rollbar.go b/backend/internal/integrations/integration/rollbar.go similarity index 100% rename from backend/services/integrations/integration/rollbar.go rename to backend/internal/integrations/integration/rollbar.go diff --git a/backend/services/integrations/integration/rollbar_error.json b/backend/internal/integrations/integration/rollbar_error.json similarity index 100% rename from backend/services/integrations/integration/rollbar_error.json rename to backend/internal/integrations/integration/rollbar_error.json diff --git a/backend/services/integrations/integration/rollbar_job_result.json b/backend/internal/integrations/integration/rollbar_job_result.json similarity index 100% rename from backend/services/integrations/integration/rollbar_job_result.json rename to backend/internal/integrations/integration/rollbar_job_result.json diff --git a/backend/services/integrations/integration/rollbar_job_start.json b/backend/internal/integrations/integration/rollbar_job_start.json similarity index 100% rename from backend/services/integrations/integration/rollbar_job_start.json rename to backend/internal/integrations/integration/rollbar_job_start.json diff --git a/backend/services/integrations/integration/sentry.go b/backend/internal/integrations/integration/sentry.go similarity index 100% rename from backend/services/integrations/integration/sentry.go rename to backend/internal/integrations/integration/sentry.go diff --git a/backend/services/integrations/integration/sentry.json b/backend/internal/integrations/integration/sentry.json similarity index 100% rename from backend/services/integrations/integration/sentry.json rename to backend/internal/integrations/integration/sentry.json diff --git a/backend/services/integrations/integration/stackdriver.go b/backend/internal/integrations/integration/stackdriver.go similarity index 100% rename from backend/services/integrations/integration/stackdriver.go rename to backend/internal/integrations/integration/stackdriver.go diff --git a/backend/services/integrations/integration/sumologic.go b/backend/internal/integrations/integration/sumologic.go similarity index 100% rename from backend/services/integrations/integration/sumologic.go rename to backend/internal/integrations/integration/sumologic.go diff --git a/backend/services/integrations/integration/sumologic_error.json b/backend/internal/integrations/integration/sumologic_error.json similarity index 100% rename from backend/services/integrations/integration/sumologic_error.json rename to backend/internal/integrations/integration/sumologic_error.json diff --git a/backend/services/integrations/integration/sumologic_job_result.json b/backend/internal/integrations/integration/sumologic_job_result.json similarity index 100% rename from backend/services/integrations/integration/sumologic_job_result.json rename to backend/internal/integrations/integration/sumologic_job_result.json diff --git a/backend/services/integrations/integration/sumologic_job_start.json b/backend/internal/integrations/integration/sumologic_job_start.json similarity index 100% rename from backend/services/integrations/integration/sumologic_job_start.json rename to backend/internal/integrations/integration/sumologic_job_start.json diff --git a/backend/services/integrations/integration/sumologic_job_status.json b/backend/internal/integrations/integration/sumologic_job_status.json similarity index 100% rename from backend/services/integrations/integration/sumologic_job_status.json rename to backend/internal/integrations/integration/sumologic_job_status.json diff --git a/backend/services/integrations/integration/utils.go b/backend/internal/integrations/integration/utils.go similarity index 100% rename from backend/services/integrations/integration/utils.go rename to backend/internal/integrations/integration/utils.go diff --git a/backend/services/assets/build_hack b/backend/services/assets/build_hack deleted file mode 100644 index e69de29bb..000000000 diff --git a/backend/services/db/build_hack b/backend/services/db/build_hack deleted file mode 100644 index e69de29bb..000000000 diff --git a/backend/services/ender/build_hack b/backend/services/ender/build_hack deleted file mode 100644 index e69de29bb..000000000 diff --git a/backend/services/heuristics/build_hack b/backend/services/heuristics/build_hack deleted file mode 100644 index e69de29bb..000000000 diff --git a/backend/services/http/build_hack b/backend/services/http/build_hack deleted file mode 100644 index e69de29bb..000000000 diff --git a/backend/services/sink/build_hack b/backend/services/sink/build_hack deleted file mode 100644 index e69de29bb..000000000 diff --git a/backend/services/storage/build_hack b/backend/services/storage/build_hack deleted file mode 100644 index e69de29bb..000000000