#!/usr/bin/env python3 """ deploy_agent.py — Deploy ADK agent to Gemini Enterprise Agent Platform (Agent Runtime) Usage: python3 deploy_agent.py --project PROJECT_ID --region REGION \ --display-name DISPLAY_NAME --staging-bucket GS_URI """ import argparse import vertexai from vertexai.preview import agent_engines # SDK v1.112.0+ client-based design def deploy(project: str, region: str, display_name: str, staging_bucket: str): vertexai.init(project=project, location=region, staging_bucket=staging_bucket) from agents.core_logic import agent as my_agent # adjust import path print(f"Deploying agent '{display_name}' to Agent Runtime in {region}...") remote_agent = agent_engines.create( my_agent.root_agent, requirements=["google-cloud-aiplatform[adk,agent_engines]>=1.112.0"], display_name=display_name, ) print(f"Agent deployed. Resource name: {remote_agent.resource_name}") print(f"Console: https://console.cloud.google.com/ai/agents?project={project}") print("REMINDER: Run 03-teardown.sh at end of day to stop billing.") return remote_agent if __name__ == "__main__": parser = argparse.ArgumentParser() parser.add_argument("--project", default="propane-will-491900-m5") parser.add_argument("--region", default="us-central1") parser.add_argument("--display-name", default="oavauco-agent-v1") parser.add_argument("--staging-bucket", default="gs://propane-will-491900-m5-agent-staging") args = parser.parse_args() deploy(args.project, args.region, args.display_name, args.staging_bucket)