Commit Graph

55 Commits

Author SHA1 Message Date
Neuron CI abf3453d8d ci(neuron-prod): deploy neuron@v0.10.0 2026-04-25 04:53:36 +00:00
Will Anderson 1a9dd13b0a Fix neuron-mcp OTLP endpoint: alloy → alloy-otlp service
The `alloy` ClusterIP service only exposes port 12345 (UI/metrics).
OTLP HTTP ingestion on port 4318 is on the separate `alloy-otlp` service.
Pointing OTEL_EXPORTER_OTLP_ENDPOINT at `alloy:4318` caused continuous
SocketTimeoutException in neuron-mcp. Updated both blue and green deployments.
2026-04-24 23:36:48 -05:00
Neuron CI c9ffa55863 ci(neuron-prod): deploy neuron@v0.9.1 2026-04-25 03:35:33 +00:00
Will Anderson 1d527a9365 chore(neuron-prod): add green deployment to kustomization
Green manifest was committed but missing from kustomization.yaml so Argo CD
never created the resource. Wires it in so the blue/green slot swap can work.
2026-04-24 22:22:20 -05:00
Neuron CI 67de9ac463 ci(neuron-prod): deploy neuron@v0.9.0 2026-04-25 03:17:56 +00:00
Will Anderson f86ee04467 fix(neuron-mcp): blue/green deployment, memory limits, preStop drain hook
- Rename Deployment to neuron-mcp-blue with slot=blue label
- Add neuron-mcp-green Deployment scaffold (replicas=0, ready to receive new image)
- Service selector now routes by slot label; annotation tracks active slot
- Memory: 768Mi → 1536Mi limit, 256Mi → 512Mi request (fixes OOM pod restarts / 502s)
- Add JAVA_TOOL_OPTIONS: container-aware GC + ExitOnOutOfMemoryError
- Add preStop sleep 8s so Traefik drains in-flight connections before pod terminates
- terminationGracePeriodSeconds: 30
- Add scripts/blue-green-deploy.sh: automated slot-swap with health check and rollback
2026-04-24 22:08:12 -05:00
Neuron CI b411f2a7b0 ci(neuron-prod): deploy neuron@v0.8.3 2026-04-25 01:35:26 +00:00
Neuron CI 719c66ea82 ci(neuron-prod): deploy neuron@v0.8.2 2026-04-25 01:13:52 +00:00
Neuron CI 6160e8e6b8 ci(neuron-prod): deploy neuron@v0.8.1 2026-04-25 00:57:54 +00:00
Neuron CI af8a178b8c ci(neuron-prod): deploy neuron@v0.8.0 2026-04-25 00:36:02 +00:00
Neuron CI cc489e4047 ci(neuron-prod): deploy neuron@v0.7.7 2026-04-25 00:22:52 +00:00
Will Anderson 0e590df537 fix(neuron-prod): reduce mcp memory request to unblock scheduling 2026-04-24 18:27:18 -05:00
Neuron CI 851e64a561 ci(neuron-prod): deploy neuron@v0.7.6 2026-04-24 23:22:38 +00:00
Neuron CI cf6f390756 ci(neuron-prod): deploy neuron@v0.7.5 2026-04-24 22:26:03 +00:00
Neuron CI 2befcc088a ci(neuron-prod): deploy neuron@v0.7.4 2026-04-24 22:07:54 +00:00
Neuron CI b36de8190e ci(neuron-prod): deploy neuron@v0.7.3 2026-04-24 21:59:07 +00:00
Neuron CI 060995e762 ci(neuron-prod): deploy neuron@v0.7.2 2026-04-24 21:26:01 +00:00
Neuron CI 2a0011c479 ci(neuron-prod): deploy neuron@v0.7.1 2026-04-24 20:57:42 +00:00
Will Anderson 1e5a02f5d0 debug: add Spring Security DEBUG logging to license service 2026-04-24 15:42:09 -05:00
Will Anderson fe17d020ef fix(k8s): use Recreate strategy for neuron-mcp deployments
Single-node k3s cluster cannot schedule a second pod during rolling update
(512Mi request × 2 exceeds available memory). Recreate terminates the old
pod before starting the new one, trading brief downtime for schedulability.
2026-04-24 15:19:10 -05:00
Will Anderson 95b4669839 feat(neuron-prod): add IngressRoute for license API at /api/v1/* paths 2026-04-24 15:12:37 -05:00
Will Anderson 02db9c3d43 feat(observability): wire OpenTelemetry into MCP backend and marketing site
- Add OTEL_EXPORTER_OTLP_ENDPOINT env var to prod and stage MCP deployments pointing at Alloy in-cluster
- Add Neuron Platform Overview Grafana dashboard (request rate, latency percentiles, error rate, memory nodes, HTTP status distribution)
- Allow grafana/dashboards/*.json through .gitignore (was blocked by secrets rule)
2026-04-24 14:21:34 -05:00
Neuron CI 477af9b673 ci(neuron-prod): deploy neuron@v0.7.0 2026-04-24 18:32:40 +00:00
Will Anderson 0bb18cedac Route /connect to neuron-mcp for OAuth dynamic client registration 2026-04-24 13:16:36 -05:00
Will Anderson 0f9448e8ea deploy neuron marketing site to neurontechnologies.ai
Add marketing/ manifests (Deployment, Service, ExternalSecret) for the
Next.js marketing site in neuron-prod namespace, an Argo CD app pointing
to the new path, and update the prod ingress to serve / from neuron-marketing
instead of neuron-rest.
2026-04-24 13:09:29 -05:00
Will Anderson ebe4789935 Route /.well-known, /oauth2, /login, /sse, /message to neuron-mcp
OAuth discovery endpoints (/.well-known/oauth-protected-resource and
/.well-known/oauth-authorization-server) and the authorization server
paths (/oauth2/*, /login) were routing to neuron-rest, which has none
of those endpoints. MCP also uses /sse and /message directly.

All five path prefixes now route to neuron-mcp on port 8080.
2026-04-24 13:00:56 -05:00
Neuron CI befbc006be ci(neuron-prod): deploy neuron@v0.6.1 2026-04-24 17:35:59 +00:00
Neuron CI 5eb18b6e7c ci(neuron-prod): deploy neuron@v0.6.0 2026-04-24 17:20:57 +00:00
Will Anderson 0858844c25 neuron-prod: add NEURON_API_KEY to ExternalSecret from Vault 2026-04-24 12:07:08 -05:00
Neuron CI fb17a37bea ci(neuron-prod): deploy neuron@v0.5.0 2026-04-24 15:42:48 +00:00
Neuron CI 6f349a21b9 ci(neuron-prod): deploy neuron@v0.4.4 2026-04-24 12:44:46 +00:00
Neuron CI 8e27d7e069 ci(neuron-prod): deploy neuron@v0.4.3 2026-04-24 12:05:43 +00:00
Neuron CI 5f99d10839 ci(neuron-prod): deploy neuron@v0.4.2 2026-04-24 11:47:42 +00:00
Neuron CI ec2ee48ae5 ci(neuron-prod): deploy neuron@v0.4.1 2026-04-24 11:42:27 +00:00
Neuron CI 0f77faea81 ci(neuron-prod): deploy neuron@v0.4.0 2026-04-24 10:22:56 +00:00
Will Anderson add9d92fd0 chore(neuron-prod): restart pods to pick up NEURON_DATA_DIR configmap change 2026-04-24 04:57:11 -05:00
Will Anderson b5e8ea9111 fix(neuron-prod): set NEURON_DATA_DIR to point app to PVC database
NeuronModule reads NEURON_DATA_DIR to construct the DB path as
$NEURON_DATA_DIR/neuron.db. Without this env var the app falls
back to a temp file, losing all data on pod restart. Also renamed
the PVC file from neuron-prod.db to neuron.db to match.
2026-04-24 04:56:29 -05:00
Will Anderson 883c4afd50 ci(neuron-prod): restart mcp and rest pods to reload DB state 2026-04-24 04:47:33 -05:00
Neuron CI 87d11aa87c ci(neuron-prod): deploy neuron@v0.3.2 2026-04-24 09:21:57 +00:00
Neuron CI 129dd0d606 ci(neuron-prod): deploy neuron@v0.3.1 2026-04-24 08:58:38 +00:00
Will Anderson 9bf99bdd8e fix(neuron-prod): add PVC and volume mount for neuron-license SQLite data
The license server writes its database to /data/neuron-license.db.
The deployment had no volume, causing CrashLoopBackOff on first start.
2026-04-24 03:13:56 -05:00
Neuron CI d66062b4cc ci(neuron-prod): deploy neuron@v0.3.0 2026-04-24 08:12:04 +00:00
Neuron CI 7a47e0cbf9 ci(neuron-prod): deploy neuron@v0.2.0 2026-04-24 08:04:37 +00:00
Will Anderson 59aa0f0dfb deploy neuron-license service to prod
Adds license deployment, service, ingress route (/license), and
Unkey + admin token secrets via ExternalSecret. Image built and
pushed by CI on merge of neuron PR #30.
2026-04-24 01:42:07 -05:00
Neuron CI 3e28dd88eb ci(neuron-prod): deploy neuron@v0.0.15 2026-04-24 05:45:09 +00:00
Neuron CI 97973ba6be ci(neuron-prod): deploy neuron@v0.0.14 2026-04-24 05:35:02 +00:00
Neuron CI c3f2ecc9a9 ci(neuron-prod): deploy neuron@v0.0.13 2026-04-24 05:16:25 +00:00
Neuron CI b9e1c94b36 ci(neuron-prod): deploy neuron@v0.0.11 2026-04-24 04:53:51 +00:00
Neuron CI 69c2f1d2f9 ci(neuron-prod): deploy neuron@v0.0.8 2026-04-24 04:23:02 +00:00
Neuron CI 0b23a5e964 ci(neuron-prod): deploy neuron@v0.0.7 2026-04-24 04:14:10 +00:00