项目 API
项目 API 的参考指南
摘要
第 1 章 项目 API
1.1. Project [project.openshift.io/v1]
- 描述
项目是 OpenShift 中的隔离和协作单元。项目具有一个或多个成员,针对项目可能会消耗的资源的配额,以及对项目中资源的安全控制。在一个项目中,成员可能具有不同的角色 - 项目管理员可以设置成员资格,编辑器可以创建和管理资源,并且查看者可以访问正在运行的容器。在普通的集群管理员中,管理员无法更改其配额,仅限于集群管理员。
列出或监视项目将仅返回用户具有 reader 角色的项目。
OpenShift 项目是 Kubernetes 命名空间的替代表示。在命名空间不是时,项目会作为可编辑的最终用户公开。直接创建项目通常仅限于管理员,而最终用户应使用 requestproject 资源。
兼容性级别 1:在主发行版本中至少提供 12 个月或 3 个次版本(以更长的时间为准)。
- 类型
-
对象
1.2. ProjectRequest [project.openshift.io/v1]
- 描述
projectrequest 是完全限定项目请求所需的一组选项
兼容性级别 1:在主发行版本中至少提供 12 个月或 3 个次版本(以更长的时间为准)。
- 类型
-
对象
第 2 章 Project [project.openshift.io/v1]
- 描述
项目是 OpenShift 中的隔离和协作单元。项目具有一个或多个成员,针对项目可能会消耗的资源的配额,以及对项目中资源的安全控制。在一个项目中,成员可能具有不同的角色 - 项目管理员可以设置成员资格,编辑器可以创建和管理资源,并且查看者可以访问正在运行的容器。在普通的集群管理员中,管理员无法更改其配额,仅限于集群管理员。
列出或监视项目将仅返回用户具有 reader 角色的项目。
OpenShift 项目是 Kubernetes 命名空间的替代表示。在命名空间不是时,项目会作为可编辑的最终用户公开。直接创建项目通常仅限于管理员,而最终用户应使用 requestproject 资源。
兼容性级别 1:在主发行版本中至少提供 12 个月或 3 个次版本(以更长的时间为准)。
- 类型
-
对象
2.1. 规格
属性 | 类型 | 描述 |
---|---|---|
|
| APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| metadata 是标准对象的元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata | |
|
| ProjectSpec 描述了项目的属性 |
|
| ProjectStatus 是基于项目的当前状态的信息 |
2.1.1. .spec
- 描述
- ProjectSpec 描述了项目的属性
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| finalizers 是必须为空的值的不透明列表,才能从存储中永久删除对象 |
2.1.2. .status
- 描述
- ProjectStatus 是基于项目的当前状态的信息
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
| 代表项目当前状态的最新可用影响。 | |
|
| phase 是项目的当前生命周期阶段
可能枚举值: - |
2.2. API 端点
可用的 API 端点如下:
/apis/project.openshift.io/v1/projects
-
GET
: 列出或监视类型为 Project 的对象 -
POST
:创建项目
-
/apis/project.openshift.io/v1/watch/projects
-
GET
: 观察单个对项目列表的更改。已弃用:改为使用 'watch' 参数及列表操作。
-
/apis/project.openshift.io/v1/projects/{name}
-
DELETE
:删除项目 -
GET
:读取指定的项目 -
PATCH
: 部分更新指定的项目 -
PUT
:替换指定的项目
-
/apis/project.openshift.io/v1/watch/projects/{name}
-
GET
: 观察对类型为 Project 的对象的更改。已弃用:使用带有 list 操作的 'watch' 参数,而是过滤成带有 'fieldSelector' 参数的单个项目。
-
2.2.1. /apis/project.openshift.io/v1/projects
- HTTP 方法
-
GET
- 描述
- 列出或监视类型为 Project 的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
POST
- 描述
- 创建一个项目
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
202 - Accepted |
|
401 - Unauthorized | 空 |
2.2.2. /apis/project.openshift.io/v1/watch/projects
- HTTP 方法
-
GET
- 描述
- 观察单个对项目列表的更改。已弃用:改为使用 'watch' 参数和列表操作。
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
2.2.3. /apis/project.openshift.io/v1/projects/{name}
参数 | 类型 | 描述 |
---|---|---|
|
| 项目的名称 |
- HTTP 方法
-
DELETE
- 描述
- 删除项目
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
202 - Accepted |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
GET
- 描述
- 读取指定的项目
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PATCH
- 描述
- 部分更新指定的项目
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PUT
- 描述
- 替换指定的项目
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
401 - Unauthorized | 空 |
2.2.4. /apis/project.openshift.io/v1/watch/projects/{name}
参数 | 类型 | 描述 |
---|---|---|
|
| 项目的名称 |
- HTTP 方法
-
GET
- 描述
- 观察对类型为 Project 的对象的更改。已弃用:使用带有列表操作的 'watch' 参数,而是过滤成带有 'fieldSelector' 参数的单个项目。
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
第 3 章 ProjectRequest [project.openshift.io/v1]
- 描述
projectrequest 是完全限定项目请求所需的一组选项
兼容性级别 1:在主发行版本中至少提供 12 个月或 3 个次版本(以更长的时间为准)。
- 类型
-
对象
3.1. 规格
属性 | 类型 | 描述 |
---|---|---|
|
| APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| description 是应用到项目的描述 |
|
| displayName 是要应用到项目的显示名称 |
|
| kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| metadata 是标准对象的元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata |
3.2. API 端点
可用的 API 端点如下:
/apis/project.openshift.io/v1/projectrequests
-
GET
: 列出类型为 ProjectRequest 的对象 -
POST
:创建一个 ProjectRequest
-
3.2.1. /apis/project.openshift.io/v1/projectrequests
- HTTP 方法
-
GET
- 描述
- 列出类型为 ProjectRequest 的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
POST
- 描述
- 创建一个 ProjectRequest
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
201 - Created | |
202 - Accepted | |
401 - Unauthorized | 空 |
Legal Notice
Copyright © 2024 Red Hat, Inc.
OpenShift documentation is licensed under the Apache License 2.0 (https://www.apache.org/licenses/LICENSE-2.0).
Modified versions must remove all Red Hat trademarks.
Portions adapted from https://github.com/kubernetes-incubator/service-catalog/ with modifications by Red Hat.
Red Hat, Red Hat Enterprise Linux, the Red Hat logo, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation’s permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.