为代码库添加标签

使用标签来识别代码库并将相关代码库分组在一起。您可以为一个代码库指定多个标签。

如需对 Google Cloud 中的代码库和其他资源进行分组,以便在 Google Cloud 组织中进行报告、审核和访问权限控制,请使用标记。标记和标签彼此独立工作,您可以将它们应用于同一个代码库。

什么是标签?

标签是您可以分配给 Google Cloud 代码库的键值对。它们可帮助您以您需要的精细度组织这些资源并大规模管理费用。您可以将标签附加到各项资源,然后根据其标签对资源进行过滤。有关标签的信息会转发到结算系统,可让您按标签细分已出账单费用。通过内置的结算报告,您可以按资源标签对费用进行过滤和分组。您还可以使用标签来查询结算数据导出

标签要求

应用于资源的标签必须符合以下要求:

  • 每项资源最多可以有 64 个标签。
  • 每个标签都必须采用键值对形式。
  • 键至少包含 1 个字符,最多包含 63 个字符,且不能为空。值可以为空,且最多包含 63 个字符。
  • 键和值只能包含小写字母、数字字符、下划线和短划线。所有字符必须使用 UTF-8 编码,允许使用国际字符。 键必须以小写字母或国际字符开头。
  • 标签的键部分在单个资源内必须是唯一的。不过,您可以将同一个键用于多个资源。

这些限制适用于每个标签的键和值,以及带有标签的各个 Google Cloud 资源。您可以对一个项目的所有资源应用任意数量的标签。

标签的常见用途

以下是标签的一些常见使用场景:

  • 团队或成本中心标签:根据团队或成本中心添加标签,以区分不同团队(例如 team:researchteam:analytics)所拥有的代码库。您可以在进行成本核算或预算时使用此类标签。

  • 组件标签:例如 component:rediscomponent:frontendcomponent:ingestcomponent:dashboard

  • 环境或阶段标签:例如 environment:productionenvironment:test

  • 状态标签:例如 state:activestate:readytodeletestate:archive

  • 所有权标签:用于标识负责运营的团队,例如 team:shopping-cart

我们不建议创建大量唯一标签,例如时间戳或每个 API 调用的单个值。这种方法的问题在于,当值经常变化或键导致目录杂乱时,很难有效地过滤和报告资源。

标签和标记

标签可用作资源可查询的注释,但不能用于设置政策的条件。通过对政策进行精细控制,标记提供了一种有条件地允许或拒绝政策的方法,具体取决于资源是否具有特定的标记。如需了解详情,请参阅标记概览

添加和更新标签

您可以向代码库添加一个或多个标签。您还可以修改现有标签的值。

如需为代码库添加标签,请执行以下操作:

控制台

  1. 打开 Google Cloud 控制台中的制品库页面。

    打开“代码库”页面

  2. 选择一个代码库。

  3. 如果代码库列表旁边的信息面板尚未打开,请点击显示信息面板

  4. 在信息面板中,点击标签标签页。

  5. 添加或修改标签:

    1. 要添加标签,请点击添加标签。为标签指定键值对,然后点击保存
    2. 如需修改现有标签,请更改标签的值,然后点击保存

gcloud

您可以指定一个或多个要添加或修改的标签。

  • 如果存在标签,则会更新相应的值。
  • 如果标签不存在,则会创建标签。
  • 如果该命令还包含 --clear-labels 标志,则系统会先移除所有现有标签,然后再添加新标签。

运行以下命令:

gcloud artifacts repositories update REPOSITORY [--project=PROJECT] \
[--location=LOCATION] --update-labels="KEY=VALUE,..."

地点

  • REPOSITORY 是代码库的名称。如果您配置了默认代码库,则可以省略此标志以使用默认值。
  • PROJECT 是 Google Cloud 项目 ID。如果省略此标志,则系统会使用当前项目或默认项目。
  • LOCATION 是单区域或多区域位置。使用此标志可查看特定位置的代码库。如果您配置了默认位置,可以省略此标志,以便使用默认位置。
  • KEY=VALUE,... 是指定为键值对且以英文逗号分隔的标签列表。例如:team=team-1,product=example_product,stage=development

如需详细了解该命令,请运行以下命令:

gcloud artifacts repositories update --help

按标签过滤代码库

您可以在 Google Cloud 控制台中或使用 Google Cloud CLI 按标签过滤代码库列表。

控制台

  1. 打开 Google Cloud 控制台中的制品库页面。

    打开“代码库”页面

  2. 过滤条件字段中,选择标签作为过滤条件,然后输入键、值或键值对。

    例如,如需仅显示具有 env:dev 标签的代码库,您可以输入以下任一项:

    • 输入键:env
    • 输入值:dev
    • 输入键值对:env:dev

gcloud

如需根据标签进行过滤,请将 --filter 标志与 gcloudartifact repositories list 命令结合使用。

--filter 标志的值必须采用 labels.KEY=VALUE 格式。例如,如果要使用键为 env、值为 dev 的标签过滤活跃项目中的代码库,则可以运行以下命令:

gcloud artifacts repositories list --filter labels.env=dev

如需详细了解 gcloud CLI 中的过滤条件语法,请参阅 gcloud topic filters 文档

删除标签

如需删除标签,请执行以下操作:

控制台

  1. 打开 Google Cloud 控制台中的制品库页面。

    打开“代码库”页面

  2. 点击选择代码库

  3. 如果代码库列表旁边的信息面板尚未打开,请点击显示信息面板

  4. 在信息面板中,点击标签标签页。

  5. 点击您要移除的标签旁边的删除项

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