Loading deploy/component.sh +8 −0 Viewed Changes for deploy/component.sh: 8 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -161,6 +161,14 @@ for COMPONENT in $TFS_COMPONENTS; do echo " Deploying '$COMPONENT' component to Kubernetes..." DEPLOY_LOG="$TMP_LOGS_FOLDER/deploy_${COMPONENT}.log" if [ "$COMPONENT" == "agentic" ]; then kubectl --namespace $TFS_K8S_NAMESPACE delete ingress \ tfs-ingress-agentic --ignore-not-found >> "$DEPLOY_LOG" kubectl --namespace $TFS_K8S_NAMESPACE delete ingress \ tfs-ingress-agentic-api --ignore-not-found >> "$DEPLOY_LOG" kubectl --namespace $TFS_K8S_NAMESPACE delete ingress \ tfs-ingress-agentic-web --ignore-not-found >> "$DEPLOY_LOG" fi kubectl --namespace $TFS_K8S_NAMESPACE delete -f "$MANIFEST" > "$DEPLOY_LOG" kubectl --namespace $TFS_K8S_NAMESPACE apply -f "$MANIFEST" > "$DEPLOY_LOG" COMPONENT_OBJNAME=$(echo "${COMPONENT}" | sed "s/\_/-/") Loading deploy/tfs.sh +16 −0 Viewed Changes for deploy/tfs.sh: 16 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -340,12 +340,28 @@ for COMPONENT in $TFS_COMPONENTS; do sed -E -i "s#image: $GITLAB_REPO_URL/$COMPONENT:${VERSION}#image: $IMAGE_URL#g" "$MANIFEST" fi if [ "$COMPONENT" == "webui" ] && [[ "$TFS_COMPONENTS" == *"agentic"* ]]; then sed -E -i '/value: "\/webui\/"/ a\ - name: AGENTICSERVICE_SERVICE_HOST\ value: "agenticservice"\ - name: AGENTICSERVICE_SERVICE_PORT_HTTP\ value: "8000"' "$MANIFEST" fi sed -E -i "s#imagePullPolicy: .*#imagePullPolicy: Always#g" "$MANIFEST" # TODO: harmonize names of the monitoring component echo " Deploying '$COMPONENT' component to Kubernetes..." DEPLOY_LOG="$TMP_LOGS_FOLDER/deploy_${COMPONENT}.log" if [ "$COMPONENT" == "agentic" ]; then kubectl --namespace $TFS_K8S_NAMESPACE delete ingress \ tfs-ingress-agentic --ignore-not-found > "$DEPLOY_LOG" kubectl --namespace $TFS_K8S_NAMESPACE delete ingress \ tfs-ingress-agentic-api --ignore-not-found >> "$DEPLOY_LOG" kubectl --namespace $TFS_K8S_NAMESPACE delete ingress \ tfs-ingress-agentic-web --ignore-not-found >> "$DEPLOY_LOG" fi kubectl --namespace $TFS_K8S_NAMESPACE apply -f "$MANIFEST" > "$DEPLOY_LOG" COMPONENT_OBJNAME=$(echo "${COMPONENT}" | sed "s/\_/-/g") #kubectl --namespace $TFS_K8S_NAMESPACE scale deployment --replicas=0 ${COMPONENT_OBJNAME}service >> "$DEPLOY_LOG" Loading manifests/agenticservice.yaml +20 −9 Viewed Changes for manifests/agenticservice.yaml: 20 added lines, 9 removed lines. Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ metadata: data: ADK_MODEL: "openai/gpt-4.1-mini" ADK_AGENT_GRAPH: "single" ADK_HTTP_ROOT_PATH: "/agentic" ADK_DOMAIN_ID: "A" ADK_DOMAIN_NAME: "domain-a" ADK_PEERS: "" Loading Loading @@ -58,6 +59,8 @@ kind: Deployment metadata: name: agenticservice spec: strategy: type: Recreate selector: matchLabels: app: agenticservice Loading @@ -72,8 +75,14 @@ spec: - name: server image: labs.etsi.org:5050/tfs/controller/agentic:latest imagePullPolicy: Always workingDir: /var/teraflow/adk_apps command: - python args: - -m - agentic.service.adk_web ports: - containerPort: 8800 - containerPort: 8000 env: - name: LOG_LEVEL value: "INFO" Loading @@ -83,6 +92,8 @@ spec: value: "" - name: ADK_DISABLE_JSON_SCHEMA_FOR_FUNC_DECL value: "1" - name: PYTHONPATH value: "/var/teraflow" envFrom: - configMapRef: name: agentic-config Loading @@ -93,15 +104,15 @@ spec: mountPath: /var/lib/tfs-agentic readinessProbe: httpGet: path: /health port: 8800 path: /agentic/dev-ui/ port: 8000 initialDelaySeconds: 10 periodSeconds: 10 failureThreshold: 12 livenessProbe: httpGet: path: /health port: 8800 path: /agentic/dev-ui/ port: 8000 initialDelaySeconds: 20 periodSeconds: 20 failureThreshold: 6 Loading Loading @@ -130,8 +141,8 @@ spec: ports: - name: http protocol: TCP port: 8800 targetPort: 8800 port: 8000 targetPort: 8000 --- apiVersion: networking.k8s.io/v1 kind: Ingress Loading @@ -143,7 +154,7 @@ metadata: nginx.ingress.kubernetes.io/proxy-connect-timeout: "60" nginx.ingress.kubernetes.io/proxy-send-timeout: "3600" nginx.ingress.kubernetes.io/proxy-read-timeout: "3600" nginx.ingress.kubernetes.io/rewrite-target: /$2 nginx.ingress.kubernetes.io/use-regex: "true" spec: rules: - http: Loading @@ -154,4 +165,4 @@ spec: service: name: agenticservice port: number: 8800 number: 8000 src/agentic/service/agents/granular_root.py +2 −0 Viewed Changes for src/agentic/service/agents/granular_root.py: 2 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -21,6 +21,7 @@ from google.adk.models.lite_llm import LiteLlm from agentic.service.agents.mutation import mutation_router_agent from agentic.service.agents.retrieval import retrieval_router_agent from agentic.service.adk_a2a_bridge import handle_a2a_action_message from agentic.service.llm import build_litellm Loading @@ -47,4 +48,5 @@ root_agent = Agent( description="Minimal TFS Agentic root router for specialist agents.", instruction=GRANULAR_ROOT_ROUTER_INSTRUCTION, sub_agents=[retrieval_router_agent, mutation_router_agent], before_agent_callback=handle_a2a_action_message, ) src/agentic/service/agents/root.py +2 −0 Viewed Changes for src/agentic/service/agents/root.py: 2 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -23,6 +23,7 @@ from __future__ import annotations from google.adk.agents.llm_agent import Agent from google.adk.models.lite_llm import LiteLlm from agentic.service.adk_a2a_bridge import handle_a2a_action_message from agentic.service.llm import build_litellm Loading Loading @@ -70,4 +71,5 @@ inventory_service_root_agent = Agent( ), instruction=ROOT_AGENT_INSTRUCTION, sub_agents=[inventory_agent, service_agent], before_agent_callback=handle_a2a_action_message, ) Loading
deploy/component.sh +8 −0 Viewed Changes for deploy/component.sh: 8 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -161,6 +161,14 @@ for COMPONENT in $TFS_COMPONENTS; do echo " Deploying '$COMPONENT' component to Kubernetes..." DEPLOY_LOG="$TMP_LOGS_FOLDER/deploy_${COMPONENT}.log" if [ "$COMPONENT" == "agentic" ]; then kubectl --namespace $TFS_K8S_NAMESPACE delete ingress \ tfs-ingress-agentic --ignore-not-found >> "$DEPLOY_LOG" kubectl --namespace $TFS_K8S_NAMESPACE delete ingress \ tfs-ingress-agentic-api --ignore-not-found >> "$DEPLOY_LOG" kubectl --namespace $TFS_K8S_NAMESPACE delete ingress \ tfs-ingress-agentic-web --ignore-not-found >> "$DEPLOY_LOG" fi kubectl --namespace $TFS_K8S_NAMESPACE delete -f "$MANIFEST" > "$DEPLOY_LOG" kubectl --namespace $TFS_K8S_NAMESPACE apply -f "$MANIFEST" > "$DEPLOY_LOG" COMPONENT_OBJNAME=$(echo "${COMPONENT}" | sed "s/\_/-/") Loading
deploy/tfs.sh +16 −0 Viewed Changes for deploy/tfs.sh: 16 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -340,12 +340,28 @@ for COMPONENT in $TFS_COMPONENTS; do sed -E -i "s#image: $GITLAB_REPO_URL/$COMPONENT:${VERSION}#image: $IMAGE_URL#g" "$MANIFEST" fi if [ "$COMPONENT" == "webui" ] && [[ "$TFS_COMPONENTS" == *"agentic"* ]]; then sed -E -i '/value: "\/webui\/"/ a\ - name: AGENTICSERVICE_SERVICE_HOST\ value: "agenticservice"\ - name: AGENTICSERVICE_SERVICE_PORT_HTTP\ value: "8000"' "$MANIFEST" fi sed -E -i "s#imagePullPolicy: .*#imagePullPolicy: Always#g" "$MANIFEST" # TODO: harmonize names of the monitoring component echo " Deploying '$COMPONENT' component to Kubernetes..." DEPLOY_LOG="$TMP_LOGS_FOLDER/deploy_${COMPONENT}.log" if [ "$COMPONENT" == "agentic" ]; then kubectl --namespace $TFS_K8S_NAMESPACE delete ingress \ tfs-ingress-agentic --ignore-not-found > "$DEPLOY_LOG" kubectl --namespace $TFS_K8S_NAMESPACE delete ingress \ tfs-ingress-agentic-api --ignore-not-found >> "$DEPLOY_LOG" kubectl --namespace $TFS_K8S_NAMESPACE delete ingress \ tfs-ingress-agentic-web --ignore-not-found >> "$DEPLOY_LOG" fi kubectl --namespace $TFS_K8S_NAMESPACE apply -f "$MANIFEST" > "$DEPLOY_LOG" COMPONENT_OBJNAME=$(echo "${COMPONENT}" | sed "s/\_/-/g") #kubectl --namespace $TFS_K8S_NAMESPACE scale deployment --replicas=0 ${COMPONENT_OBJNAME}service >> "$DEPLOY_LOG" Loading
manifests/agenticservice.yaml +20 −9 Viewed Changes for manifests/agenticservice.yaml: 20 added lines, 9 removed lines. Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ metadata: data: ADK_MODEL: "openai/gpt-4.1-mini" ADK_AGENT_GRAPH: "single" ADK_HTTP_ROOT_PATH: "/agentic" ADK_DOMAIN_ID: "A" ADK_DOMAIN_NAME: "domain-a" ADK_PEERS: "" Loading Loading @@ -58,6 +59,8 @@ kind: Deployment metadata: name: agenticservice spec: strategy: type: Recreate selector: matchLabels: app: agenticservice Loading @@ -72,8 +75,14 @@ spec: - name: server image: labs.etsi.org:5050/tfs/controller/agentic:latest imagePullPolicy: Always workingDir: /var/teraflow/adk_apps command: - python args: - -m - agentic.service.adk_web ports: - containerPort: 8800 - containerPort: 8000 env: - name: LOG_LEVEL value: "INFO" Loading @@ -83,6 +92,8 @@ spec: value: "" - name: ADK_DISABLE_JSON_SCHEMA_FOR_FUNC_DECL value: "1" - name: PYTHONPATH value: "/var/teraflow" envFrom: - configMapRef: name: agentic-config Loading @@ -93,15 +104,15 @@ spec: mountPath: /var/lib/tfs-agentic readinessProbe: httpGet: path: /health port: 8800 path: /agentic/dev-ui/ port: 8000 initialDelaySeconds: 10 periodSeconds: 10 failureThreshold: 12 livenessProbe: httpGet: path: /health port: 8800 path: /agentic/dev-ui/ port: 8000 initialDelaySeconds: 20 periodSeconds: 20 failureThreshold: 6 Loading Loading @@ -130,8 +141,8 @@ spec: ports: - name: http protocol: TCP port: 8800 targetPort: 8800 port: 8000 targetPort: 8000 --- apiVersion: networking.k8s.io/v1 kind: Ingress Loading @@ -143,7 +154,7 @@ metadata: nginx.ingress.kubernetes.io/proxy-connect-timeout: "60" nginx.ingress.kubernetes.io/proxy-send-timeout: "3600" nginx.ingress.kubernetes.io/proxy-read-timeout: "3600" nginx.ingress.kubernetes.io/rewrite-target: /$2 nginx.ingress.kubernetes.io/use-regex: "true" spec: rules: - http: Loading @@ -154,4 +165,4 @@ spec: service: name: agenticservice port: number: 8800 number: 8000
src/agentic/service/agents/granular_root.py +2 −0 Viewed Changes for src/agentic/service/agents/granular_root.py: 2 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -21,6 +21,7 @@ from google.adk.models.lite_llm import LiteLlm from agentic.service.agents.mutation import mutation_router_agent from agentic.service.agents.retrieval import retrieval_router_agent from agentic.service.adk_a2a_bridge import handle_a2a_action_message from agentic.service.llm import build_litellm Loading @@ -47,4 +48,5 @@ root_agent = Agent( description="Minimal TFS Agentic root router for specialist agents.", instruction=GRANULAR_ROOT_ROUTER_INSTRUCTION, sub_agents=[retrieval_router_agent, mutation_router_agent], before_agent_callback=handle_a2a_action_message, )
src/agentic/service/agents/root.py +2 −0 Viewed Changes for src/agentic/service/agents/root.py: 2 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -23,6 +23,7 @@ from __future__ import annotations from google.adk.agents.llm_agent import Agent from google.adk.models.lite_llm import LiteLlm from agentic.service.adk_a2a_bridge import handle_a2a_action_message from agentic.service.llm import build_litellm Loading Loading @@ -70,4 +71,5 @@ inventory_service_root_agent = Agent( ), instruction=ROOT_AGENT_INSTRUCTION, sub_agents=[inventory_agent, service_agent], before_agent_callback=handle_a2a_action_message, )