agent-starter-pack 0.7.1__tar.gz → 0.8.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- agent_starter_pack-0.8.0/.claude/settings.local.json +9 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/.cloudbuild/terraform/build_triggers.tf +8 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/.gitignore +2 -1
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/PKG-INFO +5 -5
- agent_starter_pack-0.8.0/agents/README.md +7 -0
- {agent_starter_pack-0.7.1/agents/adk_gemini_fullstack → agent_starter_pack-0.8.0/agents/adk_base}/notebooks/adk_app_testing.ipynb +8 -6
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/adk_base/template/.templateconfig.yaml +3 -1
- {agent_starter_pack-0.7.1/agents/agentic_rag → agent_starter_pack-0.8.0/agents/adk_gemini_fullstack}/notebooks/adk_app_testing.ipynb +8 -6
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/adk_gemini_fullstack/template/.templateconfig.yaml +2 -1
- {agent_starter_pack-0.7.1/agents/adk_base → agent_starter_pack-0.8.0/agents/agentic_rag}/notebooks/adk_app_testing.ipynb +8 -6
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/agentic_rag/template/.templateconfig.yaml +2 -1
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/crewai_coding_crew/template/.templateconfig.yaml +1 -1
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/cli/create.md +1 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/llm.txt +7 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/pyproject.toml +5 -5
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/README.md +2 -2
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/deployment/cd/deploy-to-prod.yaml +1 -16
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/deployment/cd/staging.yaml +4 -19
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/deployment/terraform/apis.tf +2 -2
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/deployment/terraform/build_triggers.tf +5 -5
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/deployment/terraform/dev/apis.tf +8 -1
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/deployment/terraform/dev/variables.tf +3 -1
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/deployment/terraform/iam.tf +8 -8
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/deployment/terraform/locals.tf +9 -2
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/deployment/terraform/log_sinks.tf +2 -2
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/deployment/terraform/service_accounts.tf +3 -3
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/deployment/terraform/storage.tf +7 -7
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/deployment/terraform/variables.tf +3 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/pyproject.toml +4 -3
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/cli/commands/create.py +38 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/cli/commands/setup_cicd.py +2 -2
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/cli/utils/cicd.py +2 -2
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/cli/utils/template.py +34 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/deployment_targets/agent_engine/app/agent_engine_app.py +7 -7
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/deployment_targets/agent_engine/tests/load_test/README.md +1 -6
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/deployment_targets/agent_engine/tests/load_test/load_test.py +13 -3
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/deployment_targets/cloud_run/Dockerfile +3 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/deployment_targets/cloud_run/app/server.py +18 -0
- agent_starter_pack-0.8.0/src/deployment_targets/cloud_run/deployment/terraform/dev/service.tf +231 -0
- agent_starter_pack-0.8.0/src/deployment_targets/cloud_run/deployment/terraform/service.tf +360 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/deployment_targets/cloud_run/tests/integration/test_server_e2e.py +8 -5
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/deployment_targets/cloud_run/tests/load_test/README.md +2 -2
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/deployment_targets/cloud_run/tests/load_test/load_test.py +21 -17
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/src/App.tsx +2 -3
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/resources/docs/adk-cheatsheet.md +1 -1
- agent_starter_pack-0.7.1/src/resources/locks/uv-adk_base-cloud_run.lock → agent_starter_pack-0.8.0/src/resources/locks/uv-adk_base-agent_engine.lock +814 -524
- agent_starter_pack-0.8.0/src/resources/locks/uv-adk_base-cloud_run.lock +4434 -0
- agent_starter_pack-0.7.1/src/resources/locks/uv-adk_gemini_fullstack-cloud_run.lock → agent_starter_pack-0.8.0/src/resources/locks/uv-adk_gemini_fullstack-agent_engine.lock +814 -524
- agent_starter_pack-0.8.0/src/resources/locks/uv-adk_gemini_fullstack-cloud_run.lock +4434 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/resources/locks/uv-agentic_rag-agent_engine.lock +386 -283
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/resources/locks/uv-agentic_rag-cloud_run.lock +513 -349
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/resources/locks/uv-crewai_coding_crew-agent_engine.lock +492 -497
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/resources/locks/uv-crewai_coding_crew-cloud_run.lock +671 -613
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/resources/locks/uv-langgraph_base_react-agent_engine.lock +500 -391
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/resources/locks/uv-langgraph_base_react-cloud_run.lock +682 -510
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/resources/locks/uv-live_api-cloud_run.lock +686 -486
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/resources/setup_cicd/github.tf +2 -2
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/tests/cicd/test_e2e_deployment.py +11 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/tests/cli/commands/test_setup_cicd.py +2 -2
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/tests/utils/get_agents.py +19 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/uv.lock +8 -8
- agent_starter_pack-0.7.1/src/deployment_targets/cloud_run/uv.lock +0 -6952
- agent_starter_pack-0.7.1/src/resources/locks/uv-adk_base-agent_engine.lock +0 -3268
- agent_starter_pack-0.7.1/src/resources/locks/uv-adk_gemini_fullstack-agent_engine.lock +0 -3268
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/.cloudbuild/cd/test_e2e.yaml +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/.cloudbuild/ci/build_use_wheel.yaml +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/.cloudbuild/ci/lint.yaml +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/.cloudbuild/ci/lint_templated_agents.yaml +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/.cloudbuild/ci/test.yaml +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/.cloudbuild/ci/test_templated_agents.yaml +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/.cloudbuild/terraform/apis.tf +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/.cloudbuild/terraform/service_account.tf +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/.cloudbuild/terraform/storage.tf +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/.cloudbuild/terraform/variables.tf +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/.github/workflows/docs.yml +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/CODE_OF_CONDUCT.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/CONTRIBUTING.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/LICENSE +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/Makefile +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/README.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/adk_base/README.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/adk_base/app/agent.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/adk_base/notebooks/evaluating_adk_agent.ipynb +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/adk_base/tests/integration/test_agent.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/adk_gemini_fullstack/README.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/adk_gemini_fullstack/app/agent.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/adk_gemini_fullstack/app/config.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/adk_gemini_fullstack/notebooks/evaluating_adk_agent.ipynb +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/adk_gemini_fullstack/tests/integration/test_agent.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/agentic_rag/README.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/agentic_rag/app/agent.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/agentic_rag/app/retrievers.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/agentic_rag/app/templates.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/agentic_rag/notebooks/evaluating_adk_agent.ipynb +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/agentic_rag/tests/integration/test_agent.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/crewai_coding_crew/README.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/crewai_coding_crew/app/agent.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/crewai_coding_crew/app/crew/config/agents.yaml +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/crewai_coding_crew/app/crew/config/tasks.yaml +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/crewai_coding_crew/app/crew/crew.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/crewai_coding_crew/notebooks/evaluating_crewai_agent.ipynb +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/crewai_coding_crew/notebooks/evaluating_langgraph_agent.ipynb +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/crewai_coding_crew/tests/integration/test_agent.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/langgraph_base_react/README.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/langgraph_base_react/app/agent.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/langgraph_base_react/notebooks/evaluating_langgraph_agent.ipynb +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/langgraph_base_react/template/.templateconfig.yaml +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/langgraph_base_react/tests/integration/test_agent.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/live_api/README.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/live_api/app/agent.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/live_api/app/server.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/live_api/template/.templateconfig.yaml +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/live_api/tests/integration/test_server_e2e.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/live_api/tests/load_test/load_test.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/live_api/tests/unit/test_server.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/.vitepress/config.js +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/agents/overview.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/cli/index.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/cli/setup_cicd.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/guide/data-ingestion.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/guide/deploy-ui.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/guide/deployment.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/guide/development-guide.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/guide/getting-started.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/guide/installation.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/guide/observability.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/guide/troubleshooting.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/guide/video-tutorials.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/guide/why_starter_pack.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/images/adk_gemini_fullstack.gif +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/images/adk_gemini_fullstack_architecture.png +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/images/adk_logo.png +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/images/agent_starter_pack_screenshot.png +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/images/ags_high_level_architecture.png +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/images/icon.png +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/images/logo.png +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/images/prototype_to_prod.png +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/images/why_sp_edited.png +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/images/why_starter_pack.png +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/index.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/package-lock.json +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/docs/package.json +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/.gitignore +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/GEMINI.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/Makefile +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/app/__init__.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/app/utils/gcs.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/app/utils/tracing.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/app/utils/typing.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/deployment/README.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/deployment/ci/pr_checks.yaml +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/deployment/terraform/dev/iam.tf +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/deployment/terraform/dev/log_sinks.tf +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/deployment/terraform/dev/providers.tf +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/deployment/terraform/dev/storage.tf +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/deployment/terraform/dev/vars/env.tfvars +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/deployment/terraform/providers.tf +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/deployment/terraform/vars/env.tfvars +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/tests/unit/test_dummy.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/cli/main.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/cli/utils/__init__.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/cli/utils/datastores.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/cli/utils/gcp.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/cli/utils/logging.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/cli/utils/version.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/data_ingestion/README.md +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/data_ingestion/data_ingestion_pipeline/components/ingest_data.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/data_ingestion/data_ingestion_pipeline/components/process_data.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/data_ingestion/data_ingestion_pipeline/pipeline.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/data_ingestion/data_ingestion_pipeline/submit_pipeline.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/data_ingestion/pyproject.toml +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/data_ingestion/uv.lock +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/deployment_targets/agent_engine/deployment_metadata.json +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/deployment_targets/agent_engine/notebooks/intro_agent_engine.ipynb +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/deployment_targets/agent_engine/tests/integration/test_agent_engine_app.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/deployment_targets/agent_engine/tests/load_test/.results/.placeholder +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/deployment_targets/cloud_run/tests/load_test/.results/.placeholder +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/components.json +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/eslint.config.js +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/index.html +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/package-lock.json +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/package.json +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/src/components/ActivityTimeline.tsx +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/src/components/ChatMessagesView.tsx +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/src/components/InputForm.tsx +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/src/components/WelcomeScreen.tsx +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/src/components/ui/badge.tsx +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/src/components/ui/button.tsx +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/src/components/ui/card.tsx +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/src/components/ui/input.tsx +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/src/components/ui/scroll-area.tsx +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/src/components/ui/select.tsx +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/src/components/ui/tabs.tsx +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/src/components/ui/textarea.tsx +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/src/global.css +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/src/main.tsx +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/src/utils.ts +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/src/vite-env.d.ts +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/tsconfig.json +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/tsconfig.node.json +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/adk_gemini_fullstack/frontend/vite.config.ts +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/package-lock.json +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/package.json +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/public/favicon.ico +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/public/index.html +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/public/robots.txt +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/App.scss +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/App.test.tsx +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/App.tsx +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/components/audio-pulse/AudioPulse.tsx +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/components/audio-pulse/audio-pulse.scss +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/components/control-tray/ControlTray.tsx +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/components/control-tray/control-tray.scss +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/components/logger/Logger.tsx +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/components/logger/logger.scss +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/components/logger/mock-logs.ts +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/components/side-panel/SidePanel.tsx +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/components/side-panel/side-panel.scss +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/contexts/LiveAPIContext.tsx +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/hooks/use-live-api.ts +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/hooks/use-media-stream-mux.ts +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/hooks/use-screen-capture.ts +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/hooks/use-webcam.ts +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/index.css +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/index.tsx +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/multimodal-live-types.ts +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/react-app-env.d.ts +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/reportWebVitals.ts +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/setupTests.ts +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/utils/audio-recorder.ts +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/utils/audio-streamer.ts +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/utils/audioworklet-registry.ts +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/utils/multimodal-live-client.ts +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/utils/store-logger.ts +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/utils/utils.ts +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/utils/worklets/audio-processing.ts +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/src/utils/worklets/vol-meter.ts +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/live_api_react/frontend/tsconfig.json +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/streamlit/frontend/side_bar.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/streamlit/frontend/streamlit_app.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/streamlit/frontend/style/app_markdown.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/streamlit/frontend/utils/chat_utils.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/streamlit/frontend/utils/local_chat_history.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/streamlit/frontend/utils/message_editing.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/streamlit/frontend/utils/multimodal_utils.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/streamlit/frontend/utils/stream_handler.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/frontends/streamlit/frontend/utils/title_summary.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/resources/containers/data_processing/Dockerfile +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/resources/containers/e2e-tests/Dockerfile +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/resources/idx/.idx/dev.nix +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/resources/idx/idx-template.json +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/resources/idx/idx-template.nix +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/resources/setup_cicd/cicd_variables.tf +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/resources/setup_cicd/providers.tf +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/utils/generate_locks.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/utils/lock_utils.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/utils/watch_and_rebuild.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/tests/__init__.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/tests/cicd/example.env +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/tests/cli/commands/test_create.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/tests/cli/utils/test_cicd.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/tests/integration/test_template_linting.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/tests/integration/test_templated_patterns.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/tests/test_frontend/test_side_bar.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/tests/test_frontend/test_streamlit_app.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/tests/test_frontend/test_utils/test_chat_utils.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/tests/test_frontend/test_utils/test_local_chat_history.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/tests/test_frontend/test_utils/test_message_editing.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/tests/test_frontend/test_utils/test_multimodal_utils.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/tests/test_frontend/test_utils/test_stream_handler.py +0 -0
- {agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/tests/utils/__init__.py +0 -0
{agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/.cloudbuild/terraform/build_triggers.tf
RENAMED
@@ -92,6 +92,10 @@ locals {
|
|
92
92
|
name = "adk_gemini_fullstack-cloud_run"
|
93
93
|
value = "adk_gemini_fullstack,cloud_run"
|
94
94
|
},
|
95
|
+
{
|
96
|
+
name = "adk_base-cloud_run-alloydb"
|
97
|
+
value = "adk_base,cloud_run,--session-type,alloydb"
|
98
|
+
},
|
95
99
|
]
|
96
100
|
|
97
101
|
agent_testing_included_files = { for combo in local.agent_testing_combinations :
|
@@ -138,6 +142,10 @@ locals {
|
|
138
142
|
name = "adk_gemini_fullstack-agent_engine"
|
139
143
|
value = "adk_gemini_fullstack,agent_engine"
|
140
144
|
},
|
145
|
+
{
|
146
|
+
name = "adk_base-cloud_run-alloydb"
|
147
|
+
value = "adk_base,cloud_run,--session-type,alloydb"
|
148
|
+
},
|
141
149
|
]
|
142
150
|
# Create a safe trigger name by replacing underscores with hyphens and dots with hyphens
|
143
151
|
# This ensures we have valid trigger names that don't exceed character limits
|
@@ -188,6 +188,7 @@ testem.log
|
|
188
188
|
Thumbs.db
|
189
189
|
*.vscode*
|
190
190
|
|
191
|
+
.locust_env/
|
191
192
|
.saved_chats
|
192
193
|
.aider*
|
193
194
|
target
|
@@ -196,4 +197,4 @@ delete_genai_repos.sh
|
|
196
197
|
cleanup_e2e_projects.sh
|
197
198
|
.cloudbuild/terraform/backend.tf
|
198
199
|
.cloudbuild/terraform/vars/env.tfvars
|
199
|
-
docs/.vitepress/cache
|
200
|
+
docs/.vitepress/cache
|
@@ -1,17 +1,17 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: agent-starter-pack
|
3
|
-
Version: 0.
|
3
|
+
Version: 0.8.0
|
4
4
|
Summary: CLI to bootstrap production-ready Google Cloud GenAI agent projects from templates.
|
5
5
|
Author-email: Google LLC <agent-starter-pack@google.com>
|
6
6
|
License: Apache-2.0
|
7
7
|
License-File: LICENSE
|
8
8
|
Requires-Python: >=3.10
|
9
9
|
Requires-Dist: backoff>=2.2.1
|
10
|
-
Requires-Dist: click
|
11
|
-
Requires-Dist: cookiecutter~=2.
|
10
|
+
Requires-Dist: click>=8.1.7
|
11
|
+
Requires-Dist: cookiecutter~=2.6.0
|
12
12
|
Requires-Dist: google-cloud-aiplatform>=1.87.0
|
13
|
-
Requires-Dist: pyyaml
|
14
|
-
Requires-Dist: rich
|
13
|
+
Requires-Dist: pyyaml>=6.0.1
|
14
|
+
Requires-Dist: rich>=13.7.0
|
15
15
|
Provides-Extra: jupyter
|
16
16
|
Requires-Dist: ipykernel>=6.29.5; extra == 'jupyter'
|
17
17
|
Requires-Dist: jupyter; extra == 'jupyter'
|
@@ -0,0 +1,7 @@
|
|
1
|
+
# Agent Templates
|
2
|
+
|
3
|
+
This directory contains template implementations for various agents designed to work with the Agent Starter Pack templating system.
|
4
|
+
Feel free to browse through these folders to preview what each template offers.
|
5
|
+
Direct cloning of this repository isn't necessary to utilize these templates.
|
6
|
+
|
7
|
+
For setup instructions and getting started, please refer to the main [README](/README.md) which explains how to install and use the Agent Starter Pack.
|
@@ -207,14 +207,15 @@
|
|
207
207
|
"outputs": [],
|
208
208
|
"source": [
|
209
209
|
"user_id = \"test_user_123\"\n",
|
210
|
-
"session_id = \"test_session_456\"\n",
|
211
210
|
"session_data = {\"state\": {\"preferred_language\": \"English\", \"visit_count\": 1}}\n",
|
212
211
|
"\n",
|
213
|
-
"session_url = f\"{SERVICE_URL}/apps/app/users/{user_id}/sessions
|
212
|
+
"session_url = f\"{SERVICE_URL}/apps/app/users/{user_id}/sessions\"\n",
|
214
213
|
"headers = {\"Content-Type\": \"application/json\", \"Authorization\": f\"Bearer {ID_TOKEN}\"}\n",
|
215
214
|
"\n",
|
216
215
|
"session_response = requests.post(session_url, headers=headers, json=session_data)\n",
|
217
|
-
"print(f\"Session creation status code: {session_response.status_code}\")"
|
216
|
+
"print(f\"Session creation status code: {session_response.status_code}\")\n",
|
217
|
+
"print(f\"Session creation response: {session_response.json()}\")\n",
|
218
|
+
"session_id = session_response.json()[\"id\"]"
|
218
219
|
]
|
219
220
|
},
|
220
221
|
{
|
@@ -279,14 +280,15 @@
|
|
279
280
|
"outputs": [],
|
280
281
|
"source": [
|
281
282
|
"user_id = \"test_user_123\"\n",
|
282
|
-
"session_id = \"test_session_456\"\n",
|
283
283
|
"session_data = {\"state\": {\"preferred_language\": \"English\", \"visit_count\": 1}}\n",
|
284
284
|
"\n",
|
285
|
-
"session_url = f\"http://127.0.0.1:8000/apps/app/users/{user_id}/sessions
|
285
|
+
"session_url = f\"http://127.0.0.1:8000/apps/app/users/{user_id}/sessions\"\n",
|
286
286
|
"headers = {\"Content-Type\": \"application/json\"}\n",
|
287
287
|
"\n",
|
288
288
|
"session_response = requests.post(session_url, headers=headers, json=session_data)\n",
|
289
|
-
"print(f\"Session creation status code: {session_response.status_code}\")"
|
289
|
+
"print(f\"Session creation status code: {session_response.status_code}\")\n",
|
290
|
+
"print(f\"Session creation response: {session_response.json()}\")\n",
|
291
|
+
"session_id = session_response.json()[\"id\"]"
|
290
292
|
]
|
291
293
|
},
|
292
294
|
{
|
{agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/agents/adk_base/template/.templateconfig.yaml
RENAMED
@@ -16,7 +16,9 @@ description: "A base ReAct agent built with Google's Agent Development Kit (ADK)
|
|
16
16
|
example_question: "What's the weather in San Francisco?"
|
17
17
|
settings:
|
18
18
|
requires_data_ingestion: false
|
19
|
+
requires_session: true
|
19
20
|
deployment_targets: ["agent_engine", "cloud_run"]
|
20
|
-
extra_dependencies: ["google-adk~=1.
|
21
|
+
extra_dependencies: ["google-adk~=1.5.0"]
|
21
22
|
tags: ["adk"]
|
22
23
|
frontend_type: "None"
|
24
|
+
|
@@ -207,14 +207,15 @@
|
|
207
207
|
"outputs": [],
|
208
208
|
"source": [
|
209
209
|
"user_id = \"test_user_123\"\n",
|
210
|
-
"session_id = \"test_session_456\"\n",
|
211
210
|
"session_data = {\"state\": {\"preferred_language\": \"English\", \"visit_count\": 1}}\n",
|
212
211
|
"\n",
|
213
|
-
"session_url = f\"{SERVICE_URL}/apps/app/users/{user_id}/sessions
|
212
|
+
"session_url = f\"{SERVICE_URL}/apps/app/users/{user_id}/sessions\"\n",
|
214
213
|
"headers = {\"Content-Type\": \"application/json\", \"Authorization\": f\"Bearer {ID_TOKEN}\"}\n",
|
215
214
|
"\n",
|
216
215
|
"session_response = requests.post(session_url, headers=headers, json=session_data)\n",
|
217
|
-
"print(f\"Session creation status code: {session_response.status_code}\")"
|
216
|
+
"print(f\"Session creation status code: {session_response.status_code}\")\n",
|
217
|
+
"print(f\"Session creation response: {session_response.json()}\")\n",
|
218
|
+
"session_id = session_response.json()[\"id\"]"
|
218
219
|
]
|
219
220
|
},
|
220
221
|
{
|
@@ -279,14 +280,15 @@
|
|
279
280
|
"outputs": [],
|
280
281
|
"source": [
|
281
282
|
"user_id = \"test_user_123\"\n",
|
282
|
-
"session_id = \"test_session_456\"\n",
|
283
283
|
"session_data = {\"state\": {\"preferred_language\": \"English\", \"visit_count\": 1}}\n",
|
284
284
|
"\n",
|
285
|
-
"session_url = f\"http://127.0.0.1:8000/apps/app/users/{user_id}/sessions
|
285
|
+
"session_url = f\"http://127.0.0.1:8000/apps/app/users/{user_id}/sessions\"\n",
|
286
286
|
"headers = {\"Content-Type\": \"application/json\"}\n",
|
287
287
|
"\n",
|
288
288
|
"session_response = requests.post(session_url, headers=headers, json=session_data)\n",
|
289
|
-
"print(f\"Session creation status code: {session_response.status_code}\")"
|
289
|
+
"print(f\"Session creation status code: {session_response.status_code}\")\n",
|
290
|
+
"print(f\"Session creation response: {session_response.json()}\")\n",
|
291
|
+
"session_id = session_response.json()[\"id\"]"
|
290
292
|
]
|
291
293
|
},
|
292
294
|
{
|
@@ -16,8 +16,9 @@ description: "A production-ready fullstack research agent that uses Gemini to st
|
|
16
16
|
example_question: "A report on the latest Google I/O event"
|
17
17
|
settings:
|
18
18
|
requires_data_ingestion: false
|
19
|
+
requires_session: true
|
19
20
|
deployment_targets: ["agent_engine", "cloud_run"]
|
20
|
-
extra_dependencies: ["google-adk~=1.
|
21
|
+
extra_dependencies: ["google-adk~=1.5.0"]
|
21
22
|
tags: ["adk"]
|
22
23
|
frontend_type: "adk_gemini_fullstack"
|
23
24
|
commands:
|
@@ -207,14 +207,15 @@
|
|
207
207
|
"outputs": [],
|
208
208
|
"source": [
|
209
209
|
"user_id = \"test_user_123\"\n",
|
210
|
-
"session_id = \"test_session_456\"\n",
|
211
210
|
"session_data = {\"state\": {\"preferred_language\": \"English\", \"visit_count\": 1}}\n",
|
212
211
|
"\n",
|
213
|
-
"session_url = f\"{SERVICE_URL}/apps/app/users/{user_id}/sessions
|
212
|
+
"session_url = f\"{SERVICE_URL}/apps/app/users/{user_id}/sessions\"\n",
|
214
213
|
"headers = {\"Content-Type\": \"application/json\", \"Authorization\": f\"Bearer {ID_TOKEN}\"}\n",
|
215
214
|
"\n",
|
216
215
|
"session_response = requests.post(session_url, headers=headers, json=session_data)\n",
|
217
|
-
"print(f\"Session creation status code: {session_response.status_code}\")"
|
216
|
+
"print(f\"Session creation status code: {session_response.status_code}\")\n",
|
217
|
+
"print(f\"Session creation response: {session_response.json()}\")\n",
|
218
|
+
"session_id = session_response.json()[\"id\"]"
|
218
219
|
]
|
219
220
|
},
|
220
221
|
{
|
@@ -279,14 +280,15 @@
|
|
279
280
|
"outputs": [],
|
280
281
|
"source": [
|
281
282
|
"user_id = \"test_user_123\"\n",
|
282
|
-
"session_id = \"test_session_456\"\n",
|
283
283
|
"session_data = {\"state\": {\"preferred_language\": \"English\", \"visit_count\": 1}}\n",
|
284
284
|
"\n",
|
285
|
-
"session_url = f\"http://127.0.0.1:8000/apps/app/users/{user_id}/sessions
|
285
|
+
"session_url = f\"http://127.0.0.1:8000/apps/app/users/{user_id}/sessions\"\n",
|
286
286
|
"headers = {\"Content-Type\": \"application/json\"}\n",
|
287
287
|
"\n",
|
288
288
|
"session_response = requests.post(session_url, headers=headers, json=session_data)\n",
|
289
|
-
"print(f\"Session creation status code: {session_response.status_code}\")"
|
289
|
+
"print(f\"Session creation status code: {session_response.status_code}\")\n",
|
290
|
+
"print(f\"Session creation response: {session_response.json()}\")\n",
|
291
|
+
"session_id = session_response.json()[\"id\"]"
|
290
292
|
]
|
291
293
|
},
|
292
294
|
{
|
@@ -16,9 +16,10 @@ description: "ADK RAG agent for document retrieval and Q&A. Includes a data pipe
|
|
16
16
|
example_question: "How to save a pandas dataframe to CSV?"
|
17
17
|
settings:
|
18
18
|
requires_data_ingestion: true
|
19
|
+
requires_session: true
|
19
20
|
deployment_targets: ["agent_engine", "cloud_run"]
|
20
21
|
extra_dependencies: [
|
21
|
-
"google-adk~=1.
|
22
|
+
"google-adk~=1.5.0",
|
22
23
|
"langchain-google-vertexai~=2.0.7",
|
23
24
|
"langchain~=0.3.24",
|
24
25
|
"langchain-core~=0.3.55",
|
@@ -22,6 +22,7 @@ The following options will be prompted interactively if not provided via the com
|
|
22
22
|
- `--deployment-target`, `-d`: Deployment target (`agent_engine` or `cloud_run`). Prompts if omitted.
|
23
23
|
- `--datastore`, `-ds`: Datastore for RAG agents (`vertex_ai_search` or `vertex_ai_vector_search`). Prompted if `--include-data-ingestion` is specified, or if the selected agent (e.g., `agentic_rag`) requires data ingestion, and this option is omitted.
|
24
24
|
- `--region`: GCP region for deployment (default: `us-central1`). Prompts for confirmation if not specified and `--auto-approve` is not used.
|
25
|
+
- `--session-type`: Type of session storage to use (`in_memory` or `alloydb`). This is only applicable for agents that require session management and when the deployment target is `cloud_run`.
|
25
26
|
|
26
27
|
GCP account and project ID are detected automatically (using your active `gcloud config` settings). You will be prompted to confirm or change them unless `--auto-approve` is used.
|
27
28
|
|
@@ -69,6 +69,7 @@ agent-starter-pack create PROJECT_NAME [OPTIONS]
|
|
69
69
|
* `-d, --deployment-target`: Target deployment environment (`cloud_run` or `agent_engine`).
|
70
70
|
* `-ds, --datastore`: For RAG agents, the datastore (`vertex_ai_search` or `vertex_ai_vector_search`).
|
71
71
|
* `-i, --include-data-ingestion`: Include data ingestion pipeline scaffolding.
|
72
|
+
* `--session-type`: For agents requiring session management on Cloud Run, specifies the storage type (`in_memory` or `alloydb`).
|
72
73
|
* `--region`: GCP region (e.g., `us-central1`).
|
73
74
|
* `--auto-approve`: **Skips all interactive prompts (crucial for automation).**
|
74
75
|
* `--debug`: Enables debug logging during creation.
|
@@ -186,6 +187,12 @@ uvx agent-starter-pack setup-cicd
|
|
186
187
|
* **Deploying with UI:** `make backend IAP=true`
|
187
188
|
* **Access Control:** After deploying with IAP, grant users the `IAP-secured Web App User` role in IAM to give them access.
|
188
189
|
|
190
|
+
### Session Management
|
191
|
+
|
192
|
+
For stateful agents, the starter pack supports persistent sessions.
|
193
|
+
* **Cloud Run:** Choose between `in_memory` (for testing) and durable `alloydb` sessions using the `--session-type` flag.
|
194
|
+
* **Agent Engine:** Provides session management automatically.
|
195
|
+
|
189
196
|
### Monitoring & Observability
|
190
197
|
* **Technology:** Uses OpenTelemetry to emit events to Google Cloud Trace and Logging.
|
191
198
|
* **Custom Tracer:** A custom tracer in `app/utils/tracing.py` handles large payloads by linking to GCS, overcoming default service limits.
|
@@ -1,6 +1,6 @@
|
|
1
1
|
[project]
|
2
2
|
name = "agent-starter-pack"
|
3
|
-
version = "0.
|
3
|
+
version = "0.8.0"
|
4
4
|
description = "CLI to bootstrap production-ready Google Cloud GenAI agent projects from templates."
|
5
5
|
authors = [
|
6
6
|
{ name = "Google LLC", email = "agent-starter-pack@google.com" },
|
@@ -9,11 +9,11 @@ license = {text = "Apache-2.0"}
|
|
9
9
|
readme = "README.md"
|
10
10
|
requires-python = ">=3.10"
|
11
11
|
dependencies = [
|
12
|
-
"click
|
13
|
-
"cookiecutter~=2.
|
12
|
+
"click>=8.1.7",
|
13
|
+
"cookiecutter~=2.6.0",
|
14
14
|
"google-cloud-aiplatform>=1.87.0",
|
15
|
-
"rich
|
16
|
-
"pyyaml
|
15
|
+
"rich>=13.7.0",
|
16
|
+
"pyyaml>=6.0.1",
|
17
17
|
"backoff>=2.2.1",
|
18
18
|
]
|
19
19
|
|
@@ -54,7 +54,7 @@ make install && make playground
|
|
54
54
|
{%- endif %}
|
55
55
|
{%- if cookiecutter.deployment_target == 'cloud_run' %}
|
56
56
|
| `make playground` | Launch local development environment with backend and frontend{%- if "adk" in cookiecutter.tags %} - leveraging `adk web` command. {%- endif %}|
|
57
|
-
| `make backend` | Deploy agent to Cloud Run |
|
57
|
+
| `make backend` | Deploy agent to Cloud Run (use `IAP=true` to enable Identity-Aware Proxy) |
|
58
58
|
| `make local-backend` | Launch local development server |
|
59
59
|
{%- if cookiecutter.deployment_target == 'cloud_run' %}
|
60
60
|
{%- if cookiecutter.agent_name == 'live_api' %}
|
@@ -67,7 +67,7 @@ make install && make playground
|
|
67
67
|
{%- endif %}
|
68
68
|
| `make test` | Run unit and integration tests |
|
69
69
|
| `make lint` | Run code quality checks (codespell, ruff, mypy) |
|
70
|
-
| `make setup-dev-env` | Set up development environment resources using Terraform
|
70
|
+
| `make setup-dev-env` | Set up development environment resources using Terraform |
|
71
71
|
{%- if cookiecutter.data_ingestion %}
|
72
72
|
| `make data-ingestion`| Run data ingestion pipeline in the Dev environment |
|
73
73
|
{%- endif %}
|
@@ -55,22 +55,7 @@ steps:
|
|
55
55
|
- "$_REGION"
|
56
56
|
- "--project"
|
57
57
|
- $_PROD_PROJECT_ID
|
58
|
-
|
59
|
-
- "1"
|
60
|
-
- "--no-cpu-throttling"
|
61
|
-
- "--cpu"
|
62
|
-
- "4"
|
63
|
-
- "--memory"
|
64
|
-
- "4Gi"
|
65
|
-
- "--concurrency"
|
66
|
-
- "40"
|
67
|
-
- "--service-account"
|
68
|
-
- "${_CLOUD_RUN_APP_SA_EMAIL}"
|
69
|
-
- "--session-affinity"
|
70
|
-
- "--labels"
|
71
|
-
- "created-by=adk"
|
72
|
-
- "--set-env-vars"
|
73
|
-
- "COMMIT_SHA=${COMMIT_SHA}{%- if cookiecutter.data_ingestion %}{%- if cookiecutter.datastore_type == "vertex_ai_search" %},DATA_STORE_ID=${_DATA_STORE_ID},DATA_STORE_REGION=${_DATA_STORE_REGION}{%- elif cookiecutter.datastore_type == "vertex_ai_vector_search" %},VECTOR_SEARCH_INDEX=${_VECTOR_SEARCH_INDEX},VECTOR_SEARCH_INDEX_ENDPOINT=${_VECTOR_SEARCH_INDEX_ENDPOINT},VECTOR_SEARCH_BUCKET=${_VECTOR_SEARCH_BUCKET}{%- endif %}{%- endif %}"
|
58
|
+
|
74
59
|
{%- elif cookiecutter.deployment_target == 'agent_engine' %}
|
75
60
|
- name: "python:3.11-slim"
|
76
61
|
id: install-dependencies
|
{agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/deployment/cd/staging.yaml
RENAMED
@@ -46,6 +46,8 @@ steps:
|
|
46
46
|
"build",
|
47
47
|
"-t",
|
48
48
|
"$_REGION-docker.pkg.dev/$PROJECT_ID/$_ARTIFACT_REGISTRY_REPO_NAME/$_CONTAINER_NAME",
|
49
|
+
"--build-arg",
|
50
|
+
"COMMIT_SHA=$COMMIT_SHA",
|
49
51
|
".",
|
50
52
|
]
|
51
53
|
- name: "gcr.io/cloud-builders/docker"
|
@@ -69,22 +71,6 @@ steps:
|
|
69
71
|
- "${_REGION}"
|
70
72
|
- "--project"
|
71
73
|
- "${_STAGING_PROJECT_ID}"
|
72
|
-
- "--min-instances"
|
73
|
-
- "1"
|
74
|
-
- "--no-cpu-throttling"
|
75
|
-
- "--cpu"
|
76
|
-
- "4"
|
77
|
-
- "--memory"
|
78
|
-
- "4Gi"
|
79
|
-
- "--concurrency"
|
80
|
-
- "40"
|
81
|
-
- "--service-account"
|
82
|
-
- "${_CLOUD_RUN_APP_SA_EMAIL}"
|
83
|
-
- "--session-affinity"
|
84
|
-
- "--labels"
|
85
|
-
- "created-by=adk"
|
86
|
-
- "--set-env-vars"
|
87
|
-
- "COMMIT_SHA=${COMMIT_SHA}{%- if cookiecutter.data_ingestion %}{%- if cookiecutter.datastore_type == "vertex_ai_search" %},DATA_STORE_ID=${_DATA_STORE_ID},DATA_STORE_REGION=${_DATA_STORE_REGION}{%- elif cookiecutter.datastore_type == "vertex_ai_vector_search" %},VECTOR_SEARCH_INDEX=${_VECTOR_SEARCH_INDEX},VECTOR_SEARCH_INDEX_ENDPOINT=${_VECTOR_SEARCH_INDEX_ENDPOINT},VECTOR_SEARCH_BUCKET=${_VECTOR_SEARCH_BUCKET}{%- endif %}{%- endif %}"
|
88
74
|
|
89
75
|
# Fetch Staging Service URL
|
90
76
|
- name: "gcr.io/cloud-builders/gcloud"
|
@@ -149,12 +135,11 @@ steps:
|
|
149
135
|
{%- if cookiecutter.deployment_target == 'cloud_run' %}
|
150
136
|
export _ID_TOKEN=$(cat id_token.txt)
|
151
137
|
export _STAGING_URL=$(cat staging_url.txt)
|
152
|
-
pip install uv==0.6.12 --user && uv sync --locked
|
153
138
|
{%- elif cookiecutter.deployment_target == 'agent_engine' %}
|
154
139
|
export _AUTH_TOKEN=$(cat auth_token.txt)
|
155
140
|
{%- endif %}
|
156
|
-
|
157
|
-
|
141
|
+
pip install locust==2.31.1 --user
|
142
|
+
locust -f tests/load_test/load_test.py \
|
158
143
|
--headless \
|
159
144
|
{%- if cookiecutter.deployment_target == 'cloud_run' %}
|
160
145
|
-H $$_STAGING_URL \
|
{agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/deployment/terraform/apis.tf
RENAMED
@@ -19,9 +19,9 @@ resource "google_project_service" "cicd_services" {
|
|
19
19
|
disable_on_destroy = false
|
20
20
|
}
|
21
21
|
|
22
|
-
resource "google_project_service" "
|
22
|
+
resource "google_project_service" "deploy_project_services" {
|
23
23
|
for_each = {
|
24
|
-
for pair in setproduct(keys(local.deploy_project_ids), local.
|
24
|
+
for pair in setproduct(keys(local.deploy_project_ids), local.deploy_project_services) :
|
25
25
|
"${pair[0]}_${replace(pair[1], ".", "_")}" => {
|
26
26
|
project = local.deploy_project_ids[pair[0]]
|
27
27
|
service = pair[1]
|
@@ -39,7 +39,7 @@ resource "google_cloudbuild_trigger" "pr_checks" {
|
|
39
39
|
{% endif %}
|
40
40
|
]
|
41
41
|
include_build_logs = "INCLUDE_BUILD_LOGS_WITH_STATUS"
|
42
|
-
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.
|
42
|
+
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.deploy_project_services]
|
43
43
|
}
|
44
44
|
|
45
45
|
# b. Create CD pipeline trigger
|
@@ -85,13 +85,13 @@ resource "google_cloudbuild_trigger" "cd_pipeline" {
|
|
85
85
|
{% elif cookiecutter.datastore_type == "vertex_ai_vector_search" %}
|
86
86
|
_VECTOR_SEARCH_INDEX = resource.google_vertex_ai_index.vector_search_index_staging.id
|
87
87
|
_VECTOR_SEARCH_INDEX_ENDPOINT = resource.google_vertex_ai_index_endpoint.vector_search_index_endpoint_staging.id
|
88
|
-
_VECTOR_SEARCH_BUCKET =
|
88
|
+
_VECTOR_SEARCH_BUCKET = resource.google_storage_bucket.vector_search_data_bucket["staging"].url
|
89
89
|
|
90
90
|
{% endif %}
|
91
91
|
{% endif %}
|
92
92
|
# Your other CD Pipeline substitutions
|
93
93
|
}
|
94
|
-
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.
|
94
|
+
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.deploy_project_services]
|
95
95
|
|
96
96
|
}
|
97
97
|
|
@@ -128,11 +128,11 @@ resource "google_cloudbuild_trigger" "deploy_to_prod_pipeline" {
|
|
128
128
|
{% elif cookiecutter.datastore_type == "vertex_ai_vector_search" %}
|
129
129
|
_VECTOR_SEARCH_INDEX = resource.google_vertex_ai_index.vector_search_index_prod.id
|
130
130
|
_VECTOR_SEARCH_INDEX_ENDPOINT = resource.google_vertex_ai_index_endpoint.vector_search_index_endpoint_prod.id
|
131
|
-
_VECTOR_SEARCH_BUCKET =
|
131
|
+
_VECTOR_SEARCH_BUCKET = resource.google_storage_bucket.vector_search_data_bucket["prod"].url
|
132
132
|
{% endif %}
|
133
133
|
{% endif %}
|
134
134
|
# Your other Deploy to Prod Pipeline substitutions
|
135
135
|
}
|
136
|
-
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.
|
136
|
+
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.deploy_project_services]
|
137
137
|
|
138
138
|
}
|
@@ -24,7 +24,14 @@ locals {
|
|
24
24
|
"bigquery.googleapis.com",
|
25
25
|
"serviceusage.googleapis.com",
|
26
26
|
"logging.googleapis.com",
|
27
|
-
"cloudtrace.googleapis.com"
|
27
|
+
"cloudtrace.googleapis.com",
|
28
|
+
{%- if "adk" in cookiecutter.tags and cookiecutter.session_type == "alloydb" %}
|
29
|
+
"compute.googleapis.com",
|
30
|
+
"servicenetworking.googleapis.com",
|
31
|
+
"alloydb.googleapis.com",
|
32
|
+
"secretmanager.googleapis.com",
|
33
|
+
"dns.googleapis.com"
|
34
|
+
{%- endif %}
|
28
35
|
]
|
29
36
|
}
|
30
37
|
|
@@ -54,6 +54,9 @@ variable "agentengine_sa_roles" {
|
|
54
54
|
{% endif %}
|
55
55
|
type = list(string)
|
56
56
|
default = [
|
57
|
+
{%- if "adk" in cookiecutter.tags and cookiecutter.session_type == "alloydb" %}
|
58
|
+
"roles/secretmanager.secretAccessor",
|
59
|
+
{%- endif %}
|
57
60
|
"roles/aiplatform.user",
|
58
61
|
"roles/discoveryengine.editor",
|
59
62
|
"roles/logging.logWriter",
|
@@ -61,7 +64,6 @@ variable "agentengine_sa_roles" {
|
|
61
64
|
"roles/storage.admin"
|
62
65
|
]
|
63
66
|
}
|
64
|
-
|
65
67
|
{% if cookiecutter.data_ingestion %}
|
66
68
|
|
67
69
|
variable "pipelines_roles" {
|
{agent_starter_pack-0.7.1 → agent_starter_pack-0.8.0}/src/base_template/deployment/terraform/iam.tf
RENAMED
@@ -25,7 +25,7 @@ resource "google_project_iam_member" "cicd_project_roles" {
|
|
25
25
|
project = var.cicd_runner_project_id
|
26
26
|
role = each.value
|
27
27
|
member = "serviceAccount:${resource.google_service_account.cicd_runner_sa.email}"
|
28
|
-
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.
|
28
|
+
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.deploy_project_services]
|
29
29
|
|
30
30
|
}
|
31
31
|
|
@@ -42,7 +42,7 @@ resource "google_project_iam_member" "other_projects_roles" {
|
|
42
42
|
project = each.value.project_id
|
43
43
|
role = each.value.role
|
44
44
|
member = "serviceAccount:${resource.google_service_account.cicd_runner_sa.email}"
|
45
|
-
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.
|
45
|
+
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.deploy_project_services]
|
46
46
|
}
|
47
47
|
{% if cookiecutter.deployment_target == 'cloud_run' %}
|
48
48
|
# 3. Allow Cloud Run service SA to pull containers stored in the CICD project
|
@@ -52,7 +52,7 @@ resource "google_project_iam_member" "cicd_run_invoker_artifact_registry_reader"
|
|
52
52
|
|
53
53
|
role = "roles/artifactregistry.reader"
|
54
54
|
member = "serviceAccount:service-${data.google_project.projects[each.key].number}@serverless-robot-prod.iam.gserviceaccount.com"
|
55
|
-
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.
|
55
|
+
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.deploy_project_services]
|
56
56
|
|
57
57
|
}
|
58
58
|
|
@@ -69,7 +69,7 @@ resource "google_project_iam_member" "cloud_run_app_sa_roles" {
|
|
69
69
|
project = each.value.project
|
70
70
|
role = each.value.role
|
71
71
|
member = "serviceAccount:${google_service_account.cloud_run_app_sa[split(",", each.key)[0]].email}"
|
72
|
-
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.
|
72
|
+
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.deploy_project_services]
|
73
73
|
}
|
74
74
|
{% elif cookiecutter.deployment_target == 'agent_engine' %}
|
75
75
|
resource "google_project_service_identity" "vertex_sa" {
|
@@ -92,7 +92,7 @@ resource "google_project_iam_member" "vertex_ai_sa_permissions" {
|
|
92
92
|
project = each.value.project
|
93
93
|
role = each.value.role
|
94
94
|
member = "serviceAccount:service-${data.google_project.projects[split("_", each.key)[0]].number}@gcp-sa-aiplatform-re.iam.gserviceaccount.com"
|
95
|
-
depends_on = [resource.google_project_service.
|
95
|
+
depends_on = [resource.google_project_service.deploy_project_services, resource.google_project_service_identity.vertex_sa]
|
96
96
|
}
|
97
97
|
{% endif %}
|
98
98
|
|
@@ -101,14 +101,14 @@ resource "google_service_account_iam_member" "cicd_run_invoker_token_creator" {
|
|
101
101
|
service_account_id = google_service_account.cicd_runner_sa.name
|
102
102
|
role = "roles/iam.serviceAccountTokenCreator"
|
103
103
|
member = "serviceAccount:${resource.google_service_account.cicd_runner_sa.email}"
|
104
|
-
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.
|
104
|
+
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.deploy_project_services]
|
105
105
|
}
|
106
106
|
# Special assignment: Allow the CICD SA to impersonate himself for trigger creation
|
107
107
|
resource "google_service_account_iam_member" "cicd_run_invoker_account_user" {
|
108
108
|
service_account_id = google_service_account.cicd_runner_sa.name
|
109
109
|
role = "roles/iam.serviceAccountUser"
|
110
110
|
member = "serviceAccount:${resource.google_service_account.cicd_runner_sa.email}"
|
111
|
-
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.
|
111
|
+
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.deploy_project_services]
|
112
112
|
}
|
113
113
|
|
114
114
|
{%- if cookiecutter.data_ingestion %}
|
@@ -125,6 +125,6 @@ resource "google_project_iam_member" "vertexai_pipeline_sa_roles" {
|
|
125
125
|
project = each.value.project
|
126
126
|
role = each.value.role
|
127
127
|
member = "serviceAccount:${google_service_account.vertexai_pipeline_app_sa[split(",", each.key)[0]].email}"
|
128
|
-
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.
|
128
|
+
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.deploy_project_services]
|
129
129
|
}
|
130
130
|
{%- endif %}
|
@@ -23,7 +23,7 @@ locals {
|
|
23
23
|
"cloudtrace.googleapis.com"
|
24
24
|
]
|
25
25
|
|
26
|
-
|
26
|
+
deploy_project_services = [
|
27
27
|
"aiplatform.googleapis.com",
|
28
28
|
"run.googleapis.com",
|
29
29
|
"discoveryengine.googleapis.com",
|
@@ -32,7 +32,14 @@ locals {
|
|
32
32
|
"bigquery.googleapis.com",
|
33
33
|
"serviceusage.googleapis.com",
|
34
34
|
"logging.googleapis.com",
|
35
|
-
"cloudtrace.googleapis.com"
|
35
|
+
"cloudtrace.googleapis.com",
|
36
|
+
{%- if "adk" in cookiecutter.tags and cookiecutter.session_type == "alloydb" %}
|
37
|
+
"compute.googleapis.com",
|
38
|
+
"servicenetworking.googleapis.com",
|
39
|
+
"alloydb.googleapis.com",
|
40
|
+
"secretmanager.googleapis.com",
|
41
|
+
"dns.googleapis.com"
|
42
|
+
{%- endif %}
|
36
43
|
]
|
37
44
|
|
38
45
|
deploy_project_ids = {
|
@@ -26,7 +26,7 @@ resource "google_bigquery_dataset" "feedback_dataset" {
|
|
26
26
|
dataset_id = replace("${var.project_name}_feedback", "-", "_")
|
27
27
|
friendly_name = "${var.project_name}_feedback"
|
28
28
|
location = var.region
|
29
|
-
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.
|
29
|
+
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.deploy_project_services]
|
30
30
|
}
|
31
31
|
|
32
32
|
resource "google_bigquery_dataset" "telemetry_logs_dataset" {
|
@@ -35,7 +35,7 @@ resource "google_bigquery_dataset" "telemetry_logs_dataset" {
|
|
35
35
|
dataset_id = replace("${var.project_name}_telemetry", "-", "_")
|
36
36
|
friendly_name = "${var.project_name}_telemetry"
|
37
37
|
location = var.region
|
38
|
-
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.
|
38
|
+
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.deploy_project_services]
|
39
39
|
}
|
40
40
|
|
41
41
|
module "log_export_to_bigquery" {
|
@@ -16,7 +16,7 @@ resource "google_service_account" "cicd_runner_sa" {
|
|
16
16
|
account_id = "${var.project_name}-cb"
|
17
17
|
display_name = "CICD Runner SA"
|
18
18
|
project = var.cicd_runner_project_id
|
19
|
-
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.
|
19
|
+
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.deploy_project_services]
|
20
20
|
}
|
21
21
|
{% if cookiecutter.deployment_target == 'cloud_run' %}
|
22
22
|
resource "google_service_account" "cloud_run_app_sa" {
|
@@ -25,7 +25,7 @@ resource "google_service_account" "cloud_run_app_sa" {
|
|
25
25
|
account_id = "${var.project_name}-cr"
|
26
26
|
display_name = "Cloud Run Generative AI app SA"
|
27
27
|
project = each.value
|
28
|
-
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.
|
28
|
+
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.deploy_project_services]
|
29
29
|
}
|
30
30
|
{% endif %}
|
31
31
|
|
@@ -37,6 +37,6 @@ resource "google_service_account" "vertexai_pipeline_app_sa" {
|
|
37
37
|
account_id = "${var.project_name}-rag"
|
38
38
|
display_name = "Vertex AI Pipeline app SA"
|
39
39
|
project = each.value
|
40
|
-
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.
|
40
|
+
depends_on = [resource.google_project_service.cicd_services, resource.google_project_service.deploy_project_services]
|
41
41
|
}
|
42
42
|
{% endif %}
|