mirror of
https://github.com/ultravioletrs/cocos.git
synced 2026-06-23 04:10:25 +00:00
NOISSUE - Add message broker on agent and manager (#17)
* Fix bug in agent state machine The bug in the agent state machine caused an error when attempting an invalid transition. This commit fixes the bug by properly locking and unlocking the state machine before and after transitioning to the next state. Additionally, the logger now correctly logs the current and next state during a valid transition. Signed-off-by: SammyOina <sammyoina@gmail.com> * Fix race condition in state machine The commit fixes a race condition in the state machine implementation in the `Start` method. The race condition occurs when multiple goroutines try to access and modify the state concurrently. To fix this, a mutex lock and unlock are added around the critical sections of code to ensure exclusive access to the state variable. This prevents race conditions and ensures the state transitions are executed correctly. Signed-off-by: SammyOina <sammyoina@gmail.com> * Fix race condition in StateMachine.Start() The StateMachine.Start() method was experiencing a race condition when multiple events were being processed concurrently. This was caused by not properly locking and unlocking the state machine before and after updating the state. This commit fixes the issue by adding proper locking and unlocking around the state update operation. Additionally, the logging statement has been updated to include the previous and next states for better debugging. Signed-off-by: SammyOina <sammyoina@gmail.com> * add magistrala dep Signed-off-by: SammyOina <sammyoina@gmail.com> * remove mainflux Signed-off-by: SammyOina <sammyoina@gmail.com> * Fix agentService New function to include messaging.Publisher parameter The agentService New function has been updated to include a messaging.Publisher parameter. This change allows the agent service to publish messages to a messaging system. The messaging.Publisher parameter has been added to the agentService struct and the New function signature has been updated accordingly. This change ensures that the agent service can communicate with other components using the messaging system. Signed-off-by: SammyOina <sammyoina@gmail.com> * Refactor service.go state functions The commit refactors the state functions in the service.go file. The functions for each state have been modified to use the svc.publishEvent method to publish events with appropriate messages. - Refactor state functions in service.go - Use svc.publishEvent to publish events with messages for each state Signed-off-by: SammyOina <sammyoina@gmail.com> * Fix computation run event publishing and add pubsub functionality The computation run event publishing in the agent service was fixed to correctly call the publishEvent function. Additionally, the pubsub functionality was added to the manager package. - Fixed computation run event publishing in agent service - Added pubsub functionality to manager package Signed-off-by: SammyOina <sammyoina@gmail.com> * Fix license header in pubsub.go file The commit fixes the license header in the pubsub.go file. The copyright and SPDX-License-Identifier have been added to comply with the Apache-2.0 license. Signed-off-by: SammyOina <sammyoina@gmail.com> * Add Docker environment variables for Nats, RabbitMQ, Message Broker, and Jaeger. The commit message should be: "Add Docker environment variables for Nats, RabbitMQ, Message Broker, and Jaeger" Signed-off-by: SammyOina <sammyoina@gmail.com> * Fix Makefile to properly set DOCKER_PROJECT and COCOS_MESSAGE_BROKER_TYPE The Makefile has been updated to fix an issue with setting the DOCKER_PROJECT and COCOS_MESSAGE_BROKER_TYPE variables. The USER_REPO variable is now used to generate the DOCKER_PROJECT name following the Docker Compose guidelines. Additionally, the COCOS_MESSAGE_BROKER_TYPE variable is now properly set to "nats" if it is empty. This ensures that the correct values are used when compiling and installing the service. Summary: Fix Makefile to properly set DOCKER_PROJECT and COCOS_MESSAGE_BROKER_TYPE Details: - Update USER_REPO variable to generate DOCKER_PROJECT name - Set COCOS_MESSAGE_BROKER_TYPE to "nats" if empty Signed-off-by: SammyOina <sammyoina@gmail.com> * Fix Makefile Docker profile assignment and build flags The Makefile was updated to fix the assignment of the Docker profile and build flags. The Docker profile is now assigned based on the value of COCOS_MESSAGE_BROKER_TYPE, and if it is not provided, the default value is set to "nats". The build flags were also updated to include the COCOS_MESSAGE_BROKER_TYPE value as a tag for the Go build process. This commit addresses the issue with the Docker profile assignment and ensures that the correct build flags are used during the build process. Signed-off-by: SammyOina <sammyoina@gmail.com> * fix makefile Signed-off-by: SammyOina <sammyoina@gmail.com> * Fix notification topic in agent service and update NATS ports in Docker environment variables The agent service's notification topic was incorrectly set to "channels.manager" instead of "agent". This commit fixes the issue by updating the notification topic. Additionally, the NATS ports in the Docker environment variables were incorrect. The COCOS_NATS_PORT and COCOS_NATS_HTTP_PORT have been updated to the correct values. These changes ensure that the agent service uses the correct notification topic and the NATS ports are properly configured. Signed-off-by: SammyOina <sammyoina@gmail.com> * add pubsub Signed-off-by: SammyOina <sammyoina@gmail.com> * update protoc Signed-off-by: SammyOina <sammyoina@gmail.com> --------- Signed-off-by: SammyOina <sammyoina@gmail.com>
This commit is contained in:
committed by
GitHub
parent
4958f9468f
commit
4ea9ff6531
@@ -48,7 +48,7 @@ jobs:
|
||||
# Add protoc to the PATH
|
||||
export PATH=$PATH:/usr/local/bin/protoc
|
||||
|
||||
- name: Set up Mainflux
|
||||
- name: Set up Cocos-AI
|
||||
run: |
|
||||
# Rename .pb.go files to .pb.go.tmp to prevent conflicts
|
||||
for p in $(ls manager/*.pb.go); do
|
||||
|
||||
@@ -4,3 +4,5 @@ build
|
||||
cmd/manager/img
|
||||
cmd/manager/iso
|
||||
cmd/manager/tmp
|
||||
|
||||
.cov
|
||||
|
||||
@@ -8,13 +8,19 @@ TIME ?= $(shell date +%F_%T)
|
||||
CLI_SOURCE = ./cmd/cli/main.go
|
||||
CLI_BIN = ${BUILD_DIR}/cocos-cli
|
||||
|
||||
USER_REPO ?= $(shell git remote get-url origin | sed -e 's/.*\/\([^/]*\)\/\([^/]*\).*/\1_\2/' )
|
||||
empty:=
|
||||
space:= $(empty) $(empty)
|
||||
# Docker compose project name should follow this guidelines: https://docs.docker.com/compose/reference/#use--p-to-specify-a-project-name
|
||||
DOCKER_PROJECT ?= $(shell echo $(subst $(space),,$(USER_REPO)) | tr -c -s '[:alnum:][=-=]' '_' | tr '[:upper:]' '[:lower:]')
|
||||
DOCKER_PROFILE ?= $(if $(COCOS_MESSAGE_BROKER_TYPE),$(COCOS_MESSAGE_BROKER_TYPE),nats)
|
||||
|
||||
define compile_service
|
||||
CGO_ENABLED=$(CGO_ENABLED) GOOS=$(GOOS) GOARCH=$(GOARCH) GOARM=$(GOARM) \
|
||||
go build -ldflags "-s -w \
|
||||
-X 'github.com/mainflux/mainflux.BuildTime=$(TIME)' \
|
||||
-X 'github.com/mainflux/mainflux.Version=$(VERSION)' \
|
||||
-X 'github.com/mainflux/mainflux.Commit=$(COMMIT)'" \
|
||||
go build -tags $(DOCKER_PROFILE) -ldflags "-s -w \
|
||||
-X 'github.com/absmach/magistrala.BuildTime=$(TIME)' \
|
||||
-X 'github.com/absmach/magistrala.Version=$(VERSION)' \
|
||||
-X 'github.com/absmach/magistrala.Commit=$(COMMIT)'" \
|
||||
-o ${BUILD_DIR}/cocos-$(1) cmd/$(1)/main.go
|
||||
endef
|
||||
|
||||
@@ -30,3 +36,26 @@ install-cli: cli
|
||||
|
||||
protoc:
|
||||
protoc -I. --go_out=. --go_opt=paths=source_relative --go-grpc_out=. --go-grpc_opt=paths=source_relative agent/agent.proto
|
||||
|
||||
define edit_docker_config
|
||||
sed -i "s/COCOS_MESSAGE_BROKER_TYPE=.*/COCOS_MESSAGE_BROKER_TYPE=$(1)/" docker/.env
|
||||
sed -i "s,file: .*.yml,file: $(1).yml," docker/brokers/docker-compose.yml
|
||||
sed -i "s,COCOS_MESSAGE_BROKER_URL=.*,COCOS_MESSAGE_BROKER_URL=$$\{COCOS_$(shell echo ${DOCKER_PROFILE} | tr 'a-z' 'A-Z')_URL\}," docker/.env
|
||||
endef
|
||||
|
||||
change_config:
|
||||
ifeq ($(DOCKER_PROFILE),nats)
|
||||
sed -i "s/- broker/- nats/g" docker/docker-compose.yml
|
||||
sed -i "s,COCOS_NATS_URL=.*,COCOS_NATS_URL=nats://nats:$$\{COCOS_NATS_PORT}," docker/.env
|
||||
$(call edit_docker_config,nats)
|
||||
else ifeq ($(DOCKER_PROFILE),rabbitmq)
|
||||
sed -i "s/nats/broker/g" docker/docker-compose.yml
|
||||
sed -i "s/rabbitmq/broker/g" docker/docker-compose.yml
|
||||
$(call edit_docker_config,rabbitmq)
|
||||
else
|
||||
$(error Invalid DOCKER_PROFILE $(DOCKER_PROFILE))
|
||||
endif
|
||||
|
||||
run: change_config
|
||||
docker compose -f docker/docker-compose.yml --profile $(DOCKER_PROFILE) -p $(DOCKER_PROJECT) up
|
||||
|
||||
|
||||
+1
-1
@@ -4,7 +4,7 @@
|
||||
// Code generated by protoc-gen-go. DO NOT EDIT.
|
||||
// versions:
|
||||
// protoc-gen-go v1.31.0
|
||||
// protoc v4.24.3
|
||||
// protoc v4.24.4
|
||||
// source: agent/agent.proto
|
||||
|
||||
package agent
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
|
||||
// versions:
|
||||
// - protoc-gen-go-grpc v1.3.0
|
||||
// - protoc v4.24.3
|
||||
// - protoc v4.24.4
|
||||
// source: agent/agent.proto
|
||||
|
||||
package agent
|
||||
|
||||
@@ -11,7 +11,7 @@ import (
|
||||
"fmt"
|
||||
"time"
|
||||
|
||||
"github.com/mainflux/mainflux/logger"
|
||||
"github.com/absmach/magistrala/logger"
|
||||
"github.com/ultravioletrs/cocos-ai/agent"
|
||||
)
|
||||
|
||||
|
||||
@@ -1,7 +1,4 @@
|
||||
// Copyright (c) Ultraviolet
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
// Package things contains the domain concept definitions needed to support
|
||||
// Mainflux agent service functionality.
|
||||
|
||||
package agent
|
||||
|
||||
+28
-6
@@ -14,7 +14,8 @@ import (
|
||||
"slices"
|
||||
"time"
|
||||
|
||||
"github.com/mainflux/mainflux/logger"
|
||||
"github.com/absmach/magistrala/logger"
|
||||
"github.com/absmach/magistrala/pkg/messaging"
|
||||
"github.com/ultravioletrs/cocos-ai/pkg/socket"
|
||||
)
|
||||
|
||||
@@ -61,22 +62,31 @@ type agentService struct {
|
||||
attestation []byte
|
||||
sm *StateMachine
|
||||
runError error
|
||||
publisher messaging.Publisher
|
||||
}
|
||||
|
||||
const (
|
||||
socketPath = "unix_socket"
|
||||
pyRuntime = "python3"
|
||||
socketPath = "unix_socket"
|
||||
pyRuntime = "python3"
|
||||
notificationTopic = "agent"
|
||||
)
|
||||
|
||||
var _ Service = (*agentService)(nil)
|
||||
|
||||
// New instantiates the agent service implementation.
|
||||
func New(ctx context.Context, logger logger.Logger) Service {
|
||||
func New(ctx context.Context, logger logger.Logger, publisher messaging.Publisher) Service {
|
||||
svc := &agentService{
|
||||
sm: NewStateMachine(logger),
|
||||
sm: NewStateMachine(logger),
|
||||
publisher: publisher,
|
||||
}
|
||||
go svc.sm.Start(ctx)
|
||||
svc.sm.SendEvent(start)
|
||||
svc.sm.StateFunctions[idle] = svc.publishEvent(ctx, "idle", "agent has started")
|
||||
svc.sm.StateFunctions[receivingManifests] = svc.publishEvent(ctx, "run", "agent ready to receive manifests")
|
||||
svc.sm.StateFunctions[receivingAlgorithms] = svc.publishEvent(ctx, "algorithms", "agent is ready to receiving algorithms")
|
||||
svc.sm.StateFunctions[receivingData] = svc.publishEvent(ctx, "datasets", "agent is ready to receiving datasets")
|
||||
svc.sm.StateFunctions[resultsReady] = svc.publishEvent(ctx, "results", "agent computation results are ready")
|
||||
svc.sm.StateFunctions[complete] = svc.publishEvent(ctx, "complete", "agent results have been consumed")
|
||||
svc.sm.StateFunctions[running] = svc.runComputation
|
||||
return svc
|
||||
}
|
||||
@@ -197,10 +207,11 @@ func (as *agentService) Attestation(ctx context.Context) ([]byte, error) {
|
||||
}
|
||||
|
||||
func (as *agentService) runComputation() {
|
||||
ctx := context.Background()
|
||||
as.publishEvent(ctx, "running", "computation run has started")()
|
||||
as.sm.logger.Debug("computation run started")
|
||||
defer as.sm.SendEvent(runComplete)
|
||||
var cancel context.CancelFunc
|
||||
ctx := context.Background()
|
||||
if as.computation.Timeout.Duration != 0 {
|
||||
ctx, cancel = context.WithDeadline(ctx, <-time.After(as.computation.Timeout.Duration))
|
||||
defer cancel()
|
||||
@@ -213,6 +224,17 @@ func (as *agentService) runComputation() {
|
||||
as.result = result
|
||||
}
|
||||
|
||||
func (as *agentService) publishEvent(ctx context.Context, subtopic, body string) func() {
|
||||
return func() {
|
||||
if err := as.publisher.Publish(ctx, notificationTopic, &messaging.Message{
|
||||
Subtopic: subtopic,
|
||||
Payload: []byte(body),
|
||||
}); err != nil {
|
||||
as.sm.logger.Warn(err.Error())
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func run(ctx context.Context, algoContent []byte, dataContent []byte) ([]byte, error) {
|
||||
listener, err := socket.StartUnixSocketServer(socketPath)
|
||||
if err != nil {
|
||||
|
||||
+1
-1
@@ -7,7 +7,7 @@ import (
|
||||
"fmt"
|
||||
"sync"
|
||||
|
||||
"github.com/mainflux/mainflux/logger"
|
||||
"github.com/absmach/magistrala/logger"
|
||||
)
|
||||
|
||||
type state int
|
||||
|
||||
+1
-1
@@ -7,7 +7,7 @@ import (
|
||||
"fmt"
|
||||
"testing"
|
||||
|
||||
"github.com/mainflux/mainflux/logger"
|
||||
"github.com/absmach/magistrala/logger"
|
||||
)
|
||||
|
||||
func TestStateMachineTransitions(t *testing.T) {
|
||||
|
||||
@@ -5,8 +5,5 @@
|
||||
//
|
||||
// This package provides tracing middleware for cocos auth service.
|
||||
// It can be used to trace incoming requests and add tracing capabilities to
|
||||
// cocos auth service.
|
||||
//
|
||||
// For more details about tracing instrumentation refer
|
||||
// to the documentation at https://docs.mainflux.io/tracing/.
|
||||
// cocos agent service.
|
||||
package tracing
|
||||
|
||||
+17
-8
@@ -8,8 +8,10 @@ import (
|
||||
"log"
|
||||
"os"
|
||||
|
||||
mflog "github.com/mainflux/mainflux/logger"
|
||||
"github.com/mainflux/mainflux/pkg/uuid"
|
||||
mflog "github.com/absmach/magistrala/logger"
|
||||
"github.com/absmach/magistrala/pkg/messaging"
|
||||
"github.com/absmach/magistrala/pkg/messaging/brokers"
|
||||
"github.com/absmach/magistrala/pkg/uuid"
|
||||
"github.com/ultravioletrs/cocos-ai/agent"
|
||||
"github.com/ultravioletrs/cocos-ai/agent/api"
|
||||
agentgrpc "github.com/ultravioletrs/cocos-ai/agent/api/grpc"
|
||||
@@ -34,9 +36,10 @@ const (
|
||||
)
|
||||
|
||||
type config struct {
|
||||
LogLevel string `env:"AGENT_LOG_LEVEL" envDefault:"info"`
|
||||
JaegerURL string `env:"AGENT_JAEGER_URL" envDefault:"http://localhost::4318/v1/traces"`
|
||||
InstanceID string `env:"AGENT_INSTANCE_ID" envDefault:""`
|
||||
LogLevel string `env:"AGENT_LOG_LEVEL" envDefault:"info"`
|
||||
JaegerURL string `env:"COCOS_JAEGER_URL" envDefault:"http://localhost::4318/v1/traces"`
|
||||
InstanceID string `env:"AGENT_INSTANCE_ID" envDefault:""`
|
||||
BrokerURL string `env:"COCOS_MESSAGE_BROKER_URL" envDefault:"nats://localhost:4222"`
|
||||
}
|
||||
|
||||
func main() {
|
||||
@@ -71,7 +74,13 @@ func main() {
|
||||
}()
|
||||
tracer := tp.Tracer(svcName)
|
||||
|
||||
svc := newService(ctx, logger, tracer)
|
||||
pub, err := brokers.NewPublisher(ctx, cfg.BrokerURL)
|
||||
if err != nil {
|
||||
logger.Error(err.Error())
|
||||
return
|
||||
}
|
||||
|
||||
svc := newService(ctx, logger, tracer, pub)
|
||||
|
||||
httpServerConfig := server.Config{Port: defSvcHTTPPort}
|
||||
if err := env.Parse(&httpServerConfig, env.Options{Prefix: envPrefixHTTP}); err != nil {
|
||||
@@ -102,8 +111,8 @@ func main() {
|
||||
}
|
||||
}
|
||||
|
||||
func newService(ctx context.Context, logger mflog.Logger, tracer trace.Tracer) agent.Service {
|
||||
svc := agent.New(ctx, logger)
|
||||
func newService(ctx context.Context, logger mflog.Logger, tracer trace.Tracer, publisher messaging.Publisher) agent.Service {
|
||||
svc := agent.New(ctx, logger, publisher)
|
||||
|
||||
svc = api.LoggingMiddleware(svc, logger)
|
||||
counter, latency := internal.MakeMetrics(svcName, "api")
|
||||
|
||||
+1
-1
@@ -7,7 +7,7 @@ import (
|
||||
"log"
|
||||
"os"
|
||||
|
||||
"github.com/mainflux/mainflux/logger"
|
||||
"github.com/absmach/magistrala/logger"
|
||||
"github.com/spf13/cobra"
|
||||
"github.com/spf13/pflag"
|
||||
"github.com/ultravioletrs/cocos-ai/cli"
|
||||
|
||||
+15
-5
@@ -10,8 +10,9 @@ import (
|
||||
"os"
|
||||
"strings"
|
||||
|
||||
"github.com/mainflux/mainflux/logger"
|
||||
"github.com/mainflux/mainflux/pkg/uuid"
|
||||
"github.com/absmach/magistrala/logger"
|
||||
"github.com/absmach/magistrala/pkg/messaging/brokers"
|
||||
"github.com/absmach/magistrala/pkg/uuid"
|
||||
"github.com/ultravioletrs/cocos-ai/agent"
|
||||
"github.com/ultravioletrs/cocos-ai/internal"
|
||||
"github.com/ultravioletrs/cocos-ai/internal/env"
|
||||
@@ -44,9 +45,10 @@ const (
|
||||
)
|
||||
|
||||
type config struct {
|
||||
LogLevel string `env:"MANAGER_LOG_LEVEL" envDefault:"info"`
|
||||
JaegerURL string `env:"MANAGER_JAEGER_URL" envDefault:"http://localhost:4318/v1/traces"`
|
||||
InstanceID string `env:"MANAGER_INSTANCE_ID" envDefault:""`
|
||||
LogLevel string `env:"MANAGER_LOG_LEVEL" envDefault:"info"`
|
||||
JaegerURL string `env:"COCOS_JAEGER_URL" envDefault:"http://localhost:4318/v1/traces"`
|
||||
InstanceID string `env:"MANAGER_INSTANCE_ID" envDefault:""`
|
||||
BrokerURL string `env:"COCOS_MESSAGE_BROKER_URL" envDefault:"nats://localhost:4222"`
|
||||
}
|
||||
|
||||
func main() {
|
||||
@@ -103,6 +105,14 @@ func main() {
|
||||
}
|
||||
logger.Info(fmt.Sprintf("%s %s", exe, strings.Join(args, " ")))
|
||||
|
||||
pubsub, err := brokers.NewPubSub(ctx, cfg.BrokerURL, logger)
|
||||
if err != nil {
|
||||
logger.Fatal(err.Error())
|
||||
}
|
||||
if err := manager.NewAgentEventNotifier(ctx, pubsub, logger); err != nil {
|
||||
logger.Fatal(err.Error())
|
||||
}
|
||||
|
||||
svc := newService(agentClient, logger, tracer, qemuCfg)
|
||||
|
||||
httpServerConfig := server.Config{Port: defSvcHTTPPort}
|
||||
|
||||
+33
@@ -0,0 +1,33 @@
|
||||
# Docker: Environment variables in Compose
|
||||
|
||||
## Nats
|
||||
COCOS_NATS_PORT=4222
|
||||
COCOS_NATS_HTTP_PORT=8222
|
||||
COCOS_NATS_JETSTREAM_KEY=u7wFoAPgXpDueXOFldBnXDh4xjnSOyEJ2Cb8Z5SZvGLzIZ3U4exWhhoIBZHzuNvh
|
||||
COCOS_NATS_URL=nats://nats:${COCOS_NATS_PORT}
|
||||
|
||||
## RabbitMQ
|
||||
COCOS_RABBITMQ_PORT=5672
|
||||
COCOS_RABBITMQ_HTTP_PORT=15672
|
||||
COCOS_RABBITMQ_USER=cocos
|
||||
COCOS_RABBITMQ_PASS=cocos
|
||||
COCOS_RABBITMQ_COOKIE=cocos
|
||||
COCOS_RABBITMQ_VHOST=/
|
||||
COCOS_RABBITMQ_URL=amqp://${COCOS_RABBITMQ_USER}:${COCOS_RABBITMQ_PASS}@broker:${COCOS_RABBITMQ_PORT}${COCOS_RABBITMQ_VHOST}
|
||||
|
||||
## Message Broker
|
||||
COCOS_MESSAGE_BROKER_TYPE=nats
|
||||
COCOS_MESSAGE_BROKER_URL=${COCOS_NATS_URL}
|
||||
|
||||
## Jaeger
|
||||
COCOS_JAEGER_PORT=6831
|
||||
COCOS_JAEGER_FRONTEND=16686
|
||||
COCOS_JAEGER_COLLECTOR=14268
|
||||
COCOS_JAEGER_CONFIGS=5778
|
||||
COCOS_JAEGER_URL=http://jaeger:14268/api/traces
|
||||
COCOS_JAEGER_TRACE_RATIO=1.0
|
||||
|
||||
## Core Services
|
||||
|
||||
# Docker image tag
|
||||
COCOS_RELEASE_TAG=latest
|
||||
@@ -0,0 +1,28 @@
|
||||
# Brokers Docker Compose
|
||||
|
||||
Cocos supports configurable Message broker.
|
||||
|
||||
## Message Broker
|
||||
|
||||
Magistrala supports NATS and RabbitMQ as a message broker.
|
||||
|
||||
## Profiles
|
||||
|
||||
This directory contains 2 docker-compose profiles for running Magistrala with different message brokers.
|
||||
|
||||
The profiles are:
|
||||
|
||||
- `nats` - Nats as a message broker
|
||||
- `rabbitmq` - RabbitMQ as a message broker
|
||||
|
||||
The following command will run Nats as a message broker:
|
||||
|
||||
```bash
|
||||
MG_MESSAGE_BROKER_TYPE=nats make run
|
||||
```
|
||||
|
||||
The following command will run RabbitMQ as a message broker:
|
||||
|
||||
```bash
|
||||
MG_MESSAGE_BROKER_TYPE=rabbitmq make run
|
||||
```
|
||||
@@ -0,0 +1,22 @@
|
||||
# This file configures COCOS brokers.
|
||||
# MESSAGE_BROKER can be either 'nats' or 'rabbitmq'.
|
||||
#
|
||||
# Each broker has a unique profile for configuration. The available profiles are:
|
||||
# - nats: Uses 'nats' as MESSAGE_BROKER.
|
||||
# - rabbitmq: Uses 'rabbitmq' as MESSAGE_BROKER.
|
||||
#
|
||||
|
||||
services:
|
||||
broker:
|
||||
extends:
|
||||
file: nats.yml
|
||||
service: broker
|
||||
container_name: cocos-broker
|
||||
restart: on-failure
|
||||
networks:
|
||||
- cocos-base-net
|
||||
volumes:
|
||||
- cocos-broker-volume:/data
|
||||
profiles:
|
||||
- rabbitmq
|
||||
- nats
|
||||
@@ -0,0 +1,13 @@
|
||||
services:
|
||||
broker:
|
||||
image: nats:2.9.21-alpine
|
||||
command: "--config=/etc/nats/nats.conf"
|
||||
volumes:
|
||||
- ./../nats/:/etc/nats
|
||||
environment:
|
||||
- COCOS_NATS_PORT=${COCOS_NATS_PORT}
|
||||
- COCOS_NATS_HTTP_PORT=${COCOS_NATS_HTTP_PORT}
|
||||
- COCOS_NATS_JETSTREAM_KEY=${COCOS_NATS_JETSTREAM_KEY}
|
||||
ports:
|
||||
- ${COCOS_NATS_PORT}:${COCOS_NATS_PORT}
|
||||
- ${COCOS_NATS_HTTP_PORT}:${COCOS_NATS_HTTP_PORT}
|
||||
@@ -0,0 +1,11 @@
|
||||
services:
|
||||
broker:
|
||||
image: rabbitmq:3.9.20-management-alpine
|
||||
environment:
|
||||
RABBITMQ_ERLANG_COOKIE: ${COCOS_RABBITMQ_COOKIE}
|
||||
RABBITMQ_DEFAULT_USER: ${COCOS_RABBITMQ_USER}
|
||||
RABBITMQ_DEFAULT_PASS: ${COCOS_RABBITMQ_PASS}
|
||||
RABBITMQ_DEFAULT_VHOST: ${COCOS_RABBITMQ_VHOST}
|
||||
ports:
|
||||
- ${COCOS_RABBITMQ_PORT}:${COCOS_RABBITMQ_PORT}
|
||||
- ${COCOS_RABBITMQ_HTTP_PORT}:${COCOS_RABBITMQ_HTTP_PORT}
|
||||
@@ -0,0 +1,25 @@
|
||||
version: "3.7"
|
||||
name: "cocos"
|
||||
|
||||
networks:
|
||||
cocos-base-net:
|
||||
driver: bridge
|
||||
|
||||
volumes:
|
||||
cocos-broker-volume:
|
||||
|
||||
include:
|
||||
- path: brokers/docker-compose.yml
|
||||
env_file: docker/.env
|
||||
|
||||
services:
|
||||
jaeger:
|
||||
image: jaegertracing/all-in-one:1.38.0
|
||||
container_name: cocos-jaeger
|
||||
ports:
|
||||
- ${COCOS_JAEGER_PORT}:${COCOS_JAEGER_PORT}/udp
|
||||
- ${COCOS_JAEGER_FRONTEND}:${COCOS_JAEGER_FRONTEND}
|
||||
- ${COCOS_JAEGER_COLLECTOR}:${COCOS_JAEGER_COLLECTOR}
|
||||
- ${COCOS_JAEGER_CONFIGS}:${COCOS_JAEGER_CONFIGS}
|
||||
networks:
|
||||
- cocos-base-net
|
||||
@@ -0,0 +1,13 @@
|
||||
server_name: "nats_internal_broker"
|
||||
max_payload: 1MB
|
||||
max_connections: 1M
|
||||
port: $COCOS_NATS_PORT
|
||||
http_port: $COCOS_NATS_HTTP_PORT
|
||||
trace: true
|
||||
|
||||
jetstream {
|
||||
store_dir: "/data"
|
||||
cipher: "aes"
|
||||
key: $COCOS_NATS_JETSTREAM_KEY
|
||||
max_mem: 1G
|
||||
}
|
||||
@@ -3,13 +3,13 @@ module github.com/ultravioletrs/cocos-ai
|
||||
go 1.21.3
|
||||
|
||||
require (
|
||||
github.com/absmach/magistrala v0.11.1-0.20231102134813-44408395e6a3
|
||||
github.com/caarlos0/env/v7 v7.1.0
|
||||
github.com/cenkalti/backoff/v4 v4.2.1
|
||||
github.com/digitalocean/go-libvirt v0.0.0-20221205150000-2939327a8519
|
||||
github.com/go-kit/kit v0.13.0
|
||||
github.com/go-zoo/bone v1.3.0
|
||||
github.com/gofrs/uuid v4.4.0+incompatible
|
||||
github.com/mainflux/mainflux v0.0.0-20231024165949-8b185d205b6c
|
||||
github.com/prometheus/client_golang v1.17.0
|
||||
github.com/spf13/cobra v1.7.0
|
||||
github.com/spf13/pflag v1.0.5
|
||||
@@ -27,25 +27,34 @@ require (
|
||||
)
|
||||
|
||||
require (
|
||||
cloud.google.com/go/compute v1.23.3 // indirect
|
||||
github.com/beorn7/perks v1.0.1 // indirect
|
||||
github.com/cespare/xxhash/v2 v2.2.0 // indirect
|
||||
github.com/felixge/httpsnoop v1.0.3 // indirect
|
||||
github.com/go-kit/log v0.2.1 // indirect
|
||||
github.com/go-logfmt/logfmt v0.6.0 // indirect
|
||||
github.com/go-logr/logr v1.2.4 // indirect
|
||||
github.com/go-logr/logr v1.3.0 // indirect
|
||||
github.com/go-logr/stdr v1.2.2 // indirect
|
||||
github.com/golang/protobuf v1.5.3 // indirect
|
||||
github.com/google/go-cmp v0.6.0 // indirect
|
||||
github.com/grpc-ecosystem/grpc-gateway/v2 v2.18.0 // indirect
|
||||
github.com/inconshreveable/mousetrap v1.1.0 // indirect
|
||||
github.com/matttproud/golang_protobuf_extensions v1.0.4 // indirect
|
||||
github.com/klauspost/compress v1.17.2 // indirect
|
||||
github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 // indirect
|
||||
github.com/nats-io/nats.go v1.31.0 // indirect
|
||||
github.com/nats-io/nkeys v0.4.6 // indirect
|
||||
github.com/nats-io/nuid v1.0.1 // indirect
|
||||
github.com/prometheus/client_model v0.5.0 // indirect
|
||||
github.com/prometheus/common v0.44.0 // indirect
|
||||
github.com/prometheus/common v0.45.0 // indirect
|
||||
github.com/prometheus/procfs v0.12.0 // indirect
|
||||
github.com/rabbitmq/amqp091-go v1.9.0 // indirect
|
||||
go.opentelemetry.io/otel/metric v1.19.0 // indirect
|
||||
go.opentelemetry.io/proto/otlp v1.0.0 // indirect
|
||||
golang.org/x/crypto v0.14.0 // indirect
|
||||
golang.org/x/net v0.17.0 // indirect
|
||||
golang.org/x/oauth2 v0.13.0 // indirect
|
||||
golang.org/x/sys v0.13.0 // indirect
|
||||
golang.org/x/text v0.13.0 // indirect
|
||||
google.golang.org/genproto/googleapis/api v0.0.0-20231012201019-e917dd12ba7a // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20231016165738-49dd2c1f3d0b // indirect
|
||||
google.golang.org/genproto/googleapis/api v0.0.0-20231030173426-d783a09b4405 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20231030173426-d783a09b4405 // indirect
|
||||
)
|
||||
|
||||
@@ -1,9 +1,18 @@
|
||||
cloud.google.com/go/compute v1.23.0 h1:tP41Zoavr8ptEqaW6j+LQOnyBBhO7OkOMAGrgLopTwY=
|
||||
cloud.google.com/go/compute v1.23.0/go.mod h1:4tCnrn48xsqlwSAiLf1HXMQk8CONslYbdiEZc9FEIbM=
|
||||
cloud.google.com/go v0.110.8 h1:tyNdfIxjzaWctIiLYOTalaLKZ17SI44SKFW26QbOhME=
|
||||
cloud.google.com/go/compute v1.23.3 h1:6sVlXXBmbd7jNX0Ipq0trII3e4n1/MsADLK6a+aiVlk=
|
||||
cloud.google.com/go/compute v1.23.3/go.mod h1:VCgBUoMnIVIR0CscqQiPJLAG25E3ZRZMzcFZeQ+h8CI=
|
||||
cloud.google.com/go/compute/metadata v0.2.3 h1:mg4jlk7mCAj6xXp9UJ4fjI9VUI5rubuGBW5aJ7UnBMY=
|
||||
cloud.google.com/go/compute/metadata v0.2.3/go.mod h1:VAV5nSsACxMJvgaAuX6Pk2AawlZn8kiOGuCv6gTkwuA=
|
||||
github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161 h1:L/gRVlceqvL25UVaW/CKtUDjefjrs0SPonmDGUVOYP0=
|
||||
github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E=
|
||||
github.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migciow=
|
||||
github.com/Microsoft/go-winio v0.6.1/go.mod h1:LRdKpFKfdobln8UmuiYcKPot9D2v6svN5+sAH+4kjUM=
|
||||
github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5 h1:TngWCqHvy9oXAN6lEVMRuU21PR1EtLVZJmdB18Gu3Rw=
|
||||
github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5/go.mod h1:lmUJ/7eu/Q8D7ML55dXQrVaamCz2vxCfdQBasLZfHKk=
|
||||
github.com/VividCortex/gohistogram v1.0.0 h1:6+hBz+qvs0JOrrNhhmR7lFxo5sINxBCGXrdtl/UvroE=
|
||||
github.com/VividCortex/gohistogram v1.0.0/go.mod h1:Pf5mBqqDxYaXu3hDrrU+w6nw50o/4+TcAqDqk/vUH7g=
|
||||
github.com/absmach/magistrala v0.11.1-0.20231102134813-44408395e6a3 h1:g5dSaPtjj9mNnz2cMJ076MRKSnrOcMjW8BsJ7Kbzd7s=
|
||||
github.com/absmach/magistrala v0.11.1-0.20231102134813-44408395e6a3/go.mod h1:ebPpg3UNO6ier1Ic2jBHkd8VUDD62707JRacj4UwGkM=
|
||||
github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=
|
||||
github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw=
|
||||
github.com/caarlos0/env/v7 v7.1.0 h1:9lzTF5amyQeWHZzuZeKlCb5FWSUxpG1js43mhbY8ozg=
|
||||
@@ -14,6 +23,8 @@ github.com/cespare/xxhash/v2 v2.2.0 h1:DC2CZ1Ep5Y4k3ZQ899DldepgrayRUGE6BBZ/cd9Cj
|
||||
github.com/cespare/xxhash/v2 v2.2.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
|
||||
github.com/cncf/xds/go v0.0.0-20230607035331-e9ce68804cb4 h1:/inchEIKaYC1Akx+H+gqO04wryn5h75LSazbRlnya1k=
|
||||
github.com/cncf/xds/go v0.0.0-20230607035331-e9ce68804cb4/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs=
|
||||
github.com/containerd/continuity v0.4.3 h1:6HVkalIp+2u1ZLH1J/pYX2oBVXlJZvh1X1A7bEZ9Su8=
|
||||
github.com/containerd/continuity v0.4.3/go.mod h1:F6PTNCKepoxEaXLQp3wDAjygEnImnZ/7o4JzpodfroQ=
|
||||
github.com/cpuguy83/go-md2man/v2 v2.0.2/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o=
|
||||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
@@ -21,6 +32,14 @@ github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1
|
||||
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/digitalocean/go-libvirt v0.0.0-20221205150000-2939327a8519 h1:OpkN/n40cmKenDQS+IOAeW9DLhYy4DADSeZnouCEV/E=
|
||||
github.com/digitalocean/go-libvirt v0.0.0-20221205150000-2939327a8519/go.mod h1:WyJJyfmJ0gWJvjV+ZH4DOgtOYZc1KOvYyBXWCLKxsUU=
|
||||
github.com/docker/cli v24.0.7+incompatible h1:wa/nIwYFW7BVTGa7SWPVyyXU9lgORqUb1xfI36MSkFg=
|
||||
github.com/docker/cli v24.0.7+incompatible/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8=
|
||||
github.com/docker/docker v24.0.7+incompatible h1:Wo6l37AuwP3JaMnZa226lzVXGA3F9Ig1seQen0cKYlM=
|
||||
github.com/docker/docker v24.0.7+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
|
||||
github.com/docker/go-connections v0.4.0 h1:El9xVISelRB7BuFusrZozjnkIM5YnzCViNKohAFqRJQ=
|
||||
github.com/docker/go-connections v0.4.0/go.mod h1:Gbd7IOopHjR8Iph03tsViu4nIes5XhDvyHbTtUxmeec=
|
||||
github.com/docker/go-units v0.5.0 h1:69rxXcBk27SvSaaxTtLh/8llcHD8vYHT7WSdRZ/jvr4=
|
||||
github.com/docker/go-units v0.5.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk=
|
||||
github.com/envoyproxy/protoc-gen-validate v1.0.2 h1:QkIBuU5k+x7/QXPvPPnWXWlCdaBFApVqftFV6k087DA=
|
||||
github.com/envoyproxy/protoc-gen-validate v1.0.2/go.mod h1:GpiZQP3dDbg4JouG/NNS7QWXpgx6x8QiMKdmN72jogE=
|
||||
github.com/felixge/httpsnoop v1.0.3 h1:s/nj+GCswXYzN5v2DpNMuMQYe+0DDwt5WVCU6CWBdXk=
|
||||
@@ -32,31 +51,59 @@ github.com/go-kit/log v0.2.1/go.mod h1:NwTd00d/i8cPZ3xOwwiv2PO5MOcx78fFErGNcVmBj
|
||||
github.com/go-logfmt/logfmt v0.6.0 h1:wGYYu3uicYdqXVgoYbvnkrPVXkuLM1p1ifugDMEdRi4=
|
||||
github.com/go-logfmt/logfmt v0.6.0/go.mod h1:WYhtIu8zTZfxdn5+rREduYbwxfcBr/Vr6KEVveWlfTs=
|
||||
github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=
|
||||
github.com/go-logr/logr v1.2.4 h1:g01GSCwiDw2xSZfjJ2/T9M+S6pFdcNtFYsp+Y43HYDQ=
|
||||
github.com/go-logr/logr v1.2.4/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=
|
||||
github.com/go-logr/logr v1.3.0 h1:2y3SDp0ZXuc6/cjLSZ+Q3ir+QB9T/iG5yYRXqsagWSY=
|
||||
github.com/go-logr/logr v1.3.0/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
|
||||
github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag=
|
||||
github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE=
|
||||
github.com/go-zoo/bone v1.3.0 h1:PY6sHq37FnQhj+4ZyqFIzJQHvrrGx0GEc3vTZZC/OsI=
|
||||
github.com/go-zoo/bone v1.3.0/go.mod h1:HI3Lhb7G3UQcAwEhOJ2WyNcsFtQX1WYHa0Hl4OBbhW8=
|
||||
github.com/gofrs/uuid v4.4.0+incompatible h1:3qXRTX8/NbyulANqlc0lchS1gqAVxRgsuW1YrTJupqA=
|
||||
github.com/gofrs/uuid v4.4.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM=
|
||||
github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q=
|
||||
github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q=
|
||||
github.com/golang/glog v1.1.2 h1:DVjP2PbBOzHyzA+dn3WhHIq4NdVu3Q+pvivFICf/7fo=
|
||||
github.com/golang/glog v1.1.2/go.mod h1:zR+okUeTbrL6EL3xHUDxZuEtGv04p5shwip1+mL/rLQ=
|
||||
github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
|
||||
github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk=
|
||||
github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg=
|
||||
github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY=
|
||||
github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
||||
github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38=
|
||||
github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
|
||||
github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
|
||||
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
|
||||
github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 h1:El6M4kTTCOh6aBiKaUGG7oYTSPP8MxqL4YI3kZKwcP4=
|
||||
github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510/go.mod h1:pupxD2MaaD3pAXIBCelhxNneeOaAeabZDe5s4K6zSpQ=
|
||||
github.com/grpc-ecosystem/grpc-gateway/v2 v2.18.0 h1:RtRsiaGvWxcwd8y3BiRZxsylPT8hLWZ5SPcfI+3IDNk=
|
||||
github.com/grpc-ecosystem/grpc-gateway/v2 v2.18.0/go.mod h1:TzP6duP4Py2pHLVPPQp42aoYI92+PCrVotyR5e8Vqlk=
|
||||
github.com/imdario/mergo v0.3.16 h1:wwQJbIsHYGMUyLSPrEq1CT16AhnhNJQ51+4fdHUnCl4=
|
||||
github.com/imdario/mergo v0.3.16/go.mod h1:WBLT9ZmE3lPoWsEzCh9LPo3TiwVN+ZKEjmz+hD27ysY=
|
||||
github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8=
|
||||
github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw=
|
||||
github.com/mainflux/mainflux v0.0.0-20231024165949-8b185d205b6c h1:s0cZJ9ACxthpWu4XjvLhNg2Za0p3yjDDzjy+TRGVBRQ=
|
||||
github.com/mainflux/mainflux v0.0.0-20231024165949-8b185d205b6c/go.mod h1:7gFBWrgiL5rZHO5NOrqajuSzAWXsKMLL1yyz1wmC7EA=
|
||||
github.com/matttproud/golang_protobuf_extensions v1.0.4 h1:mmDVorXM7PCGKw94cs5zkfA9PSy5pEvNWRP0ET0TIVo=
|
||||
github.com/matttproud/golang_protobuf_extensions v1.0.4/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4=
|
||||
github.com/klauspost/compress v1.17.2 h1:RlWWUY/Dr4fL8qk9YG7DTZ7PDgME2V4csBXA8L/ixi4=
|
||||
github.com/klauspost/compress v1.17.2/go.mod h1:ntbaceVETuRiXiv4DpjP66DpAtAGkEQskQzEyD//IeE=
|
||||
github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
|
||||
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
|
||||
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
|
||||
github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 h1:jWpvCLoY8Z/e3VKvlsiIGKtc+UG6U5vzxaoagmhXfyg=
|
||||
github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0/go.mod h1:QUyp042oQthUoa9bqDv0ER0wrtXnBruoNd7aNjkbP+k=
|
||||
github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY=
|
||||
github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo=
|
||||
github.com/moby/term v0.5.0 h1:xt8Q1nalod/v7BqbG21f8mQPqH+xAaC9C3N3wfWbVP0=
|
||||
github.com/moby/term v0.5.0/go.mod h1:8FzsFHVUBGZdbDsJw/ot+X+d5HLUbvklYLJ9uGfcI3Y=
|
||||
github.com/nats-io/nats.go v1.31.0 h1:/WFBHEc/dOKBF6qf1TZhrdEfTmOZ5JzdJ+Y3m6Y/p7E=
|
||||
github.com/nats-io/nats.go v1.31.0/go.mod h1:di3Bm5MLsoB4Bx61CBTsxuarI36WbhAwOm8QrW39+i8=
|
||||
github.com/nats-io/nkeys v0.4.6 h1:IzVe95ru2CT6ta874rt9saQRkWfe2nFj1NtvYSLqMzY=
|
||||
github.com/nats-io/nkeys v0.4.6/go.mod h1:4DxZNzenSVd1cYQoAa8948QY3QDjrHfcfVADymtkpts=
|
||||
github.com/nats-io/nuid v1.0.1 h1:5iA8DT8V7q8WK2EScv2padNa/rTESc1KdnPw4TC2paw=
|
||||
github.com/nats-io/nuid v1.0.1/go.mod h1:19wcPz3Ph3q0Jbyiqsd0kePYG7A95tJPxeL+1OSON2c=
|
||||
github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U=
|
||||
github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM=
|
||||
github.com/opencontainers/image-spec v1.0.2 h1:9yCKha/T5XdGtO0q9Q9a6T5NUCsTn/DrBg0D7ufOcFM=
|
||||
github.com/opencontainers/image-spec v1.0.2/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0=
|
||||
github.com/opencontainers/runc v1.1.10 h1:EaL5WeO9lv9wmS6SASjszOeQdSctvpbu0DdBQBizE40=
|
||||
github.com/opencontainers/runc v1.1.10/go.mod h1:+/R6+KmDlh+hOO8NkjmgkG9Qzvypzk0yXxAPYYR65+M=
|
||||
github.com/ory/dockertest/v3 v3.10.0 h1:4K3z2VMe8Woe++invjaTB7VRyQXQy5UY+loujO4aNE4=
|
||||
github.com/ory/dockertest/v3 v3.10.0/go.mod h1:nr57ZbRWMqfsdGdFNLHz5jjNdDb7VVFnzAeW1n5N1Lg=
|
||||
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
|
||||
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
|
||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U=
|
||||
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
@@ -64,11 +111,15 @@ github.com/prometheus/client_golang v1.17.0 h1:rl2sfwZMtSthVU752MqfjQozy7blglC+1
|
||||
github.com/prometheus/client_golang v1.17.0/go.mod h1:VeL+gMmOAxkS2IqfCq0ZmHSL+LjWfWDUmp1mBz9JgUY=
|
||||
github.com/prometheus/client_model v0.5.0 h1:VQw1hfvPvk3Uv6Qf29VrPF32JB6rtbgI6cYPYQjL0Qw=
|
||||
github.com/prometheus/client_model v0.5.0/go.mod h1:dTiFglRmd66nLR9Pv9f0mZi7B7fk5Pm3gvsjB5tr+kI=
|
||||
github.com/prometheus/common v0.44.0 h1:+5BrQJwiBB9xsMygAB3TNvpQKOwlkc25LbISbrdOOfY=
|
||||
github.com/prometheus/common v0.44.0/go.mod h1:ofAIvZbQ1e/nugmZGz4/qCb9Ap1VoSTIO7x0VV9VvuY=
|
||||
github.com/prometheus/common v0.45.0 h1:2BGz0eBc2hdMDLnO/8n0jeB3oPrt2D08CekT0lneoxM=
|
||||
github.com/prometheus/common v0.45.0/go.mod h1:YJmSTw9BoKxJplESWWxlbyttQR4uaEcGyv9MZjVOJsY=
|
||||
github.com/prometheus/procfs v0.12.0 h1:jluTpSng7V9hY0O2R9DzzJHYb2xULk9VTR1V1R/k6Bo=
|
||||
github.com/prometheus/procfs v0.12.0/go.mod h1:pcuDEFsWDnvcgNzo4EEweacyhjeA9Zk3cnaOZAZEfOo=
|
||||
github.com/rabbitmq/amqp091-go v1.9.0 h1:qrQtyzB4H8BQgEuJwhmVQqVHB9O4+MNDJCCAcpc3Aoo=
|
||||
github.com/rabbitmq/amqp091-go v1.9.0/go.mod h1:+jPrT9iY2eLjRaMSRHUhc3z14E/l85kv/f+6luSD3pc=
|
||||
github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
|
||||
github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ=
|
||||
github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ=
|
||||
github.com/spf13/cobra v1.7.0 h1:hyqWnYt1ZQShIddO5kBpj3vu05/++x6tJ6dg8EC572I=
|
||||
github.com/spf13/cobra v1.7.0/go.mod h1:uLxZILRyS/50WlhOIKD7W6V5bgeIt+4sICxh6uRMrb0=
|
||||
github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA=
|
||||
@@ -81,6 +132,12 @@ github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO
|
||||
github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
|
||||
github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk=
|
||||
github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo=
|
||||
github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb h1:zGWFAtiMcyryUHoUjUJX0/lt1H2+i2Ka2n+D3DImSNo=
|
||||
github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU=
|
||||
github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 h1:EzJWgHovont7NscjpAxXsDA8S8BMYve8Y5+7cuRE7R0=
|
||||
github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415/go.mod h1:GwrjFmJcFw6At/Gs6z4yjiIwzuJ1/+UwLxMQDVQXShQ=
|
||||
github.com/xeipuuv/gojsonschema v1.2.0 h1:LhYJRs+L4fBtjZUfuSZIKGeVu0QRy8e5Xi7D17UxZ74=
|
||||
github.com/xeipuuv/gojsonschema v1.2.0/go.mod h1:anYRn/JVcOK2ZgGU+IjEV4nwlhoK5sQluxsYJ78Id3Y=
|
||||
github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
|
||||
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.45.0 h1:RsQi0qJ2imFfCvZabqzM9cNXBG8k6gXMv1A0cXRmH6A=
|
||||
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.45.0/go.mod h1:vsh3ySueQCiKPxFLvjWC4Z135gIa34TQ/NSqkDTZYUM=
|
||||
@@ -102,17 +159,22 @@ go.opentelemetry.io/otel/trace v1.19.0 h1:DFVQmlVbfVeOuBRrwdtaehRrWiL1JoVs9CPIQ1
|
||||
go.opentelemetry.io/otel/trace v1.19.0/go.mod h1:mfaSyvGyEJEI0nyV2I4qhNQnbBOUUmYZpYojqMnX2vo=
|
||||
go.opentelemetry.io/proto/otlp v1.0.0 h1:T0TX0tmXU8a3CbNXzEKGeU5mIVOdf0oykP+u2lIVU/I=
|
||||
go.opentelemetry.io/proto/otlp v1.0.0/go.mod h1:Sy6pihPLfYHkr3NkUbEhGHFhINUSI/v80hjKIs5JXpM=
|
||||
go.uber.org/goleak v1.2.1 h1:NBol2c7O1ZokfZ0LEU9K6Whx/KnwvepVetCUhtKja4A=
|
||||
go.uber.org/goleak v1.2.1/go.mod h1:qlT2yGI9QafXHhZZLxlSuNsMw3FFLxBr+tBRlmO1xH4=
|
||||
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
||||
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
|
||||
golang.org/x/crypto v0.14.0 h1:wBqGXzWJW6m1XrIKlAH0Hs1JJ7+9KBwnIO8v66Q9cHc=
|
||||
golang.org/x/crypto v0.14.0/go.mod h1:MVFd36DqK4CsrnJYDkBA3VC4m2GkXAM0PvzMCn4JQf4=
|
||||
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
|
||||
golang.org/x/mod v0.13.0 h1:I/DsJXRlw/8l/0c24sM9yb0T4z9liZTduXvdAWYiysY=
|
||||
golang.org/x/mod v0.13.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
|
||||
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
|
||||
golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
|
||||
golang.org/x/net v0.17.0 h1:pVaXccu2ozPjCXewfr1S7xza/zcXTity9cCdXQYSjIM=
|
||||
golang.org/x/net v0.17.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE=
|
||||
golang.org/x/oauth2 v0.12.0 h1:smVPGxink+n1ZI5pkQa8y6fZT0RW0MgCO5bFpepy4B4=
|
||||
golang.org/x/oauth2 v0.12.0/go.mod h1:A74bZ3aGXgCY0qaIC9Ahg6Lglin4AMAco8cIv9baba4=
|
||||
golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/oauth2 v0.13.0 h1:jDDenyj+WgFtmV3zYVoi8aE2BwtXFLWOA67ZfNWftiY=
|
||||
golang.org/x/oauth2 v0.13.0/go.mod h1:/JMhi4ZRXAf4HG9LiNmxvk+45+96RUlVThiH8FzNBn0=
|
||||
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.4.0 h1:zxkM55ReGkDlKSM+Fu41A+zmbZuaPVbGMzvvdUPznYQ=
|
||||
@@ -134,16 +196,18 @@ golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
|
||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
|
||||
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
|
||||
golang.org/x/tools v0.14.0 h1:jvNa2pY0M4r62jkRQ6RwEZZyPcymeL9XZMLBbV7U2nc=
|
||||
golang.org/x/tools v0.14.0/go.mod h1:uYBEerGOWcJyEORxN+Ek8+TT266gXkNlHdJBwexUsBg=
|
||||
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
google.golang.org/appengine v1.6.7 h1:FZR1q0exgwxzPzp/aF+VccGrSfxfPpkBqjIIEq3ru6c=
|
||||
google.golang.org/appengine v1.6.7/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc=
|
||||
google.golang.org/genproto v0.0.0-20231012201019-e917dd12ba7a h1:fwgW9j3vHirt4ObdHoYNwuO24BEZjSzbh+zPaNWoiY8=
|
||||
google.golang.org/genproto v0.0.0-20231012201019-e917dd12ba7a/go.mod h1:EMfReVxb80Dq1hhioy0sOsY9jCE46YDgHlJ7fWVUWRE=
|
||||
google.golang.org/genproto/googleapis/api v0.0.0-20231012201019-e917dd12ba7a h1:myvhA4is3vrit1a6NZCWBIwN0kNEnX21DJOJX/NvIfI=
|
||||
google.golang.org/genproto/googleapis/api v0.0.0-20231012201019-e917dd12ba7a/go.mod h1:SUBoKXbI1Efip18FClrQVGjWcyd0QZd8KkvdP34t7ww=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20231016165738-49dd2c1f3d0b h1:ZlWIi1wSK56/8hn4QcBp/j9M7Gt3U/3hZw3mC7vDICo=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20231016165738-49dd2c1f3d0b/go.mod h1:swOH3j0KzcDDgGUWr+SNpyTen5YrXjS3eyPzFYKc6lc=
|
||||
google.golang.org/genproto v0.0.0-20231030173426-d783a09b4405 h1:I6WNifs6pF9tNdSob2W24JtyxIYjzFB9qDlpUC76q+U=
|
||||
google.golang.org/genproto v0.0.0-20231030173426-d783a09b4405/go.mod h1:3WDQMjmJk36UQhjQ89emUzb1mdaHcPeeAh4SCBKznB4=
|
||||
google.golang.org/genproto/googleapis/api v0.0.0-20231030173426-d783a09b4405 h1:HJMDndgxest5n2y77fnErkM62iUsptE/H8p0dC2Huo4=
|
||||
google.golang.org/genproto/googleapis/api v0.0.0-20231030173426-d783a09b4405/go.mod h1:oT32Z4o8Zv2xPQTg0pbVaPr0MPOH6f14RgXt7zfIpwg=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20231030173426-d783a09b4405 h1:AB/lmRny7e2pLhFEYIbl5qkDAUt2h0ZRO4wGPhZf+ik=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20231030173426-d783a09b4405/go.mod h1:67X1fPuzjcrkymZzZV1vvkFeTn2Rvc6lYF9MYFGCcwE=
|
||||
google.golang.org/grpc v1.59.0 h1:Z5Iec2pjwb+LEOqzpB2MR12/eKFhDPhuqW91O+4bwUk=
|
||||
google.golang.org/grpc v1.59.0/go.mod h1:aUPDwccQo6OTjy7Hct4AfBPD1GptF4fyUjIkQ9YtF98=
|
||||
google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw=
|
||||
@@ -151,6 +215,9 @@ google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQ
|
||||
google.golang.org/protobuf v1.31.0 h1:g0LDEJHgrBl9N9r17Ru3sqWhkIx2NB67okBHPwC7hs8=
|
||||
google.golang.org/protobuf v1.31.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I=
|
||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=
|
||||
gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=
|
||||
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
|
||||
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
// Copyright (c) Ultraviolet
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
// Package jaeger contains the domain concept definitions needed to support
|
||||
// Mainflux Jaeger functionality.
|
||||
package jaeger
|
||||
|
||||
@@ -8,8 +8,8 @@ import (
|
||||
"net"
|
||||
"time"
|
||||
|
||||
"github.com/absmach/magistrala/logger"
|
||||
"github.com/digitalocean/go-libvirt"
|
||||
"github.com/mainflux/mainflux/logger"
|
||||
)
|
||||
|
||||
func Connect(logger logger.Logger) *libvirt.Libvirt {
|
||||
|
||||
@@ -8,7 +8,7 @@ import (
|
||||
"net"
|
||||
"time"
|
||||
|
||||
"github.com/mainflux/mainflux/logger"
|
||||
"github.com/absmach/magistrala/logger"
|
||||
"github.com/ultravioletrs/cocos-ai/internal/server"
|
||||
"go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc"
|
||||
"google.golang.org/grpc"
|
||||
|
||||
@@ -8,7 +8,7 @@ import (
|
||||
"net/http"
|
||||
"time"
|
||||
|
||||
"github.com/mainflux/mainflux/logger"
|
||||
"github.com/absmach/magistrala/logger"
|
||||
"github.com/ultravioletrs/cocos-ai/internal/server"
|
||||
)
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ import (
|
||||
"os/signal"
|
||||
"syscall"
|
||||
|
||||
"github.com/mainflux/mainflux/logger"
|
||||
"github.com/absmach/magistrala/logger"
|
||||
)
|
||||
|
||||
type Server interface {
|
||||
|
||||
@@ -5,10 +5,10 @@ package http
|
||||
import (
|
||||
"net/http"
|
||||
|
||||
"github.com/mainflux/mainflux"
|
||||
"github.com/absmach/magistrala"
|
||||
)
|
||||
|
||||
var _ mainflux.Response = (*runRes)(nil)
|
||||
var _ magistrala.Response = (*runRes)(nil)
|
||||
|
||||
type runRes struct {
|
||||
ID string `json:"id"`
|
||||
|
||||
@@ -10,9 +10,9 @@ import (
|
||||
"net/http"
|
||||
"strings"
|
||||
|
||||
"github.com/absmach/magistrala"
|
||||
kithttp "github.com/go-kit/kit/transport/http"
|
||||
"github.com/go-zoo/bone"
|
||||
"github.com/mainflux/mainflux"
|
||||
"github.com/prometheus/client_golang/prometheus/promhttp"
|
||||
"github.com/ultravioletrs/cocos-ai/manager"
|
||||
"go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp"
|
||||
@@ -40,7 +40,7 @@ func MakeHandler(svc manager.Service, instanceID string) http.Handler {
|
||||
opts...,
|
||||
), "run"))
|
||||
|
||||
r.GetFunc("/health", mainflux.Health("manager", instanceID))
|
||||
r.GetFunc("/health", magistrala.Health("manager", instanceID))
|
||||
r.Handle("/metrics", promhttp.Handler())
|
||||
|
||||
return r
|
||||
@@ -62,7 +62,7 @@ func decodeRun(_ context.Context, r *http.Request) (interface{}, error) {
|
||||
func encodeResponse(_ context.Context, w http.ResponseWriter, response interface{}) error {
|
||||
w.Header().Set("Content-Type", contentType)
|
||||
|
||||
if ar, ok := response.(mainflux.Response); ok {
|
||||
if ar, ok := response.(magistrala.Response); ok {
|
||||
for k, v := range ar.Headers() {
|
||||
w.Header().Set(k, v)
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ import (
|
||||
"fmt"
|
||||
"time"
|
||||
|
||||
log "github.com/mainflux/mainflux/logger"
|
||||
log "github.com/absmach/magistrala/logger"
|
||||
"github.com/ultravioletrs/cocos-ai/manager"
|
||||
)
|
||||
|
||||
|
||||
@@ -1,7 +1,4 @@
|
||||
// Copyright (c) Ultraviolet
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
// Package things contains the domain concept definitions needed to support
|
||||
// Mainflux manager service functionality.
|
||||
|
||||
package manager
|
||||
|
||||
@@ -0,0 +1,58 @@
|
||||
// Copyright (c) Ultraviolet
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
package manager
|
||||
|
||||
import (
|
||||
"context"
|
||||
"errors"
|
||||
|
||||
"github.com/absmach/magistrala/logger"
|
||||
"github.com/absmach/magistrala/pkg/messaging"
|
||||
)
|
||||
|
||||
const agentTopic = "channels.agent.>"
|
||||
|
||||
var errUnexpectedEvent = errors.New("unexpected event from agent")
|
||||
|
||||
func NewAgentEventNotifier(ctx context.Context, pubsub messaging.PubSub, logger logger.Logger) error {
|
||||
if err := pubsub.Subscribe(ctx, messaging.SubscriberConfig{
|
||||
ID: "manager",
|
||||
Topic: agentTopic,
|
||||
DeliveryPolicy: messaging.DeliverAllPolicy,
|
||||
Handler: &eventHandler{logger: logger},
|
||||
}); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
type eventHandler struct {
|
||||
logger logger.Logger
|
||||
}
|
||||
|
||||
func (ev *eventHandler) Handle(msg *messaging.Message) error {
|
||||
switch msg.Subtopic {
|
||||
case "idle":
|
||||
ev.logger.Info("agent is running and idle")
|
||||
case "run":
|
||||
ev.logger.Info("agent is ready to receive computation manifest")
|
||||
case "algorithms":
|
||||
ev.logger.Info("agent is ready to receive algorithms")
|
||||
case "datasets":
|
||||
ev.logger.Info("agent is ready to receive datasets")
|
||||
case "results":
|
||||
ev.logger.Info("agent computation results are ready")
|
||||
case "running":
|
||||
ev.logger.Info("agent computation is running")
|
||||
case "complete":
|
||||
ev.logger.Info("agent computation results have been consumed")
|
||||
default:
|
||||
ev.logger.Error("unexpected event from agent")
|
||||
return errUnexpectedEvent
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (*eventHandler) Cancel() error {
|
||||
return nil
|
||||
}
|
||||
@@ -6,7 +6,4 @@
|
||||
// This package provides tracing middleware for cocos auth service.
|
||||
// It can be used to trace incoming requests and add tracing capabilities to
|
||||
// cocos auth service.
|
||||
//
|
||||
// For more details about tracing instrumentation refer
|
||||
// to the documentation at https://docs.mainflux.io/tracing/.
|
||||
package tracing
|
||||
|
||||
@@ -5,7 +5,7 @@ package grpc
|
||||
import (
|
||||
"time"
|
||||
|
||||
"github.com/mainflux/mainflux/pkg/errors"
|
||||
"github.com/absmach/magistrala/pkg/errors"
|
||||
"go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc"
|
||||
gogrpc "google.golang.org/grpc"
|
||||
"google.golang.org/grpc/credentials"
|
||||
|
||||
+1
-1
@@ -6,7 +6,7 @@ import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
|
||||
"github.com/mainflux/mainflux/logger"
|
||||
"github.com/absmach/magistrala/logger"
|
||||
"github.com/ultravioletrs/cocos-ai/agent"
|
||||
)
|
||||
|
||||
|
||||
@@ -1,337 +0,0 @@
|
||||
mode: atomic
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:34.30,36.29 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:36.29,40.3 3 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:43.38,45.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:47.36,47.37 0 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:49.58,51.41 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:51.41,53.34 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:53.34,55.4 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:56.3,56.12 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:58.2,58.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:62.49,64.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:66.46,67.14 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:67.14,69.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:70.2,70.12 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:81.31,83.29 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:83.29,87.3 3 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:90.39,92.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:94.37,94.38 0 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:96.59,98.41 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:98.41,100.34 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:100.34,102.4 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:103.3,103.12 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:105.2,105.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:109.50,111.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:113.47,114.14 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:114.14,116.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:117.2,117.11 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:129.31,131.29 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:131.29,135.3 3 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:138.39,140.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:142.37,142.38 0 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:144.59,146.41 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:146.41,148.34 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:148.34,150.4 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:151.3,151.12 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:153.2,153.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:157.50,159.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:161.45,162.14 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:162.14,164.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:165.2,165.12 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:168.44,169.14 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:169.14,171.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:172.2,172.11 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:183.32,185.29 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:185.29,189.3 3 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:192.40,194.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:196.38,196.39 0 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:198.60,200.41 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:200.41,202.34 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:202.34,204.4 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:205.3,205.12 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:207.2,207.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:211.51,213.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:215.48,216.14 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:216.14,218.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:219.2,219.11 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:231.31,233.29 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:233.29,237.3 3 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:240.39,242.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:244.37,244.38 0 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:246.59,248.41 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:248.41,250.34 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:250.34,252.4 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:253.3,253.12 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:255.2,255.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:259.50,261.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:263.43,264.14 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:264.14,266.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:267.2,267.12 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:270.44,271.14 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:271.14,273.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:274.2,274.11 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:285.32,287.29 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:287.29,291.3 3 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:294.40,296.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:298.38,298.39 0 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:300.60,302.41 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:302.41,304.34 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:304.34,306.4 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:307.3,307.12 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:309.2,309.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:313.51,315.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:317.46,318.14 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:318.14,320.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:321.2,321.11 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:332.33,334.29 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:334.29,338.3 3 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:341.41,343.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:345.39,345.40 0 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:347.61,349.41 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:349.41,351.34 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:351.34,353.4 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:354.3,354.12 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:356.2,356.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:360.52,362.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:364.46,365.14 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:365.14,367.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:368.2,368.11 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:379.34,381.29 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:381.29,385.3 3 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:388.42,390.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:392.40,392.41 0 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:394.62,396.41 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:396.41,398.34 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:398.34,400.4 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:401.3,401.12 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:403.2,403.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:407.53,409.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:411.43,412.14 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:412.14,414.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:415.2,415.12 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:424.38,426.29 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:426.29,430.3 3 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:433.46,435.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:437.44,437.45 0 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:439.66,441.41 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:441.41,443.34 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:443.34,445.4 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:446.3,446.12 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:448.2,448.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:452.57,454.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:464.39,466.29 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:466.29,470.3 3 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:473.47,475.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:477.45,477.46 0 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:479.67,481.41 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:481.41,483.34 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:483.34,485.4 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:486.3,486.12 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:488.2,488.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:492.58,494.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:496.48,497.14 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:497.14,499.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:500.2,500.12 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:565.50,566.47 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:566.47,568.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:569.2,569.43 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:603.13,603.46 1 1
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:604.36,605.35 1 1
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:605.35,607.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:608.2,608.30 1 1
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:608.30,609.88 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:609.88,610.35 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:611.11,612.20 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:613.11,614.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:615.11,616.28 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:617.12,618.15 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:621.3,621.88 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:621.88,622.36 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:623.11,624.20 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:625.11,626.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:627.11,628.28 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:629.12,630.15 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:633.3,633.88 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:633.88,634.36 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:635.11,636.20 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:637.11,638.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:639.11,640.28 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:641.12,642.15 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:645.3,645.88 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:645.88,646.37 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:647.11,648.20 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:649.11,650.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:651.11,652.28 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:653.12,654.15 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:657.3,657.88 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:657.88,658.36 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:659.11,660.20 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:661.11,662.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:663.11,664.28 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:665.12,666.15 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:669.3,669.88 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:669.88,670.37 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:671.11,672.20 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:673.11,674.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:675.11,676.28 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:677.12,678.15 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:681.3,681.88 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:681.88,682.38 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:683.11,684.20 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:685.11,686.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:687.11,688.28 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:689.12,690.15 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:693.3,693.88 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:693.88,694.39 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:695.11,696.20 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:697.11,698.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:699.11,700.28 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:701.12,702.15 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:705.3,705.88 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:705.88,706.43 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:707.11,708.20 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:709.11,710.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:711.11,712.28 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:713.12,714.15 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:717.3,717.88 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:717.88,718.44 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:719.11,720.20 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:721.11,722.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:723.11,724.28 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:725.12,726.15 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent.pb.go:730.2,747.38 6 1
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:47.76,49.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:51.118,54.16 3 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:54.16,56.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:57.2,57.17 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:60.121,63.16 3 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:63.16,65.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:66.2,66.17 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:69.121,72.16 3 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:72.16,74.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:75.2,75.17 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:78.127,81.16 3 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:81.16,83.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:84.2,84.17 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:87.142,90.16 3 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:90.16,92.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:93.2,93.17 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:112.96,114.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:115.99,117.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:118.99,120.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:121.105,123.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:124.120,126.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:127.84,127.85 0 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:136.82,138.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:140.161,142.32 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:142.32,144.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:145.2,145.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:145.24,147.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:148.2,152.77 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:152.77,154.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:155.2,155.44 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:158.162,160.32 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:160.32,162.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:163.2,163.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:163.24,165.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:166.2,170.77 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:170.77,172.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:173.2,173.44 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:176.162,178.32 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:178.32,180.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:181.2,181.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:181.24,183.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:184.2,188.77 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:188.77,190.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:191.2,191.44 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:194.164,196.32 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:196.32,198.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:199.2,199.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:199.24,201.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:202.2,206.77 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:206.77,208.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:209.2,209.44 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:212.169,214.32 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:214.32,216.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:217.2,217.24 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:217.24,219.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:220.2,224.77 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:224.77,226.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/agent_grpc.pb.go:227.2,227.44 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/computations.go:37.51,39.39 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/computations.go:39.39,42.18 3 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/computations.go:42.18,43.27 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/computations.go:43.27,45.5 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/computations.go:48.2,48.11 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:73.61,81.2 5 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:83.83,85.16 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:85.16,87.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:89.2,96.21 5 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:99.88,100.41 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:100.41,102.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:103.2,104.15 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:105.10,106.36 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:107.10,108.70 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:108.70,110.4 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:111.3,111.87 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:114.2,116.41 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:116.41,118.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:121.2,125.27 3 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:128.84,129.39 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:129.39,131.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:132.2,133.15 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:134.10,135.34 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:136.10,137.66 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:137.66,139.4 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:140.3,140.83 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:143.2,145.39 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:145.39,147.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:150.2,154.25 3 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:157.86,158.46 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:158.46,160.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:161.2,162.15 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:163.10,164.41 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:165.10,166.97 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:169.2,169.33 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:169.33,171.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:173.2,173.46 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:173.46,175.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:177.2,177.31 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:180.74,182.2 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:184.42,187.16 3 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:187.16,190.3 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:191.2,191.20 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:194.66,196.16 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:196.16,198.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:199.2,211.36 8 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:211.36,213.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:215.2,216.9 2 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:217.30,217.30 0 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:218.28,219.58 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:222.2,222.35 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:222.35,224.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/service.go:226.2,226.20 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/state.go:47.58,75.2 14 7
|
||||
github.com/ultravioletrs/cocos-ai/agent/state.go:78.52,79.6 1 7
|
||||
github.com/ultravioletrs/cocos-ai/agent/state.go:79.6,80.10 1 24
|
||||
github.com/ultravioletrs/cocos-ai/agent/state.go:81.32,83.13 2 17
|
||||
github.com/ultravioletrs/cocos-ai/agent/state.go:83.13,88.5 4 6
|
||||
github.com/ultravioletrs/cocos-ai/agent/state.go:88.10,90.5 1 11
|
||||
github.com/ultravioletrs/cocos-ai/agent/state.go:92.4,93.14 2 17
|
||||
github.com/ultravioletrs/cocos-ai/agent/state.go:93.14,95.5 1 0
|
||||
github.com/ultravioletrs/cocos-ai/agent/state.go:96.21,97.10 1 7
|
||||
github.com/ultravioletrs/cocos-ai/agent/state.go:103.48,105.2 1 7
|
||||
github.com/ultravioletrs/cocos-ai/agent/state.go:107.42,112.2 4 6
|
||||
github.com/ultravioletrs/cocos-ai/pkg/socket/socket.go:12.69,18.16 3 0
|
||||
github.com/ultravioletrs/cocos-ai/pkg/socket/socket.go:18.16,20.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/pkg/socket/socket.go:22.2,24.22 2 0
|
||||
github.com/ultravioletrs/cocos-ai/pkg/socket/socket.go:27.96,29.16 2 0
|
||||
github.com/ultravioletrs/cocos-ai/pkg/socket/socket.go:29.16,31.3 1 0
|
||||
github.com/ultravioletrs/cocos-ai/pkg/socket/socket.go:33.2,33.51 1 0
|
||||
github.com/ultravioletrs/cocos-ai/pkg/socket/socket.go:36.88,43.6 4 0
|
||||
github.com/ultravioletrs/cocos-ai/pkg/socket/socket.go:43.6,46.17 2 0
|
||||
github.com/ultravioletrs/cocos-ai/pkg/socket/socket.go:46.17,47.21 1 0
|
||||
github.com/ultravioletrs/cocos-ai/pkg/socket/socket.go:47.21,48.10 1 0
|
||||
github.com/ultravioletrs/cocos-ai/pkg/socket/socket.go:50.4,50.23 1 0
|
||||
github.com/ultravioletrs/cocos-ai/pkg/socket/socket.go:52.3,52.38 1 0
|
||||
github.com/ultravioletrs/cocos-ai/pkg/socket/socket.go:55.2,55.23 1 0
|
||||
Reference in New Issue
Block a user