apiVersion: v1 kind: Secret metadata: name: api-gateway-config namespace: api labels: app: api-gateway type: Opaque stringData: config.yaml: | auth: enabled: true issuer: "https://authentik.riotpiao.com/application/o/api-gw/" audience: "api-gw" jwksUrl: "http://authentik-server.iam.svc.cluster.local/application/o/api-gw/jwks/" requiredCapability: "llm:inference" routes: [] models: - name: "reasoning" address: "reasoning-predictor.llm-serving:80" path: "/v1/chat/completions" - name: "ornith:35b" address: "ornith-predictor.llm-serving:80" path: "/v1/chat/completions" - name: "qwen2.5:3b-instruct" address: "ornith-predictor.llm-serving:80" path: "/v1/chat/completions" - name: "nomic-ai/nomic-embed-text-v2-moe" address: "embeddings-predictor.llm-serving:80" path: "/v1/embeddings" - name: "BAAI/bge-reranker-base" address: "reranker-predictor.llm-serving:80" path: "/v1/rerank" adapters: - serviceName: sqs upstream: url: http://management-service.sqs.svc.cluster.local:9090 timeoutSeconds: 30 auth: required: true resources: - name: send-message methods: - verb: POST upstreamPath: /sqs/send - name: receive-message methods: - verb: POST upstreamPath: /sqs/receive - name: list-queues methods: - verb: GET upstreamPath: /sqs/queues - serviceName: workflow upstream: url: grpc://temporal-frontend.temporal.svc.cluster.local:7233 timeoutSeconds: 60 auth: required: false resources: - name: execute methods: - verb: POST upstreamPath: /temporal.api.workflowservice.v1.WorkflowService/ExecuteWorkflow - name: describe methods: - verb: GET upstreamPath: /temporal.api.workflowservice.v1.WorkflowService/DescribeWorkflowExecution - name: list methods: - verb: GET upstreamPath: /temporal.api.workflowservice.v1.WorkflowService/ListWorkflowExecutions - serviceName: memory upstream: url: http://poimen-memory.poimen.svc.cluster.local:8080 timeoutSeconds: 30 auth: required: false resources: - name: query methods: - verb: POST upstreamPath: /memory/query - name: ingest methods: - verb: POST upstreamPath: /memory/ingest - name: skills methods: - verb: GET upstreamPath: /memory/skills - serviceName: s3 upstream: url: http://minio.storage.svc.cluster.local:9000 timeoutSeconds: 30 auth: required: false resources: - name: list-objects methods: - verb: GET upstreamPath: / - name: get-object methods: - verb: GET upstreamPath: / - name: put-object methods: - verb: PUT upstreamPath: / - serviceName: iam upstream: url: http://authentik-server.iam.svc.cluster.local:80 timeoutSeconds: 30 auth: required: false resources: - name: list-roles methods: - verb: GET upstreamPath: /api/v3/roles - name: list-users methods: - verb: GET upstreamPath: /api/v3/users - name: create-role methods: - verb: POST upstreamPath: /api/v3/roles