1.5. Channels API


1.5.1. 概述

本文档介绍了与 Red Hat Advanced Cluster Management for Kubernetes 的频道资源相关的 API 信息。频道资源有 4 个可用的请求:create、query、delete 和 update。

1.5.1.1. 版本信息

版本 : 2.8.0

1.5.1.2. URI scheme

BasePath : /kubernetes/apis
Schemes : HTTPS

1.5.1.3. Tags

  • channels.apps.open-cluster-management.io : 创建和管理可部署性资源(deployables)

1.5.2. 路径

1.5.2.1. 创建频道

POST /apps.open-cluster-management.io/v1/namespaces/{namespace}/channels
1.5.2.1.1. 描述

创建频道

1.5.2.1.2. 参数
类型Name描述模式

标头

COOKIE
必需

身份验证:Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN 是用户访问令牌。

字符串

路径

namespace
必需

要使用的命名空间,如 default。

字符串

Body

body
必需

描述要创建的 deployable 的参数。

Channel

1.5.2.1.3. 响应
HTTP 代码描述模式

200

成功

无内容

403

禁止访问

无内容

404

未找到资源

无内容

500

内部服务错误

无内容

503

服务不可用

无内容

1.5.2.1.4. 使用
  • application/yaml
1.5.2.1.5. Tags
  • channels.apps.open-cluster-management.io
1.5.2.1.6. HTTP 请求示例
1.5.2.1.6.1. 请求正文
{
  "apiVersion": "apps.open-cluster-management.io/v1",
  "kind": "Channel",
  "metadata": {
    "name": "sample-channel",
    "namespace": "default"
  },
  "spec": {
    "configMapRef": {
      "kind": "configmap",
      "name": "info-resource-filter-configmap"
    },
    "pathname": "https://charts.helm.sh/stable",
    "type": "HelmRepo"
  }
}

1.5.2.2. 为目标命名空间查询所有频道

GET /apps.open-cluster-management.io/v1/namespaces/{namespace}/channels
1.5.2.2.1. 描述

查询您的频道以获得更详细的信息。

1.5.2.2.2. 参数
类型Name描述模式

标头

COOKIE
必需

身份验证:Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN 是用户访问令牌。

字符串

路径

namespace
必需

要使用的命名空间,如 default。

字符串

1.5.2.2.3. 响应
HTTP 代码描述模式

200

成功

无内容

403

禁止访问

无内容

404

未找到资源

无内容

500

内部服务错误

无内容

503

服务不可用

无内容

1.5.2.2.4. 使用
  • application/yaml
1.5.2.2.5. Tags
  • channels.apps.open-cluster-management.io

1.5.2.3. 查询命名空间的单个频道

GET /apps.open-cluster-management.io/v1/namespaces/{namespace}/channels/{channel_name}
1.5.2.3.1. 描述

查询单个频道以了解更多详情。

1.5.2.3.2. 参数
类型Name描述模式

标头

COOKIE
必需

身份验证:Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN 是用户访问令牌。

字符串

路径

channel_name
必需

您要查询的 deployable 的名称。

字符串

路径

namespace
必需

要使用的命名空间,如 default。

字符串

1.5.2.3.3. 响应
HTTP 代码描述模式

200

成功

无内容

403

禁止访问

无内容

404

未找到资源

无内容

500

内部服务错误

无内容

503

服务不可用

无内容

1.5.2.3.4. Tags
  • channels.apps.open-cluster-management.io

1.5.2.4. 删除频道

DELETE /apps.open-cluster-management.io/v1/namespaces/{namespace}/channels/{channel_name}
1.5.2.4.1. 参数
类型Name描述模式

标头

COOKIE
必需

身份验证:Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN 是用户访问令牌。

字符串

路径

channel_name
必需

要删除的频道名称。

字符串

路径

namespace
必需

要使用的命名空间,如 default。

字符串

1.5.2.4.2. 响应
HTTP 代码描述模式

200

成功

无内容

403

禁止访问

无内容

404

未找到资源

无内容

500

内部服务错误

无内容

503

服务不可用

无内容

1.5.2.4.3. Tags
  • channels.apps.open-cluster-management.io

1.5.3. 定义

1.5.3.1. Channel

Name模式

apiVersion
必需

字符串

kind
必需

字符串

metadata
必需

对象

spec
必需

spec

spec

Name描述模式

configMapRef
可选

ObjectReference 包含足够信息供您检查或修改引用的对象。

configMapRef

gates
可选

ChannelGate 定义推广到频道的条件

gates

pathname
必需

 

字符串

secretRef
可选

ObjectReference 包含足够信息供您检查或修改引用的对象。

secretRef

sourceNamespaces
可选

 

enum (Namespace, HelmRepo, ObjectBucket, Git, namespace, helmrepo, objectbucket, github) array

configMapRef

Name描述模式

apiVersion
可选

引用的 API 版本。

字符串

fieldPath
可选

如果引用的是对象的一部分而非整个对象,则该字符串应包含有效的 JSON/Go 字段访问声明,如 desiredState.manifest.containers[2]。例如,如果对象引用是一个 pod 中的容器,它应该还以下类似: "spec.containers{name}"(其中 "name" 是指触发事件的容器的名称),如果不使用容器名称,则应类似于 "spec.containers[2]"(使用此 pod 中索引值为 2 的容器)。选择这个语法的原因是,为了有一些指向对象部分的正确定义方法。Todo: 这个设计不是最终设计的,且该字段在将来会有所改变。

字符串

kind
可选

引用的类型。更多信息:https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/

name
可选

引用的名称。更多信息: 名称

字符串

namespace
可选

引用的命名空间。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/

字符串

resourceVersion
可选

指定构成这个引用的 resourceVersion(如果存在)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency

字符串

uid
可选

gates

Name描述模式

annotations
可选

k8s 的典型注解

annotations

labelSelector
可选

标签选择器,即一组资源的标签查询。matchLabels 和 matchExpressions 的逻辑关系是 AND。空标签选择器匹配所有对象。null 标签选择器不匹配任何对象。

labelSelector

name
可选

 

字符串

annotations

Name模式

key
可选

字符串

value
可选

字符串

labelSelector

Name描述模式

matchExpressions
可选

matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。

matchExpressions 数组

matchLabels
可选

matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。

字符串、字符串映射

matchExpressions

Name描述模式

key
必需

key 是选择器应用到的标签键。

字符串

operator
必需

运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。

字符串

values
可选

值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。

字符串数组

secretRef

Name描述模式

apiVersion
可选

引用的 API 版本。

字符串

fieldPath
可选

如果引用的是对象的一部分而非整个对象,则该字符串应包含有效的 JSON/Go 字段访问声明,如 desiredState.manifest.containers[2]。例如,如果对象引用是一个 pod 中的容器,它应该还以下类似: "spec.containers{name}"(其中 "name" 是指触发事件的容器的名称),如果不使用容器名称,则应类似于 "spec.containers[2]"(使用此 pod 中索引值为 2 的容器)。选择这个语法的原因是,为了有一些指向对象部分的正确定义方法。Todo: 这个设计不是最终设计的,且该字段在将来会有所改变。

字符串

kind
可选

引用的类型。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

字符串

name
可选

引用的名称。更多信息: 名称

字符串

namespace
可选

引用的命名空间。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/

字符串

resourceVersion
可选

指定构成这个引用的 resourceVersion(如果存在)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency

字符串

uid
可选

引用的 UID。更多信息: UIID

字符串

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.