From 3ddc0c50a678963b776f3f196b5c16c40e96fa99 Mon Sep 17 00:00:00 2001 From: Chris Christiansen Date: Sat, 19 Sep 2026 00:42:40 +0000 Subject: [PATCH] chore(platform): configure OSVX MCP endpoint --- .gcloudignore | 11 ++++++++--- agents/mcp_server/cloudbuild.yaml | 2 +- agents/tools/a2h2a_client.py | 6 ++++-- emma/emma_opax.py | 7 +++++-- 4 files changed, 18 insertions(+), 8 deletions(-) diff --git a/.gcloudignore b/.gcloudignore index 2122f2a..c82a963 100644 --- a/.gcloudignore +++ b/.gcloudignore @@ -1,6 +1,11 @@ -# This file overrides .gitignore for gcloud commands. -# We want to ignore most .json files (like service accounts), but not our test payload. +# Keep Cloud Build uploads aligned with repository exclusions. +#!include:.gitignore + +# Never upload local JSON credentials; retain the intentional test payload. +*.json !a2h2a-test-payload.json -# Ignore the Spire directory to avoid permission errors during source upload. +# Local build/runtime directories. +node_modules/ +.git/ spire-1.15.3/ diff --git a/agents/mcp_server/cloudbuild.yaml b/agents/mcp_server/cloudbuild.yaml index b5bdec9..4819c97 100644 --- a/agents/mcp_server/cloudbuild.yaml +++ b/agents/mcp_server/cloudbuild.yaml @@ -44,7 +44,7 @@ steps: --platform=managed \ --no-allow-unauthenticated \ --service-account=jason-vauger@$PROJECT_ID.iam.gserviceaccount.com \ - --set-env-vars=GOOGLE_CLOUD_PROJECT=$PROJECT_ID,STATIC_BUCKET=opax-vauco-static,CLOUD_RUN_SERVICE=osvauco-agent,CLOUD_BUILD_TRIGGER_ID=${_OSVAUCO_TRIGGER_ID},OPAX_IAP_CLIENT_ID=357036551735-kq8nt7ld38hfqlcfb3n52ef7tala4meo.apps.googleusercontent.com \ + --set-env-vars=OSVX_MCP_URL=https://osvx-mcp-zjbqp3prqq-uc.a.run.app,GOOGLE_CLOUD_PROJECT=$PROJECT_ID,STATIC_BUCKET=opax-vauco-static,CLOUD_RUN_SERVICE=osvauco-agent,CLOUD_BUILD_TRIGGER_ID=${_OSVAUCO_TRIGGER_ID},OPAX_IAP_CLIENT_ID=357036551735-kq8nt7ld38hfqlcfb3n52ef7tala4meo.apps.googleusercontent.com \ --update-secrets=MCP_SECRET=mcp-server-key:latest,GITEA_TOKEN=gitea-token:latest,GITHUB_PAT=github-pat:latest \ --memory=512Mi \ --cpu=1 \ diff --git a/agents/tools/a2h2a_client.py b/agents/tools/a2h2a_client.py index da030f0..1053a2f 100644 --- a/agents/tools/a2h2a_client.py +++ b/agents/tools/a2h2a_client.py @@ -8,7 +8,7 @@ import os from datetime import datetime from typing import Dict, List, Optional -OPAX_BASE_URL = os.getenv('OPAX_BASE_URL', 'https://opax.vauco.no') +OSVX_MCP_URL = os.getenv('OSVX_MCP_URL') MCP_SECRET = os.getenv('MCP_SECRET') # MCP Tool Registry - alle tools som krever A2H2A @@ -47,7 +47,9 @@ A2H2A_TOOLS = { class A2H2AClient: def __init__(self): - self.base_url = OPAX_BASE_URL + if not OSVX_MCP_URL: + raise ValueError("OSVX_MCP_URL environment variable not set.") + self.base_url = OSVX_MCP_URL self.headers = { 'X-MCP-Secret': MCP_SECRET, 'Content-Type': 'application/json' diff --git a/emma/emma_opax.py b/emma/emma_opax.py index 33eefe5..13d8ae6 100644 --- a/emma/emma_opax.py +++ b/emma/emma_opax.py @@ -22,8 +22,11 @@ class OpaxClient: Guardrail-sjekk kjøres automatisk før hvert kall. """ - def __init__(self, base_url: str = "https://opax.vauco.no", guardrails=None): - self.base_url = base_url.rstrip("/") + def __init__(self, guardrails=None): + OSVX_MCP_URL = os.getenv('OSVX_MCP_URL') + if not OSVX_MCP_URL: + raise ValueError("OSVX_MCP_URL environment variable not set.") + self.base_url = OSVX_MCP_URL.rstrip("/") self.guardrails = guardrails self._token: str = ""