* feat(agent-engine): add support for container and custom image specs - Add container_config to deployment_files. - Add image_spec with build_args to source_config. - Make agent_framework optional and document supported values. - Implement dynamic specs for container and source deployments. - Add examples and automated tests for new deployment types. * chore: update Google provider version to 7.28.0 across modules Mechanical update of versions.tf and versions.tofu files using tools/versions.py. * feat(agent-engine): refactor for container deployments and API alignment - Group deployment settings under 'deployment_config' (renamed from 'deployment_files'). - Support container-based deployments via 'container_config' and 'image_spec'. - Refactor 'source_files_config' (renamed from 'source_config') to include mutually exclusive 'python_spec' and 'image_spec'. - Support 'developer_connect_config' as a source code type. - Group engine settings (framework, env, secrets) under 'agent_engine_config'. - Add support for 'memory_bank_config' persistent memory. - Overhaul reasoning engine resources with dynamic blocks to match provider schema. - Update all documentation examples, add TOC, and refresh test inventories. * Update dynamic python_spec block and related example yamls * Ignore changes setting for developer_connect_source under lifecycle management * fixing review comments for `try` and default path for `source_path` --------- Co-authored-by: Hemanand <hemr@google.com> Co-authored-by: Julio Castillo <jccb@google.com>
108 lines
3.4 KiB
YAML
108 lines
3.4 KiB
YAML
# Copyright 2026 Google LLC
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
values:
|
|
module.agent_engine.google_project_iam_member.default["roles/aiplatform.user"]:
|
|
condition: []
|
|
member: serviceAccount:my-agent@project-id.iam.gserviceaccount.com
|
|
project: project-id
|
|
role: roles/aiplatform.user
|
|
module.agent_engine.google_project_iam_member.default["roles/storage.objectViewer"]:
|
|
condition: []
|
|
member: serviceAccount:my-agent@project-id.iam.gserviceaccount.com
|
|
project: project-id
|
|
role: roles/storage.objectViewer
|
|
module.agent_engine.google_project_iam_member.default["roles/viewer"]:
|
|
condition: []
|
|
member: serviceAccount:my-agent@project-id.iam.gserviceaccount.com
|
|
project: project-id
|
|
role: roles/viewer
|
|
module.agent_engine.google_service_account.service_account[0]:
|
|
account_id: my-agent
|
|
create_ignore_already_exists: null
|
|
description: null
|
|
disabled: false
|
|
display_name: my-agent
|
|
email: my-agent@project-id.iam.gserviceaccount.com
|
|
member: serviceAccount:my-agent@project-id.iam.gserviceaccount.com
|
|
project: project-id
|
|
timeouts: null
|
|
module.agent_engine.google_storage_bucket.default[0]:
|
|
autoclass: []
|
|
cors: []
|
|
custom_placement_config: []
|
|
default_event_based_hold: null
|
|
effective_labels:
|
|
goog-terraform-provisioned: 'true'
|
|
enable_object_retention: null
|
|
encryption: []
|
|
force_destroy: false
|
|
hierarchical_namespace: []
|
|
ip_filter: []
|
|
labels: null
|
|
lifecycle_rule: []
|
|
location: EUROPE-WEST8
|
|
logging: []
|
|
name: my-agent
|
|
project: project-id
|
|
requester_pays: null
|
|
retention_policy: []
|
|
storage_class: STANDARD
|
|
terraform_labels:
|
|
goog-terraform-provisioned: 'true'
|
|
timeouts: null
|
|
uniform_bucket_level_access: true
|
|
module.agent_engine.google_vertex_ai_reasoning_engine.managed[0]:
|
|
context_spec: []
|
|
deletion_policy: null
|
|
description: Terraform managed.
|
|
display_name: my-agent
|
|
effective_labels:
|
|
goog-terraform-provisioned: 'true'
|
|
encryption_spec: []
|
|
labels: null
|
|
project: project-id
|
|
region: europe-west8
|
|
spec:
|
|
- agent_framework: google-adk
|
|
class_methods: null
|
|
container_spec: []
|
|
deployment_spec: []
|
|
identity_type: null
|
|
package_spec:
|
|
- dependency_files_gcs_uri: gs://my-bucket/dependencies.tar.gz
|
|
pickle_object_gcs_uri: gs://my-bucket/pickle.pkl
|
|
python_version: '3.13'
|
|
requirements_gcs_uri: gs://my-bucket/requirements.txt
|
|
service_account: my-agent@project-id.iam.gserviceaccount.com
|
|
source_code_spec: []
|
|
terraform_labels:
|
|
goog-terraform-provisioned: 'true'
|
|
timeouts: null
|
|
module.agent_engine.time_sleep.wait_5_minutes:
|
|
create_duration: 5m
|
|
destroy_duration: null
|
|
triggers: null
|
|
|
|
counts:
|
|
google_project_iam_member: 3
|
|
google_service_account: 1
|
|
google_storage_bucket: 1
|
|
google_vertex_ai_reasoning_engine: 1
|
|
modules: 1
|
|
resources: 7
|
|
time_sleep: 1
|
|
|
|
outputs: {}
|