第 2 章 BuildConfig [build.openshift.io/v1]
- 描述
构建配置为新容器镜像定义构建流程。可以使用三种构建类型 - 使用 Dockerfile 构建(Source-to-Image 构建)的 Source-to-Image 构建,它使用特殊准备的基本镜像来接受源代码,以及能够运行 // arbitrary 容器镜像的自定义构建,并作为基础运行并接受构建参数。在集群和完成的时间运行的构建被推送到 "output" 部分中指定的容器镜像 registry。构建可以通过 Webhook 触发,当基础镜像更改时,或者当用户手动请求新构建时。
构建配置创建的每个构建都会编号,并引用其父级配置。可以同时触发多个构建。没有"输出"集的构建可用于测试代码或运行验证构建。
兼容性级别 1:在主发行版本中至少提供 12 个月或 3 个次版本(以更长的时间为准)。
- 类型
-
object
- 必填
-
spec
-
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 | |
|
| BuildConfigSpec 描述了创建构建的时间和方式 |
|
| BuildConfigStatus 包含构建配置对象的当前状态。 |
2.1.1. .spec 复制链接链接已复制到粘贴板!
- 描述
- BuildConfigSpec 描述了创建构建的时间和方式
- 类型
-
object
- 必填
-
策略
-
属性 | 类型 | 描述 |
---|---|---|
|
| completionDeadlineSeconds 是一个可选持续时间(以秒为单位),从系统中调度构建 pod 的时间,在系统主动尝试终止构建前,构建可能在节点上处于活跃状态;值必须是正整数。 |
|
| failedBuildsHistoryLimit 是要保留的旧失败构建的数量。创建 BuildConfig 时,将保留 5 个最新失败构建,除非设置了这个值。如果在 BuildConfig 创建后删除,则所有失败的构建都会被保留。 |
|
| mountTrustedCA 绑定会将集群的可信证书颁发机构(如集群的代理配置中定义的)挂载到构建中。这允许自定义 PKI 证书颁发机构(如私有工件存储库和 HTTPS 代理)签名的构建信任组件内处理。
当此字段设置为 true 时,构建中的 |
|
| nodeSelector 是一个选择器,对于构建 pod 适合某个节点,则必须为 true。如果为 nil,它可以被集群的默认构建 nodeselector 值覆盖。如果设置为空映射或带有任何值的映射,则忽略默认的构建 nodeselector 值。 |
|
| BuildOutput 是构建策略的输入,并描述了策略应生成的容器镜像。 |
|
| BuildPostCommitSpec 包含构建提交 hook 规格。hook 在运行构建输出镜像的临时容器中执行命令,紧接在提交镜像的最后一层后,并在镜像推送到 registry 之前。命令通过当前工作目录($PWD)设置为镜像的 WORKDIR 来执行。 如果 hook 执行失败,构建将标记为失败。如果脚本或命令返回非零退出代码,或者存在与启动临时容器相关的任何其他错误,它将失败。
配置 hook 有五种不同的方法。例如,以下所有形式同等,将执行 1.Shell 脚本: "postCommit": { "script": "rake test --verbose", } 以上是一个便捷的表单,相当于: "postCommit": { "command": ["/bin/sh", "-ic"], "args": ["rake test --verbose"] } 2.作为镜像入口点的命令: "postCommit": { "commit": ["rake", "test", "--verbose"] } 命令覆盖 exec 表单中的镜像入口点,如 Docker 所述 : 3.将参数传递给默认入口点: "postCommit": { "args": ["rake", "test", "--verbose"] } 只有在镜像入口点可以处理参数时,此表单才有用。 4.Shell 脚本带有参数: "postCommit": { "script": "rake test $1", "args": ["--verbose"] } 如果您需要在 shell 脚本中正确传递参数,此表单很有用。在 脚本中,$0 将为 "/bin/sh",$1、$2 等是 Args 中的位置参数。 5.命令带有参数: "postCommit": { "command": ["rake", "test"], "args": ["--verbose"] } 这个表单等同于将参数附加到 Command slice。 同时提供脚本和命令是无效的。如果没有指定任何字段,则不会执行 hook。 |
| 资源计算资源执行构建的要求。 | |
|
| SourceRevision 是构建的修订或提交信息 |
|
| runPolicy 描述了如何调度从此构建配置创建的新构建来执行。如果未指定,则默认为 "Serial"。 |
|
| ServiceAccount 是用于运行此构建创建的 pod 的 ServiceAccount 的名称。pod 允许使用 ServiceAccount 引用的 secret |
|
| BuildSource 是用于构建的 SCM。 |
|
| BuildStrategy 包含如何执行构建的详细信息。 |
|
| successfulBuildsHistoryLimit 是要保留的旧成功构建的数量。创建 BuildConfig 时,将保留 5 个最新成功构建,除非设置了这个值。如果在 BuildConfig 创建后删除,则所有成功构建都会被保留。 |
|
| 触发器决定如何从 BuildConfig 启动新构建。如果没有定义触发器,则只能在创建显式客户端构建后进行新构建。 |
|
| BuildTriggerPolicy 描述了生成新构建的单个触发器的策略。 |
2.1.2. .spec.output 复制链接链接已复制到粘贴板!
- 描述
- BuildOutput 是构建策略的输入,并描述了策略应生成的容器镜像。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| imageLabels 定义应用到生成的镜像的标签列表。如果存在具有相同名称的多个标签,则使用列表中的最后一个标签。 |
|
| ImageLabel 代表应用于生成的镜像的标签。 |
| pushSecret 是 Secret 的名称,用于设置执行 Docker push 的身份验证到启用 Docker Registry (或 Docker Hub)的身份验证。 | |
| 将此构建的输出推送到的可选位置。kind 必须是 'ImageStreamTag' 或 'DockerImage' 之一。这个值将用于查找要推送到的容器镜像存储库。对于 ImageStreamTag,除非指定了 Namespace,否则 ImageStreamTag 将会在构建的命名空间中查找。 |
2.1.3. .spec.output.imageLabels 复制链接链接已复制到粘贴板!
- 描述
- imageLabels 定义应用到生成的镜像的标签列表。如果存在具有相同名称的多个标签,则使用列表中的最后一个标签。
- 类型
-
数组
2.1.4. .spec.output.imageLabels[] 复制链接链接已复制到粘贴板!
- 描述
- ImageLabel 代表应用于生成的镜像的标签。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| name 定义标签的名称。它必须具有非零长度。 |
|
| value 定义标签的字面值。 |
2.1.5. .spec.postCommit 复制链接链接已复制到粘贴板!
- 描述
BuildPostCommitSpec 包含构建提交 hook 规格。hook 在运行构建输出镜像的临时容器中执行命令,紧接在提交镜像的最后一层后,并在镜像推送到 registry 之前。命令通过当前工作目录($PWD)设置为镜像的 WORKDIR 来执行。
如果 hook 执行失败,构建将标记为失败。如果脚本或命令返回非零退出代码,或者存在与启动临时容器相关的任何其他错误,它将失败。
配置 hook 有五种不同的方法。例如,以下所有形式同等,将执行
rake test --verbose
。Shell 脚本:
"postCommit": { "script": "rake test --verbose", }
"postCommit": { "script": "rake test --verbose", }
Copy to Clipboard Copied! Toggle word wrap Toggle overflow The above is a convenient form which is equivalent to:
The above is a convenient form which is equivalent to:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow "postCommit": { "command": ["/bin/sh", "-ic"], "args": ["rake test --verbose"] }
"postCommit": { "command": ["/bin/sh", "-ic"], "args": ["rake test --verbose"] }
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 作为镜像入口点的命令:
"postCommit": { "commit": ["rake", "test", "--verbose"] }
"postCommit": { "commit": ["rake", "test", "--verbose"] }
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Command overrides the image entrypoint in the exec form, as documented in Docker: https://docs.docker.com/engine/reference/builder/#entrypoint.
Command overrides the image entrypoint in the exec form, as documented in Docker: https://docs.docker.com/engine/reference/builder/#entrypoint.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将参数传递给默认入口点:
"postCommit": { "args": ["rake", "test", "--verbose"] }
"postCommit": { "args": ["rake", "test", "--verbose"] }
Copy to Clipboard Copied! Toggle word wrap Toggle overflow This form is only useful if the image entrypoint can handle arguments.
This form is only useful if the image entrypoint can handle arguments.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Shell 脚本带有参数:
"postCommit": { "script": "rake test $1", "args": ["--verbose"] }
"postCommit": { "script": "rake test $1", "args": ["--verbose"] }
Copy to Clipboard Copied! Toggle word wrap Toggle overflow This form is useful if you need to pass arguments that would otherwise be hard to quote properly in the shell script. In the script, $0 will be "/bin/sh" and $1, $2, etc, are the positional arguments from Args.
This form is useful if you need to pass arguments that would otherwise be hard to quote properly in the shell script. In the script, $0 will be "/bin/sh" and $1, $2, etc, are the positional arguments from Args.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 命令带有参数:
"postCommit": { "command": ["rake", "test"], "args": ["--verbose"] }
"postCommit": { "command": ["rake", "test"], "args": ["--verbose"] }
Copy to Clipboard Copied! Toggle word wrap Toggle overflow This form is equivalent to appending the arguments to the Command slice.
This form is equivalent to appending the arguments to the Command slice.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
同时提供脚本和命令是无效的。如果没有指定任何字段,则不会执行 hook。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| args 是提供给 Command、Script 或容器镜像的默认入口点的参数列表。参数将紧接在要运行的命令后面。 |
|
|
命令是要运行的命令。它不能使用 Script 指定。如果镜像没有 |
|
|
脚本是使用 |
2.1.6. .spec.revision 复制链接链接已复制到粘贴板!
- 描述
- SourceRevision 是构建的修订或提交信息
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| GitSourceRevision 是构建的 git 源的提交信息 |
|
| 构建源的类型可以是 'Source', 'Dockerfile', 'Binary', 或 'Images' 之一 |
2.1.7. .spec.revision.git 复制链接链接已复制到粘贴板!
- 描述
- GitSourceRevision 是构建的 git 源的提交信息
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| SourceControlUser 定义源控制用户的身份 |
|
| commit 是标识特定提交的提交哈希 |
|
| SourceControlUser 定义源控制用户的身份 |
|
| message 是特定提交的描述 |
2.1.8. .spec.revision.git.author 复制链接链接已复制到粘贴板!
- 描述
- SourceControlUser 定义源控制用户的身份
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 源控制用户的电子邮件 |
|
| 源控制用户的名称 |
2.1.9. .spec.revision.git.committer 复制链接链接已复制到粘贴板!
- 描述
- SourceControlUser 定义源控制用户的身份
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 源控制用户的电子邮件 |
|
| 源控制用户的名称 |
2.1.10. .spec.source 复制链接链接已复制到粘贴板!
- 描述
- BuildSource 是用于构建的 SCM。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| BinaryBuildSource 描述了用于 Docker 和 Source 构建策略的二进制文件,该文件将提取并用作构建源。 |
|
| ConfigMaps 代表 configMaps 列表,其目的地将用于构建。 |
|
| ConfigMapBuildSource 描述了 configmap 及其目标目录,它们仅在构建时使用。此处引用的 configmap 的内容将复制到目标目录中,而不是挂载。 |
|
| contextDir 指定应用程序的源代码所在的子目录。这允许在存储库根目录以外的目录中具有构建源。 |
|
| Dockerfile 是应构建的 Dockerfile 的原始内容。当指定此选项时,可以根据您的策略基础镜像修改 FROM,您的策略环境中的其他 ENV 小节将添加到 FROM 之后,但在 Dockerfile 小节的其余部分之前。在这些情况下,Dockerfile 源类型可以和 git - 等其他选项一起使用,Git 仓库将在上下文 dir 中替换任何 innate Dockerfile。 |
|
| GitBuildSource 定义 Git SCM 的参数 |
|
| 镜像描述一组用于为构建提供源的镜像 |
|
| ImageSource 用于描述将从镜像中提取的构建源,或者在多阶段构建期间使用。可以使用类型 ImageStreamTag、ImageStreamImage 或 DockerImage 的引用。可以指定 pull secret 以从外部 registry 拉取镜像;如果从内部 registry 中拉取,则覆盖默认服务帐户 secret。镜像源可用于从镜像提取内容,并将其与存储库源一起放入构建上下文中,或者在多阶段容器镜像构建期间直接使用,以允许复制内容而不覆盖存储库源的内容(请参阅"路径"和"as"字段)。 |
|
| secrets 代表 secret 列表及其目的地,仅用于构建。 |
|
| SecretBuildSource 描述了仅在构建时使用的 secret 及其目标目录。此处引用的 secret 的内容将复制到目标目录中,而不是挂载。 |
| sourceSecret 是 Secret 的名称,用于设置用于克隆私有存储库的身份验证。secret 包含远程存储库的有效凭证,其中 data 的键代表要使用的身份验证方法,value 是 base64 编码的凭证。支持的验证方法有:ssh-privatekey. | |
|
| 要接受的构建输入类型 |
2.1.11. .spec.source.binary 复制链接链接已复制到粘贴板!
- 描述
- BinaryBuildSource 描述了用于 Docker 和 Source 构建策略的二进制文件,该文件将提取并用作构建源。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
asFile 表示提供的二进制输入应被视为构建输入中的一个文件。例如,指定"webapp.war"会将提供的二进制文件放在构建器的 |
2.1.12. .spec.source.configMaps 复制链接链接已复制到粘贴板!
- 描述
- ConfigMaps 代表 configMaps 列表,其目的地将用于构建。
- 类型
-
数组
2.1.13. .spec.source.configMaps[] 复制链接链接已复制到粘贴板!
- 描述
- ConfigMapBuildSource 描述了 configmap 及其目标目录,它们仅在构建时使用。此处引用的 configmap 的内容将复制到目标目录中,而不是挂载。
- 类型
-
object
- 必填
-
configMap
-
属性 | 类型 | 描述 |
---|---|---|
| ConfigMap 是您要在构建中使用的现有 configmap 的引用。 | |
|
| destinationDir 是 ConfigMap 中文件应该可用于构建时间的目录。对于 Source 构建策略,它们将注入到运行 assemble 脚本的容器中。对于容器镜像构建策略,它们将复制到构建目录中,其中 Dockerfile 所在的位置,以便在容器镜像构建过程中 ADD 或 COPY。 |
2.1.14. .spec.source.git 复制链接链接已复制到粘贴板!
- 描述
- GitBuildSource 定义 Git SCM 的参数
- 类型
-
object
- 必填
-
uri
-
属性 | 类型 | 描述 |
---|---|---|
|
| httpProxy 是一个代理,用于通过 http 访问 git 存储库 |
|
| httpsProxy 是一个代理,用于通过 https 访问 git 存储库 |
|
| noProxy 是不应使用代理的域列表 |
|
| ref 是要构建的分支/标签/ref。 |
|
| URI 指向将要构建的源。源的结构取决于要运行的构建类型 |
2.1.15. .spec.source.images 复制链接链接已复制到粘贴板!
- 描述
- 镜像描述一组用于为构建提供源的镜像
- 类型
-
数组
2.1.16. .spec.source.images[] 复制链接链接已复制到粘贴板!
- 描述
- ImageSource 用于描述将从镜像中提取的构建源,或者在多阶段构建期间使用。可以使用类型 ImageStreamTag、ImageStreamImage 或 DockerImage 的引用。可以指定 pull secret 以从外部 registry 拉取镜像;如果从内部 registry 中拉取,则覆盖默认服务帐户 secret。镜像源可用于从镜像提取内容,并将其与存储库源一起放入构建上下文中,或者在多阶段容器镜像构建期间直接使用,以允许复制内容而不覆盖存储库源的内容(请参阅"路径"和"as"字段)。
- 类型
-
object
- 必填
-
from
-
属性 | 类型 | 描述 |
---|---|---|
|
| 此源在多阶段容器镜像构建期间将使用的镜像名称列表。例如,使用 "COPY --from=nginx:latest" 的 Dockerfile 将首先检查此字段中具有"nginx:latest"的镜像源,然后再尝试直接拉取。如果 Dockerfile 不引用镜像源,它将被忽略。此字段和路径均可设置,在这种情况下,内容将使用两次。 |
| from 是从 中复制源的 ImageStreamTag、ImageStreamImage 或 DockerImage 的引用。 | |
|
| paths 是从镜像复制的源和目标路径列表。在开始构建前,此内容将复制到构建上下文中。如果没有设置路径,则不会更改构建上下文。 |
|
| ImageSourcePath 描述了要在构建目录中从源镜像复制的路径及其目的地。 |
| pullSecret 是用于从 OpenShift registry 中拉取镜像的 secret 的引用,则不需要设置此字段。 |
2.1.17. .spec.source.images[].paths 复制链接链接已复制到粘贴板!
- 描述
- paths 是从镜像复制的源和目标路径列表。在开始构建前,此内容将复制到构建上下文中。如果没有设置路径,则不会更改构建上下文。
- 类型
-
数组
2.1.18. .spec.source.images[].paths[] 复制链接链接已复制到粘贴板!
- 描述
- ImageSourcePath 描述了要在构建目录中从源镜像复制的路径及其目的地。
- 类型
-
object
- 必填
-
sourcePath
-
destinationDir
-
属性 | 类型 | 描述 |
---|---|---|
|
| destinationDir 是构建目录中的相对目录,其中放置从镜像复制的文件。 |
|
| sourcePath 是镜像中要复制到构建目录的文件或目录的绝对路径。如果源路径以 /. 结尾,则复制目录的内容,但不会在目的地上创建目录本身。 |
2.1.19. .spec.source.secrets 复制链接链接已复制到粘贴板!
- 描述
- secrets 代表 secret 列表及其目的地,仅用于构建。
- 类型
-
数组
2.1.20. .spec.source.secrets[] 复制链接链接已复制到粘贴板!
- 描述
- SecretBuildSource 描述了仅在构建时使用的 secret 及其目标目录。此处引用的 secret 的内容将复制到目标目录中,而不是挂载。
- 类型
-
object
- 必填
-
secret
-
属性 | 类型 | 描述 |
---|---|---|
|
| destinationDir 是构建时间可以使用 secret 中的文件的目录。对于 Source 构建策略,它们将注入到运行 assemble 脚本的容器中。之后,脚本完成后,注入的所有文件都会被截断为零长度。对于容器镜像构建策略,它们将复制到构建目录中,其中 Dockerfile 所在的位置,以便在容器镜像构建过程中 ADD 或 COPY。 |
| Secret 是对要在构建中使用的现有 secret 的引用。 |
2.1.21. .spec.strategy 复制链接链接已复制到粘贴板!
- 描述
- BuildStrategy 包含如何执行构建的详细信息。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| CustomBuildStrategy 定义特定于 Custom build 的输入参数。 |
|
| DockerBuildStrategy 定义特定于容器镜像构建的输入参数。 |
|
| JenkinsPipelineBuildStrategy 包含特定于 Jenkins Pipeline 构建的参数。已弃用:使用 OpenShift Pipelines |
|
| SourceBuildStrategy 定义特定于 Source 构建的输入参数。 |
|
| type 是构建策略的类型。 |
2.1.22. .spec.strategy.customStrategy 复制链接链接已复制到粘贴板!
- 描述
- CustomBuildStrategy 定义特定于 Custom build 的输入参数。
- 类型
-
object
- 必填
-
from
-
属性 | 类型 | 描述 |
---|---|---|
|
| buildAPIVersion 是 Build 对象序列化的请求的 API 版本,并传递给自定义构建器 |
| env 包含您要传递给构建器容器的额外环境变量。 | |
|
| exposeDockerSocket 将允许从容器内运行 Docker 命令(和构建容器镜像)。 |
|
| forcePull 描述控制器应该将构建 pod 配置为始终拉取构建器的镜像,或者仅在本地没有时拉取(pull)。 |
| from 是指应当从中拉取容器镜像的 DockerImage、ImageStreamStream 或 ImageStreamImage 的引用 | |
| pullSecret 是 Secret 的名称,用于设置从私有 Docker registry 中拉取容器镜像的身份验证 | |
|
| secret 是构建 pod 中包含的额外 secret 的列表 |
|
| SecretSpec 指定要包含在构建 pod 中的 secret 及其对应的挂载点 |
2.1.23. .spec.strategy.customStrategy.secrets 复制链接链接已复制到粘贴板!
- 描述
- secret 是构建 pod 中包含的额外 secret 的列表
- 类型
-
数组
2.1.24. .spec.strategy.customStrategy.secrets[] 复制链接链接已复制到粘贴板!
- 描述
- SecretSpec 指定要包含在构建 pod 中的 secret 及其对应的挂载点
- 类型
-
object
- 必填
-
secretSource
-
mountPath
-
属性 | 类型 | 描述 |
---|---|---|
|
| mountPath 是挂载 secret 的路径 |
| secretSource 是对 secret 的引用 |
2.1.25. .spec.strategy.dockerStrategy 复制链接链接已复制到粘贴板!
- 描述
- DockerBuildStrategy 定义特定于容器镜像构建的输入参数。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
| buildArgs 包含要在 Dockerfile 中解析的构建参数。详情请查看 https://docs.docker.com/engine/reference/builder/#/arg。注意:只支持 'name' 和 'value' 字段。'valueFrom' 字段中的任何设置都会被忽略。 | |
|
|
dockerfilePath 是 Dockerfile 的路径,它将用于构建容器镜像,相对于上下文的根目录(contextDir)。如果未设置,则默认为 |
| env 包含您要传递给构建器容器的额外环境变量。 | |
|
| forcePull 描述构建前,构建器是否应该从 registry 中拉取镜像。 |
| from 是 DockerImage、ImageStreamTags 或 ImageStreamImage 的引用,可覆盖构建的 Dockerfile 中的 FROM 镜像。如果 Dockerfile 使用多阶段构建,这将替换文件的最后一个 FROM 指令中的镜像。 | |
|
| imageOptimizationPolicy 描述了系统在构建镜像时可以使用哪些优化,以减少构建镜像的最终大小或时间。默认策略为 'None',这意味着最终构建镜像将等同于由容器镜像构建 API 创建的镜像。实验性策略 'SkipLayers' 将避免在每个镜像步骤之间提交新层,如果 Dockerfile 无法与"None"策略提供兼容性,将失败。一个额外的实验性策略 'SkipLayersAndWarn' 与 'SkipLayers' 相同,只是在无法保留兼容性时警告。 |
|
| 如果设为 true,noCache 表示必须使用 --no-cache=true 标志执行容器镜像构建 |
| pullSecret 是 Secret 的名称,用于设置从私有 Docker registry 中拉取容器镜像的身份验证 | |
|
| 卷是可以挂载到构建运行时环境的输入卷列表。构建只支持 Kubernetes 卷源的子集。更多信息: https://kubernetes.io/docs/concepts/storage/volumes |
|
| BuildVolume 描述了为构建 pod 提供的卷,以便将其挂载到 buildah 的运行时环境中。仅支持 Kubernetes 卷源的子集。 |
2.1.26. .spec.strategy.dockerStrategy.volumes 复制链接链接已复制到粘贴板!
- 描述
- 卷是可以挂载到构建运行时环境的输入卷列表。构建只支持 Kubernetes 卷源的子集。更多信息: https://kubernetes.io/docs/concepts/storage/volumes
- 类型
-
数组
2.1.27. .spec.strategy.dockerStrategy.volumes[] 复制链接链接已复制到粘贴板!
- 描述
- BuildVolume 描述了为构建 pod 提供的卷,以便将其挂载到 buildah 的运行时环境中。仅支持 Kubernetes 卷源的子集。
- 类型
-
object
- 必填
-
name
-
source
-
mounts
-
属性 | 类型 | 描述 |
---|---|---|
|
| mounts 代表镜像构建容器中的卷位置 |
|
| BuildVolumeMount 描述了在 buildah 的运行时环境中挂载卷。 |
|
| name 是此 BuildVolume 的唯一标识符。它必须符合 Kubernetes DNS 标签标准,并在 pod 中唯一。与构建控制器添加的名称将会导致构建失败,并显示错误消息,详细描述了导致错误的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names |
|
| BuildVolumeSource 代表卷的来源,在任何给定时间只能指定其支持的类型之一。 |
2.1.28. .spec.strategy.dockerStrategy.volumes[].mounts 复制链接链接已复制到粘贴板!
- 描述
- mounts 代表镜像构建容器中的卷位置
- 类型
-
数组
2.1.29. .spec.strategy.dockerStrategy.volumes[].mounts[] 复制链接链接已复制到粘贴板!
- 描述
- BuildVolumeMount 描述了在 buildah 的运行时环境中挂载卷。
- 类型
-
object
- 必填
-
destinationPath
-
属性 | 类型 | 描述 |
---|---|---|
|
| destinationPath 是 buildah 运行时环境中的路径,其应挂载该卷。构建镜像中的临时挂载和后备卷都将被挂载为只读。必须是绝对路径,不得包含 '..' 或 ':',且不得与构建器进程路径生成的目的地路径冲突,使构建控制器添加的构建将产生一个失败的构建,并详细描述了哪个路径导致错误导致错误。 |
2.1.30. .spec.strategy.dockerStrategy.volumes[].source 复制链接链接已复制到粘贴板!
- 描述
- BuildVolumeSource 代表卷的来源,在任何给定时间只能指定其支持的类型之一。
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
| ConfigMap 代表应填充此卷的 ConfigMap | |
| CSI 代表外部 CSI 驱动程序提供的临时存储,支持此功能 | |
| Secret 代表应填充此卷的 Secret。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#secret | |
|
| type 是卷源的 BuildVolumeSourceType。type 必须与填充的卷源匹配。有效类型有: Secret、ConfigMap |
2.1.31. .spec.strategy.jenkinsPipelineStrategy 复制链接链接已复制到粘贴板!
- 描述
- JenkinsPipelineBuildStrategy 包含特定于 Jenkins Pipeline 构建的参数。已弃用:使用 OpenShift Pipelines
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
| env 包含您要传递给构建管道的额外环境变量。 | |
|
| Jenkinsfile 定义 Jenkinsfile 的可选原始内容,用于定义 Jenkins 管道构建。 |
|
| jenkinsfilePath 是 Jenkinsfile 的可选路径,它将用于配置相对于上下文的根目录(contextDir)的管道。如果同时没有指定 JenkinsfilePath 和 Jenkinsfile,则默认为指定 contextDir 中的 Jenkinsfile。 |
2.1.32. .spec.strategy.sourceStrategy 复制链接链接已复制到粘贴板!
- 描述
- SourceBuildStrategy 定义特定于 Source 构建的输入参数。
- 类型
-
object
- 必填
-
from
-
属性 | 类型 | 描述 |
---|---|---|
| env 包含您要传递给构建器容器的额外环境变量。 | |
|
| forcePull 描述构建前,构建器是否应该从 registry 中拉取镜像。 |
| from 是指应当从中拉取容器镜像的 DockerImage、ImageStreamStream 或 ImageStreamImage 的引用 | |
|
| 如果为 true,则增量标志会强制 Source 构建执行增量构建。 |
| pullSecret 是 Secret 的名称,用于设置从私有 Docker registry 中拉取容器镜像的身份验证 | |
|
| 脚本是源脚本的位置 |
|
| 卷是可以挂载到构建运行时环境的输入卷列表。构建只支持 Kubernetes 卷源的子集。更多信息: https://kubernetes.io/docs/concepts/storage/volumes |
|
| BuildVolume 描述了为构建 pod 提供的卷,以便将其挂载到 buildah 的运行时环境中。仅支持 Kubernetes 卷源的子集。 |
2.1.33. .spec.strategy.sourceStrategy.volumes 复制链接链接已复制到粘贴板!
- 描述
- 卷是可以挂载到构建运行时环境的输入卷列表。构建只支持 Kubernetes 卷源的子集。更多信息: https://kubernetes.io/docs/concepts/storage/volumes
- 类型
-
数组
2.1.34. .spec.strategy.sourceStrategy.volumes[] 复制链接链接已复制到粘贴板!
- 描述
- BuildVolume 描述了为构建 pod 提供的卷,以便将其挂载到 buildah 的运行时环境中。仅支持 Kubernetes 卷源的子集。
- 类型
-
object
- 必填
-
name
-
source
-
mounts
-
属性 | 类型 | 描述 |
---|---|---|
|
| mounts 代表镜像构建容器中的卷位置 |
|
| BuildVolumeMount 描述了在 buildah 的运行时环境中挂载卷。 |
|
| name 是此 BuildVolume 的唯一标识符。它必须符合 Kubernetes DNS 标签标准,并在 pod 中唯一。与构建控制器添加的名称将会导致构建失败,并显示错误消息,详细描述了导致错误的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names |
|
| BuildVolumeSource 代表卷的来源,在任何给定时间只能指定其支持的类型之一。 |
2.1.35. .spec.strategy.sourceStrategy.volumes[].mounts 复制链接链接已复制到粘贴板!
- 描述
- mounts 代表镜像构建容器中的卷位置
- 类型
-
数组
2.1.36. .spec.strategy.sourceStrategy.volumes[].mounts[] 复制链接链接已复制到粘贴板!
- 描述
- BuildVolumeMount 描述了在 buildah 的运行时环境中挂载卷。
- 类型
-
object
- 必填
-
destinationPath
-
属性 | 类型 | 描述 |
---|---|---|
|
| destinationPath 是 buildah 运行时环境中的路径,其应挂载该卷。构建镜像中的临时挂载和后备卷都将被挂载为只读。必须是绝对路径,不得包含 '..' 或 ':',且不得与构建器进程路径生成的目的地路径冲突,使构建控制器添加的构建将产生一个失败的构建,并详细描述了哪个路径导致错误导致错误。 |
2.1.37. .spec.strategy.sourceStrategy.volumes[].source 复制链接链接已复制到粘贴板!
- 描述
- BuildVolumeSource 代表卷的来源,在任何给定时间只能指定其支持的类型之一。
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
| ConfigMap 代表应填充此卷的 ConfigMap | |
| CSI 代表外部 CSI 驱动程序提供的临时存储,支持此功能 | |
| Secret 代表应填充此卷的 Secret。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#secret | |
|
| type 是卷源的 BuildVolumeSourceType。type 必须与填充的卷源匹配。有效类型有: Secret、ConfigMap |
2.1.38. .spec.triggers 复制链接链接已复制到粘贴板!
- 描述
- 触发器决定如何从 BuildConfig 启动新构建。如果没有定义触发器,则只能在创建显式客户端构建后进行新构建。
- 类型
-
数组
2.1.39. .spec.triggers[] 复制链接链接已复制到粘贴板!
- 描述
- BuildTriggerPolicy 描述了生成新构建的单个触发器的策略。
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| WebHookTrigger 是一个触发器,它使用 webhook 类型 post 调用 |
|
| WebHookTrigger 是一个触发器,它使用 webhook 类型 post 调用 |
|
| WebHookTrigger 是一个触发器,它使用 webhook 类型 post 调用 |
|
| WebHookTrigger 是一个触发器,它使用 webhook 类型 post 调用 |
|
| ImageChangeTrigger 允许在 ImageStream 更改时触发构建 |
|
| type 是构建触发器的类型。有效值: - GitHub GitHubWebHookBuildTriggerType 代表一个触发器,它在 GitHub Webhook 调用上启动构建 - generic GenericWebHookBuildTriggerType 代表在通用 Webhook 调用上启动构建的触发器 - GitLab GitLabWebHookBuildTriggerType 代表在 GitLab Webhook 调用上启动构建的触发器 - Bitbucket BitbucketWebHookBuildTriggerType 代表在 Bitbucket Webhook 调用上启动构建的触发器 - ImageChange ImageChangeBuildTriggerType 代表一个触发器,它根据镜像的新版本的可用性启动构建 - ConfigChange ConfigChangeBuildTriggerType 将在初始构建配置创建 WARNING 上触发构建:未来行为将更改为触发任何配置更改上的构建 |
2.1.40. .spec.triggers[].bitbucket 复制链接链接已复制到粘贴板!
- 描述
- WebHookTrigger 是一个触发器,它使用 webhook 类型 post 调用
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| allowEnv 决定 webhook 是否可以设置环境变量;对于 GenericWebHook,只能设置为 true。 |
|
| 用于验证请求的 secret。deprecated: 使用 SecretReference 替代。 |
|
| SecretLocalReference 包含指向所使用的本地 secret 的信息 |
2.1.41. .spec.triggers[].bitbucket.secretReference 复制链接链接已复制到粘贴板!
- 描述
- SecretLocalReference 包含指向所使用的本地 secret 的信息
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| name 是被引用同一命名空间中的资源的名称 |
2.1.42. .spec.triggers[].generic 复制链接链接已复制到粘贴板!
- 描述
- WebHookTrigger 是一个触发器,它使用 webhook 类型 post 调用
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| allowEnv 决定 webhook 是否可以设置环境变量;对于 GenericWebHook,只能设置为 true。 |
|
| 用于验证请求的 secret。deprecated: 使用 SecretReference 替代。 |
|
| SecretLocalReference 包含指向所使用的本地 secret 的信息 |
2.1.43. .spec.triggers[].generic.secretReference 复制链接链接已复制到粘贴板!
- 描述
- SecretLocalReference 包含指向所使用的本地 secret 的信息
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| name 是被引用同一命名空间中的资源的名称 |
2.1.44. .spec.triggers[].github 复制链接链接已复制到粘贴板!
- 描述
- WebHookTrigger 是一个触发器,它使用 webhook 类型 post 调用
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| allowEnv 决定 webhook 是否可以设置环境变量;对于 GenericWebHook,只能设置为 true。 |
|
| 用于验证请求的 secret。deprecated: 使用 SecretReference 替代。 |
|
| SecretLocalReference 包含指向所使用的本地 secret 的信息 |
2.1.45. .spec.triggers[].github.secretReference 复制链接链接已复制到粘贴板!
- 描述
- SecretLocalReference 包含指向所使用的本地 secret 的信息
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| name 是被引用同一命名空间中的资源的名称 |
2.1.46. .spec.triggers[].gitlab 复制链接链接已复制到粘贴板!
- 描述
- WebHookTrigger 是一个触发器,它使用 webhook 类型 post 调用
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| allowEnv 决定 webhook 是否可以设置环境变量;对于 GenericWebHook,只能设置为 true。 |
|
| 用于验证请求的 secret。deprecated: 使用 SecretReference 替代。 |
|
| SecretLocalReference 包含指向所使用的本地 secret 的信息 |
2.1.47. .spec.triggers[].gitlab.secretReference 复制链接链接已复制到粘贴板!
- 描述
- SecretLocalReference 包含指向所使用的本地 secret 的信息
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| name 是被引用同一命名空间中的资源的名称 |
2.1.48. .spec.triggers[].imageChange 复制链接链接已复制到粘贴板!
- 描述
- ImageChangeTrigger 允许在 ImageStream 更改时触发构建
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
| from 是对 ImageStreamTag 的引用,该引用将在更新时触发构建是可选的。如果没有指定 From,则使用构建策略中的 From 镜像。构建配置中只允许一个带有空的 From 引用的一个 ImageChangeTrigger。 | |
|
| lastTriggeredImageID 由 ImageChangeController 在内部使用,以保存构建此字段的最后使用的镜像 ID 已被弃用,并将在以后的发行版本中删除。Deprecated |
|
| 如果此触发器被临时禁用,则暂停为 true。可选。 |
2.1.49. .status 复制链接链接已复制到粘贴板!
- 描述
- BuildConfigStatus 包含构建配置对象的当前状态。
- 类型
-
object
- 必填
-
lastVersion
-
属性 | 类型 | 描述 |
---|---|---|
|
| ImageChangeTriggers 捕获 BuildConfigSpec 中指定的任何 ImageChangeTrigger 的运行时状态,包括 OpenShift APIServer 为 lastTriggeredImageID 协调的值。这个数组中有一个条目用于 spec 中的每个镜像更改触发器。每个触发器状态引用作为触发器源的 ImageStreamTag。 |
|
| ImageChangeTriggerStatus 跟踪 BuildConfigSpec.Triggers struct 中指定的关联 ImageChangeTrigger 策略的最新解析状态。 |
|
| lastVersion 用于告知最后触发的构建数量。 |
2.1.50. .status.imageChangeTriggers 复制链接链接已复制到粘贴板!
- 描述
- ImageChangeTriggers 捕获 BuildConfigSpec 中指定的任何 ImageChangeTrigger 的运行时状态,包括 OpenShift APIServer 为 lastTriggeredImageID 协调的值。这个数组中有一个条目用于 spec 中的每个镜像更改触发器。每个触发器状态引用作为触发器源的 ImageStreamTag。
- 类型
-
数组
2.1.51. .status.imageChangeTriggers[] 复制链接链接已复制到粘贴板!
- 描述
- ImageChangeTriggerStatus 跟踪 BuildConfigSpec.Triggers struct 中指定的关联 ImageChangeTrigger 策略的最新解析状态。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| ImageStreamTagReference 根据命名空间和名称引用镜像更改触发器中的 ImageStreamTag。 |
| lastTriggerTime 是这个特定 ImageStreamTag 最后一次触发构建来启动的时间。只有在此触发器特别启动 Build 时,此字段才会更新。 | |
|
| 当为此 BuildConfig 的构建启动时,lastTriggeredImageID 代表 ImageStreamTag 的 sha/id。每次启动此 BuildConfig 的构建时都会更新 lastTriggeredImageID,即使此 ImageStreamTag 不是启动构建的原因。 |
2.1.52. .status.imageChangeTriggers[].from 复制链接链接已复制到粘贴板!
- 描述
- ImageStreamTagReference 根据命名空间和名称引用镜像更改触发器中的 ImageStreamTag。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| name 是 ImageChangeTrigger 的 ImageStreamTag 的名称 |
|
| namespace 是 ImageChangeTrigger 的 ImageStreamTag 所在的命名空间 |