Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

agents-cli deploy has no --ingress flag for Cloud Run, blocking internal-ingress deploys required by enterprise security policy

クローズ
#87 コメント 1 件 リアクション 0 件 担当者 1 名 GitHub で見る

@asrujana-44 がすでに取り組んでいます。

2026年9月14日 から。

評価

この issue はまだ評価されていません。

説明

What is your feature suggestion?

Add an --ingress flag to agents-cli deploy for the cloud_run target, mapping to gcloud run deploy --ingress (all | internal | internal-and-cloud-load-balancing).

Description

agents-cli deploy --deployment-target cloud_run can only create services with Cloud Run's default ingress of all. The Cloud Run branch of cmd_deploy.py builds a closed argument list for gcloud run deploy — --project, --region, --source/--image, the shape flags applied by _shape_flag, --no-allow-unauthenticated, --no-cpu-throttling, --port, --update-env-vars and --labels. There is no --ingress, and nothing else influences it.

Note that --agent-gateway-ingress is unrelated. It binds an Agent Gateway on Agent Runtime and has no effect on Cloud Run's ingress setting.

Reproduce
agents-cli scaffold create my-agent --agent adk --deployment-target cloud_run --region us-east1 --cicd-runner skip
cd my-agent
agents-cli deploy --project <project> --dry-run

Observed — the printed command carries no --ingress, so the service is created with all:

Would run: gcloud run deploy my-agent --project <project> --region us-east1 --source . --memory 4Gi --cpu 1 --min-instances 0 --max-instances 10 --concurrency 8 --no-allow-unauthenticated --no-cpu-throttling --update-env-vars '...' --labels '...'
Requested fix

Add --ingress [all|internal|internal-and-cloud-load-balancing] to agents-cli deploy, forwarded to gcloud run deploy for the cloud_run target.

What will this enable you to do?

--ingress=internal is frequently a hard security requirement in enterprise environments. The agent must not be reachable from the public internet. Only callers classified internal may reach it — services in the same project, VPC networks with Private Google Access, on-premises hosts over Cloud VPN or Interconnect, and projects inside the same VPC Service Controls perimeter.

This is not a hypothetical configuration. Gemini Enterprise can call an A2A agent on a Cloud Run service deployed with --ingress=internal, given roles/run.invoker for the Discovery Engine service agent. It is a supported, working architecture that agents-cli currently cannot produce.

Deploy-then-flip is not an adequate workaround, and in some projects it is not a workaround at all.

Without an org policy, you can run agents-cli deploy and then gcloud run services update --ingress=internal. That leaves a window during which the agent is publicly reachable. In a regulated environment that window is itself an audit finding.

With constraints/run.allowedIngress enforced, the create is rejected outright. There is no service to update afterwards, so agents-cli deploy cannot be used at all.

Additional context

Relationship to #83. That issue is the same shape for a different target — a missing flag makes an entire class of deploys impossible, while the underlying capability already exists one layer down. Two instances in a week suggests the flag surface under-covers projects operating under org policy constraints.

Relationship to #20, and what I am not asking for. #20 asked for the EXTRA_ARGS passthrough removed in 0.1.2. I am not requesting that, and I understand the reasoning given there for avoiding it. This request is deliberately the alternative offered in that thread:

one thing we can do is examine if it would make sense to promote it to be part of the --deploy interface

--ingress is a small, stable, Cloud Run-native concept with three documented values. It is a first-class flag, not a general escape hatch, and it does not couple the agents-cli interface to an arbitrary surface.

On the --dry-run workaround suggested in #20. It works for a one-off, but it has two problems. It breaks CI/CD for the reason given in #20 — you cannot pause a pipeline to edit a command. And the printed command is not directly runnable, because redact_command in deploy/_utils.py masks every env-var and label value:

Would run: gcloud run deploy ... --update-env-vars 'GOOGLE_GENAI_USE_VERTEXAI=***,GOOGLE_CLOUD_PROJECT=***,...' --labels 'created-by=***'

Every value must be reconstructed by hand before the command will run.

Minor, in the same code path. agents-cli deploy --help states that the cloud_run target dispatches to gcloud beta run deploy. The command actually constructed is gcloud run deploy, with no beta.

Version: agents-cli 1.4.2.

主要言語
Python
スター
6k
フォーク
670
PR マージ指標
30日以内にマージされた PR はありません

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

google/agents-cli のほかの issue

google/agents-cli の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。