google / google/adk-go

Add Agent Engine deploy support for prebuilt container image URI

Open
#774 0 comments 0 reactions 1 assignee Claimed by @kdroste-google View on GitHub
enhancement
Dominant language
Go
Stars
8.8k
Forks
1k
Avg merge
3d 18h
Merged PRs (30d)
88

Description

## Summary

Add support for deploying an Agent Engine from a prebuilt Artifact Registry Docker image instead of always packaging local source.

## Motivation

`cloud.google.com/go/aiplatform` v1.124.0 supports setting `ReasoningEngineSpec_ContainerSpec_` with `ImageUri` when creating or updating a Reasoning Engine. This allows users to deploy an already-built container image, avoiding the local `source_dir` archive and generated Dockerfile
flow.

Example image URI:

`us-central1-docker.pkg.dev/my-project/my-repo/my-image:tag`

## Proposed Behavior

Add an --image_url flag to adkgo deploy agentengine.

When --image_url is provided:

- Use ReasoningEngineSpec_ContainerSpec_
- Set ContainerSpec.ImageUri to the provided image URI
- Skip Dockerfile generation
- Skip source archive creation
- Skip local source archive upload
- Reject local-source-only flags:
- --entry_point_path
- --source_dir
- --temp_dir
- explicitly provided --server_port

When --image_url is not provided, preserve the existing local source archive deploy behavior.

## Impact

This adds an alternative deployment path for users who already build and publish their agent container images through CI/CD. Existing local source deployment behavior should remain unchanged.

## Acceptance Criteria

- adkgo deploy agentengine --image_url deploys using ContainerSpec.ImageUri.
- Existing local source deploy flow continues to work.
- Update flow supports both source archive and image URI deployment sources.
- Help text includes an Artifact Registry image URI example.
- Mutually exclusive local-source flags fail fast when used with --image_url.

## Testing Plan

- Run targeted package tests:

go test ./cmd/adkgo/internal/deploy/agentengine

- Manually verify help text includes the --image_url flag and example URI.
- If available, run an E2E deploy with a test Artifact Registry image.

## Documentation / Alignment

This changes CLI behavior and should be reflected in user-facing deployment docs.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.