使用标签来识别代码库并将相关代码库分组在一起。您可以为一个代码库指定多个标签。
对整个 Google Cloud 中的代码库和其他资源进行分组, 报告、审核和访问权限控制组织 使用代码。标记和标签彼此独立工作,您可以同时将它们应用于同一代码库。什么是标签?
标签是一种键值对,可分配给 Google Cloud 代码库。它们可以帮助您按照所需的粒度大规模组织这些资源并管理费用。您可以将标签附加到各项资源,然后根据其标签对资源进行过滤。标签的相关信息会转发到结算系统,以便您按标签细分结算费用。使用内置的结算报告,您可以按资源标签对费用进行过滤和分组。您还可以使用标签查询结算数据导出。
标签要求
应用于资源的标签必须符合以下要求:
- 每个资源最多可以有 64 个标签。
- 每个标签都必须采用键值对形式。
- 键至少包含 1 个字符,最多包含 63 个字符,且不能为空。值可以为空,且最多包含 63 个字符。
- 键和值只能包含小写字母、数字字符、下划线和短划线。所有字符必须使用 UTF-8 编码,允许使用国际字符。 键必须以小写字母或国际字符开头。
- 标签的键部分在单个资源内必须是唯一的。不过,您可以将同一个键用于多个资源。
这些限制适用于每个标签的键和值,以及带有标签的各个 Google Cloud 资源。您可以对一个项目的所有资源应用任意数量的标签。
标签的常见用途
以下是标签的一些常见使用场景:
团队或成本中心标签:根据团队或成本中心添加标签,以区分不同团队(例如
team:research
和team:analytics
)所拥有的代码库。您可以在进行成本核算或预算时使用此类标签。组件标签:例如
component:redis
、component:frontend
、component:ingest
、component:dashboard
。环境或阶段标签:例如
environment:production
和environment:test
。状态标签:例如
state:active
、state:readytodelete
、state:archive
。所有权标签:用于标识负责运营的团队,例如:
team:shopping-cart
。
我们不建议创建大量唯一标签,例如为每个 API 调用的时间戳或个别值创建标签。这种方法的问题在于,当值经常变化或键导致目录杂乱时,很难有效地过滤和报告资源。
标签和标记
标签可用作资源可查询的注释,但不能用于设置政策的条件。通过对政策进行精细控制,标记提供了一种有条件地允许或拒绝政策的方法,具体取决于资源是否具有特定的标记。如需了解详情,请参阅标记概览。
添加和更新标签
您可以向代码库添加一个或多个标签。您还可以修改现有标签的值。
如需为代码库添加标签,请执行以下操作:
控制台
打开 Google Cloud 控制台中的制品库页面。
选择一个代码库。
如果代码库列表旁边的信息面板尚未打开,请点击显示信息面板。
在信息面板中,点击标签标签页。
添加或修改标签:
- 如需添加标签,请点击 Add Label。指定键值对 然后点击保存。
- 如需修改现有标签,请更改标签的值,然后点击保存。
gcloud
您可以指定一个或多个要添加或修改的标签。
- 如果存在标签,则会更新相应的值。
- 如果标签不存在,则会创建标签。
- 如果该命令还包含
--clear-labels
标志,则系统会先移除所有现有标签,然后再添加新标签。
运行以下命令:
gcloud artifacts repositories update REPOSITORY [--project=PROJECT] \
[--location=LOCATION] --update-labels="KEY=VALUE,..."
地点
- REPOSITORY 是代码库的名称。如果您配置了默认代码库,则可以省略此标志以使用默认值。
- PROJECT 是 Google Cloud 项目 ID。如果省略此标志,则系统会使用当前项目或默认项目。
- LOCATION是 单区域或多区域 location。 使用此标志可查看特定位置的代码库。如果您配置了默认位置,则可以省略此标志以使用默认值。
KEY=VALUE,...
是指定为键值对且以英文逗号分隔的标签列表。例如:team=team-1,product=example_product,stage=development
。
如需详细了解该命令,请运行以下命令:
gcloud artifacts repositories update --help
按标签过滤代码库
您可以在 Google Cloud 控制台中或使用 Google Cloud CLI 按标签过滤代码库列表。
控制台
打开 Google Cloud 控制台中的制品库页面。
在过滤条件字段中,选择标签作为过滤条件,然后输入键、值或键值对。
例如,如需仅显示标签为
env:dev
的代码库,您可以输入以下任一项:- 输入键:
env
- 输入值:
dev
- 输入键值对:
env:dev
- 输入键:
gcloud
要根据标签进行过滤,请将 --filter
标志与
gcloud artifacts repositories list
命令。
--filter
标志的值必须采用 labels.KEY=VALUE
格式。例如,如果要在活跃的可用区中
以 env
为键、dev
为值的标签上为项目创建项目,则可以运行
此命令:
gcloud artifacts repositories list --filter labels.env=dev
如需详细了解 gcloud CLI 中的过滤条件语法,请参阅 gcloud topic filters
文档。
删除标签
如需删除标签,请执行以下操作:
控制台
打开 Google Cloud 控制台中的制品库页面。
点击选择代码库。
如果代码库列表旁边的信息面板尚未打开,请点击显示信息面板。
在信息面板中,点击标签标签页。
点击您要移除的标签旁边的删除项。
gcloud
您可以删除代码库的特定标签或移除所有标签。
如需移除特定标签,请运行以下命令:
gcloud artifacts repositories update REPOSITORY [--project=PROJECT] \
[--location=LOCATION] --remove-labels="LABEL,..."
如需移除所有标签,请运行以下命令:
gcloud artifacts repositories update REPOSITORY \
[--project=PROJECT] [--location=LOCATION] --clear-labels
地点
- REPOSITORY 是代码库的名称。如果您配置了默认代码库,则可以省略此标志以使用默认值。
- PROJECT 是 Google Cloud 项目 ID。如果省略此标志,则系统会使用当前项目或默认项目。
- LOCATION 是单区域或多区域位置。使用此标志可以查看特定位置的代码库。如果您 配置了默认位置 您可以省略此标志,以使用默认值。
LABEL,...
是以英文逗号分隔的标签列表,标签是每个KEY=VALUE
对中的键。例如:team,product
。
如需详细了解该命令,请运行以下命令:
gcloud artifacts repositories update --help