本页面介绍了如何配置 Developer Connect 代理。
Developer Connect 代理使用 账号连接器增强了 Developer Connect 处理 身份验证和对源代码管理系统 (SCM)、 任意 HTTP 端点(预览版)的网络访问以及 与非 Google 开发者工具提供商的 连接的方式。
为系统连接或账号连接器启用代理后,
Developer Connect 会使用代理服务器向 HTTP 端点
(预览版)发出 Git 请求(例如
git clone)或 API 调用。使用
Google Cloud 控制台创建连接时,系统会默认启用代理。这样,您只需向用户或服务帐号授予 IAM 权限,而无需在 Secret Manager 中管理访问令牌。
例如,在连接上启用 Developer Connect 代理后,您可以执行以下操作:
- 将 Gemini Code Assist 代码自定义功能与私有托管网络(包括 本地网络)中的 SCM 搭配使用。
使用 Google Cloud 身份验证和 Identity and Access Management 权限从外部 SCM 克隆源代码。
将 Gemini Code Review Agent 与私有托管网络(包括 本地网络)中的 SCM 搭配使用(预览版)。
Developer Connect 支持两种类型的代理:
系统连接代理
系统连接代理包括以下内容:
- Git 代理
用于连接到源代码管理系统 (SCM)
- HTTP 代理(预览版)
用于连接到任意 HTTP 端点
账号连接器代理(预览版)
Developer Connect 代理可与 账号连接器搭配使用。
所有这些都使用相同的设置启用。
准备工作
确保您在 Developer Connect 中至少有一个系统连接(连接到 SCM,例如 GitHub、GitLab 或 Bitbucket,或连接到 HTTP 端点)或一个账号连接器。
如需获得为连接配置 Developer Connect 代理所需的权限,请让您的管理员向您授予启用或停用 Developer Connect 代理的用户的 Developer Connect Admin (developerconnect.admin) IAM 角色。如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
您也可以通过自定义 角色或其他预定义 角色来获取所需的权限。
如需获得向连接的代理发出请求所需的权限,请让您的管理员向您授予发出 Git 请求的用户账号或服务帐号的以下 IAM 角色:
-
发出 Git 读取请求(例如
git clone),用于系统连接: Git 代理读取者 (roles/developerconnect.gitProxyReader) -
发出 Git 写入请求(例如
git push),用于系统连接: Git 代理用户 (roles/developerconnect.gitProxyUser) -
发出 Git 读取和写入请求,用于账号连接器:
账号连接器 OAuth 用户 (
roles/developerconnect.oauthUser)
为系统连接启用和停用 Developer Connect 代理设置
使用 Google Cloud 控制台创建系统连接时,系统会默认启用 代理。启用后,Git 代理和 HTTP 代理都会启用。
如需查看和更新代理设置,请执行以下操作:
控制台
在 Google Cloud 控制台中,打开 Developer Connect。
点击连接 标签页,然后点击要使用的连接的名称。
在连接详情 页面上,点击其他配置 标签页。
点击 Developer Connect 代理 开关,以停用或重新启用 Developer Connect 代理功能。
Developer Connect 代理默认处于启用状态。
Google Cloud CLI
为连接启用 Developer Connect 代理设置
如需为连接启用 Developer Connect 代理,请运行 gcloud developer-connect connections update 命令以启用代理设置:
gcloud developer-connect connections update CONNECTION_NAME \
--location=REGION \
--git-proxy-config-enabled
为连接停用 Developer Connect 代理
如需为连接停用 Developer Connect 代理,请运行 gcloud developer-connect connections update 命令以停用代理设置:
gcloud developer-connect connections update CONNECTION_NAME \
--location=REGION \
--no-git-proxy-config-enabled
查看连接的代理设置
如需查看连接的 Developer Connect 代理设置的详细信息,请运行 gcloud developer-connect connections describe 命令:
gcloud developer-connect connections describe CONNECTION_NAME \
--location=REGION
替换以下内容:
- 将 CONNECTION_NAME 替换为连接的名称。
- 将 REGION 替换为连接的 区域。
本文档的其余部分仅包含 Git 代理说明。
为账号连接器启用和停用 Developer Connect 代理设置
使用 Google Cloud 控制台创建账号连接器时,系统会默认启用代理 。启用后,Git 代理和 HTTP 代理都会启用。
如需查看和更新代理设置,请执行以下操作:
控制台
在 Google Cloud 控制台中,打开 Developer Connect。
点击账号连接器 标签页,然后点击要使用的账号连接器的名称。
在连接器详情 页面上,点击配置 标签页。
点击 Developer Connect 代理 开关,以停用或重新启用 Developer Connect 代理功能。
Developer Connect 代理默认处于启用状态。
Google Cloud CLI
为账号连接器启用 Developer Connect 代理设置
如需为账号连接器启用 Developer Connect 代理,请运行以下命令:
gcloud alpha developer-connect account-connectors update CONNECTOR_NAME \
--location=REGION \
--proxy-config-enabled
为账号连接器停用 Developer Connect 代理
如需为连接停用 Developer Connect 代理,请运行以下命令:
gcloud alpha developer-connect account-connectors update CONNECTOR_NAME \
--location=REGION \
--no-proxy-config-enabled
查看账号连接器的代理设置
如需查看连接的 Developer Connect 代理设置的详细信息,请运行以下命令:
gcloud alpha developer-connect account-connectors describe CONNECTOR_NAME \
--location=REGION
替换以下内容:
- 将 CONNECTOR_NAME 替换为账号连接器的名称。
- 将 REGION 替换为账号连接器的 区域。
查找 Git 代理 URI
对于系统连接
启用 Developer Connect 代理后,您可以按照以下步骤查找系统连接的 Git 代理 URI:
控制台
在 Google Cloud 控制台中,打开 Developer Connect。
点击连接 标签页,然后点击要使用的连接的名称。
在连接详情 页面中,点击代码库 标签页。
找到连接的代码库,然后点击 Copy git proxy 网址 (复制 Git 代理网址)。
Google Cloud CLI
如需获取 Git 代理 URI,请运行 gcloud developer-connect connections git-repository-links describe 命令:
gcloud developer-connect connections git-repository-links describe REPOSITORY_NAME \
--connection=CONNECTION_NAME \
--location=REGION
替换以下内容:
- 将 REPOSITORY_NAME 替换为代码库的名称。
- 将 CONNECTION_NAME 替换为连接的名称。
- 将 REGION 替换为连接的 区域。
Developer Connect API
Git 代理 URI 位于连接的
GitRepositoryLink
的git_proxy_url字段中。
对于账号连接器
启用 Developer Connect 代理后,您可以使用以下格式构建账号连接器的 Git 代理 URI:
https://REGION-git.developerconnect.dev/a/PROJECT_ID/CONNECTOR_ID/REPO_PATH
其中:
REGION是您创建账号连接器的区域。PROJECT_ID是您创建账号连接器的项目的 ID。CONNECTOR_ID是您在其中启用了 Git 代理的账号连接器的 ID。REPO_PATH是代码库的 Git 网址中网域之后的所有内容。例如,如果代码库网址为
https://github.com/myusername/test-repo.git,则REPO_PATH为myusername/test-repo。
向 Git 代理发出请求
获取 Git 代理 URI 后,您可以按照以下步骤向 Git 代理发出请求:
配置 Git CLI 以使用 Google Cloud CLI 凭据帮助程序:
git config --global credential.'https://*.developerconnect.dev'.helper gcloud.sh向 Git 代理发出请求。此示例是一个
git clone请求。对于账号连接器:
git clone https://REGION-git.developerconnect.dev/a/PROJECT_NAME/ACCOUNT_CONNECTOR_NAME/ACCOUNT_CONNECTOR_NAME/REPO_PATH如果您不想使用凭据帮助程序,则可以将云访问令牌嵌入到请求中:
git clone https://unused:$(gcloud auth print-access-token)@REGION-git.developerconnect.dev/a/PROJECT_NAME/ACCOUNT_CONNECTOR_NAME/REPO_PATH对于系统连接:
git clone https://REGION.developerconnect.dev/PROJECT_NAME/CONNECTION_NAME/REPOSITORY_NAME如果您不想使用凭据帮助程序,则可以将云访问令牌嵌入到请求中:
git clone https://unused:$(gcloud auth print-access-token)@REGION.developerconnect.dev/PROJECT_NAME/CONNECTION_NAME/REPOSITORY_NAME替换以下内容:
- 将 REGION 替换为账号连接器的 区域。
- 将 PROJECT_NAME 替换为您在其中创建账号连接器的 Google Cloud 项目的 名称。
- 将 ACCOUNT_CONNECTOR_NAME 替换为账号连接器的名称。
- 将 CONNECTION_NAME 替换为系统连接的名称。
- 将 REPOSITORY_NAME 替换为代码库的名称。
- 将 REPO_PATH 替换为代码库的路径,例如
my-org/my-repo。