第2章 BuildConfig [build.openshift.io/v1]


Description

ビルド設定は、新しいコンテナーイメージのビルドプロセスを定義します。Dockerfile を使用したコンテナーイメージのビルド、特別に用意したベースイメージを使用し、実行可能なソースコードを受け付ける Source-to-Image ビルド、そして任意のコンテナーイメージをベースとして実行し、ビルドパラメーターを受け付けるカスタムビルドの 3 種類が可能となります。ビルドはクラスター上で実行され、完了すると、"output" セクションで指定されたコンテナーイメージレジストリーにプッシュされます。ビルドは、Webhook を介して、ベースイメージが変更されたとき、またはユーザーが手動で新しいビルドの作成を要求したときにトリガーできます。

ビルド設定によって作成された各ビルドには番号が付けられ、その親設定を参照します。複数のビルドを一度にトリガーできます。"output" が設定されていないビルドを使用して、コードをテストしたり、検証ビルドを実行したりできます。

互換性レベル 1: メジャーリリース内で最低 12 か月または 3 つのマイナーリリース (どちらか長い方) の間安定しています。

タイプ
object
必須
  • spec

2.1. 仕様

プロパティータイプ説明

apiVersion

string

APIVersion はオブジェクトのこの表現のバージョンスキーマを定義します。サーバーは認識されたスキーマを最新の内部値に変換し、認識されない値は拒否することがあります。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources を参照してください。

kind

string

kind はこのオブジェクトが表す REST リソースを表す文字列の値です。サーバーはクライアントが要求を送信するエンドポイントからこれを推測できることがあります。これを更新することはできません。CamelCase を使用します。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds を参照してください。

metadata

ObjectMeta

 

spec

object

BuildConfigSpec は、ビルドがいつどのように作成されるかを記述します

status

object

BuildConfigStatus には、ビルド設定オブジェクトの現在の状態が含まれます。

2.1.1. .spec

Description
BuildConfigSpec は、ビルドがいつどのように作成されるかを記述します
タイプ
object
必須
  • strategy
プロパティータイプDescription

completionDeadlineSeconds

integer

completeDeadlineSeconds は、ビルド Pod がシステムでスケジュールされた時間から数えて、システムがアクティブにビルドを終了しようとする前に、ノードでビルドがアクティブになる可能性がある秒単位の任意の期間です。値は正の整数でなければなりません

failedBuildsHistoryLimit

integer

failedBuildsHistoryLimit は、保持するために失敗した古いビルドの数です。BuildConfig が作成されると、この値が設定されていない限り、最近失敗した 5 つのビルドが保持されます。BuildConfig の作成後に削除すると、失敗したビルドはすべて保持されます。

mountTrustedCA

boolean

mountTrustedCA バインドは、クラスターのプロキシー設定で定義されているように、クラスターの信頼できる認証局をビルドにマウントします。これにより、プライベートアーティファクトリーポジトリーや HTTPS プロキシーなど、カスタム PKI 認証局により署名されたビルド信頼コンポーネント内のプロセスが可能になります。

このフィールドを true に設定すると、ビルド内の /etc/pki/ca-trust のコンテンツはビルドコンテナーにより管理され、このディレクトリーまたはそのサブディレクトリーへの変更 (たとえば、Dockerfile RUN 命令内) はビルドの出力イメージに永続化されなくなります。

nodeSelector

object (string)

nodeSelector は、ビルド Pod がノードに収まるようにするために true である必要があるセレクターです。nil の場合は、クラスターのデフォルトのビルドの nodeselector 値をオーバーライドできます。空のマップまたは任意の値のマップに設定されている場合、デフォルトのビルドの nodeselector 値は無視されます。

output

object

BuildOutput は、ビルドストラテジーへの入力であり、ストラテジーが生成する必要のあるコンテナーイメージを記述します。

postCommit

object

BuildPostCommitSpec は、ビルドポストコミットフック仕様を保持します。フックは、イメージの最後のレイヤーがコミットされた直後、イメージがレジストリーにプッシュされる前に、ビルド出力イメージを実行している一時コンテナーでコマンドを実行します。コマンドは、現在の作業ディレクトリー ($ PWD) をイメージの WORKDIR に設定して実行されます。

フックの実行が失敗すると、ビルドは失敗としてマークされます。スクリプトまたはコマンドがゼロ以外の終了コードを返す場合、または一時コンテナーの開始に関連するその他のエラーがある場合は失敗します。

フックを設定するには、5 つの異なる方法があります。例として、以下のすべての形式は同等であり、rake test --verbose を実行します。

1.シェルスクリプト:

"postCommit": { "script": "rake test --verbose", }

上記は、以下と同等の便利な形式です。

"postCommit": { "command": ["/bin/sh", "-ic"], "args": ["rake test --verbose"] }

2.イメージエントリーポイントとしてのコマンド:

"postCommit": { "commit": ["rake", "test", "--verbose"] }

Docker (https://docs.docker.com/engine/reference/builder/#entrypoint) に記載されているように、コマンドは exec 形式のイメージエントリーポイントをオーバーライドします。

3.デフォルトのエントリーポイントに引数を渡します。

"postCommit": { "args": ["rake", "test", "--verbose"] }

この形式は、イメージエントリーポイントが引数を処理できる場合にのみ役立ちます。

4.引数を指定したシェルスクリプト:

"postCommit": { "script": "rake test $1", "args": ["--verbose"] }

このフォームは、引数を渡す必要があるが、シェルスクリプトで正しく引用するのが困難な場合に有益です。上記のスクリプトでは、$0 は "/bin/sh" で、$1、$2 などは Args の位置引数となります。

5.引数のあるコマンド:

"postCommit": { "command": ["rake", "test"], "args": ["--verbose"] }

この形式は、Command スライスに引数を追加するのと同じです。

スクリプトとコマンドの両方を同時に提供することは無効です。どのフィールドも指定されていないと、フックは実行されません。

resources

resourceRequirements

resources は、ビルドを実行するためのリソース要件を計算します。

revision

object

SourceRevision は、ビルドのソースからのリビジョンまたはコミット情報です

runPolicy

string

RunPolicy は、このビルド設定から作成された新しいビルドの実行がどのようにスケジュールされるかを記述します。これは任意です。指定されていない場合は、デフォルトで "Serial" になります。

serviceAccount

string

serviceAccount は、このビルドで作成された Pod を実行するのに使用する ServiceAccount の名前です。Pod は、ServiceAccount によって参照されるシークレットを使用できます。

source

object

BuildSource は、ビルドに使用される SCM です。

strategy

object

BuildStrategy には、ビルドを実行する方法の詳細が含まれています。

successfulBuildsHistoryLimit

integer

successBuildsHistoryLimit は、保持する古い成功したビルドの数です。BuildConfig が作成されると、この値が設定されていない限り、最近成功した 5 つのビルドが保持されます。BuildConfig の作成後に削除すると、成功したすべてのビルドが保持されます。

triggers

array

トリガーは、BuildConfig から新しいビルドを起動する方法を決定します。トリガーが定義されていない場合、新しいビルドは、明示的なクライアントビルドの作成の結果としてのみ発生します。

triggers[]

object

BuildTriggerPolicy は、新しいビルドをもたらす単一のトリガーのポリシーを記述します。

2.1.2. .spec.output

Description
BuildOutput は、ビルドストラテジーへの入力であり、ストラテジーが生成する必要のあるコンテナーイメージを記述します。
タイプ
object
プロパティータイプDescription

imageLabels

array

imageLabels は、結果として生成されるイメージに適用されるラベルのリストを定義します。同じ名前のラベルが複数ある場合は、リストの最後のラベルが使用されます。

imageLabels[]

object

ImageLabel は、結果のイメージに適用されるラベルを表します。

pushSecret

LocalObjectReference

PushSecret は、認証が有効な Docker レジストリー (または Docker Hub) への Docker プッシュを実行するための認証を設定するために使用される Secret の名前です。

to

ObjectReference

このビルドの出力をプッシュする任意の場所を定義します。種類は ImageStreamTag または DockerImage のいずれかである必要があります。この値は、プッシュ先のコンテナーイメージリポジトリーを検索するのに使用されます。ImageStreamTag の場合は、Namespace が指定されていない限り、ImageStreamTag はビルドの namespace で検索されます。

2.1.3. .spec.output.imageLabels

Description
imageLabels は、結果として生成されるイメージに適用されるラベルのリストを定義します。同じ名前のラベルが複数ある場合は、リストの最後のラベルが使用されます。
タイプ
array

2.1.4. .spec.output.imageLabels[]

Description
ImageLabel は、結果のイメージに適用されるラベルを表します。
タイプ
object
必須
  • name
プロパティータイプ説明

name

string

name は、ラベルの名前を定義します。ゼロ以外の長さを持つ必要があります。

value

string

値は、ラベルのリテラル値を定義します。

2.1.5. .spec.postCommit

Description

BuildPostCommitSpec は、ビルドポストコミットフック仕様を保持します。フックは、イメージの最後のレイヤーがコミットされた直後、イメージがレジストリーにプッシュされる前に、ビルド出力イメージを実行している一時コンテナーでコマンドを実行します。コマンドは、現在の作業ディレクトリー ($ PWD) をイメージの WORKDIR に設定して実行されます。

フックの実行が失敗すると、ビルドは失敗としてマークされます。スクリプトまたはコマンドがゼロ以外の終了コードを返す場合、または一時コンテナーの開始に関連するその他のエラーがある場合は失敗します。

フックを設定するには、5 つの異なる方法があります。例として、以下のすべての形式は同等であり、rake test --verbose を実行します。

  1. シェルスクリプト:

    "postCommit": {
      "script": "rake test --verbose",
    }
    The above is a convenient form which is equivalent to:
    "postCommit": {
      "command": ["/bin/sh", "-ic"],
      "args":    ["rake test --verbose"]
    }
  2. イメージエントリーポイントとしてのコマンド:

    "postCommit": {
      "commit": ["rake", "test", "--verbose"]
    }
    Command overrides the image entrypoint in the exec form, as documented in
    Docker: https://docs.docker.com/engine/reference/builder/#entrypoint.
  3. デフォルトのエントリーポイントに引数を渡します。

    "postCommit": {
     "args": ["rake", "test", "--verbose"]
    }
    This form is only useful if the image entrypoint can handle arguments.
  4. 引数を指定したシェルスクリプト:

    "postCommit": {
      "script": "rake test $1",
      "args":   ["--verbose"]
    }
    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.
  5. 引数のあるコマンド:

    "postCommit": {
      "command": ["rake", "test"],
      "args":    ["--verbose"]
    }
    This form is equivalent to appending the arguments to the Command slice.

スクリプトとコマンドの両方を同時に提供することは無効です。どのフィールドも指定されていないと、フックは実行されません。

タイプ
object
プロパティータイプ説明

args

array (string)

args は、Command、Script、またはコンテナーイメージのデフォルトのエントリーポイントのいずれかに提供される引数のリストです。引数は、実行するコマンドの直後に配置されます。

command

array (string)

command は実行するコマンドです。スクリプトでは指定できない場合があります。これは、イメージに /bin/sh がない場合、またはシェルを使用しない場合に必要になることがあります。その他の場合は、Script を使用することが便利な方法になります。

script

string

script は、/bin/sh -ic で実行されるシェルスクリプトです。Command で指定できない場合があります。シェルスクリプトがビルド後のフックを実行するのに適切な場合、たとえば rake test を使用して単体テストを実行する場合は、Script を使用します。イメージのエントリーポイントを制御する必要がある場合、またはイメージに /bin/sh がない場合は、Command または Args、あるいはその両方を使用します。-i フラグは、Software Collections (SCL) を使用する CentOS イメージおよび RHEL イメージをサポートし、シェルで適切なコレクションを有効にするために必要です。たとえば、Ruby イメージでは、これは、rubybundle、およびその他のバイナリーを PATH で使用できるようにするために必要です。

2.1.6. .spec.revision

Description
SourceRevision は、ビルドのソースからのリビジョンまたはコミット情報です
タイプ
object
必須
  • type
プロパティータイプDescription

git

object

GitSourceRevision は、ビルド用の git ソースからのコミット情報です。

type

string

ビルドソースのタイプ。Source、Dockerfile、Binary、または Images のいずれかになります。

2.1.7. .spec.revision.git

Description
GitSourceRevision は、ビルド用の git ソースからのコミット情報です。
タイプ
object
プロパティータイプDescription

author

object

SourceControlUser は、ソース管理のユーザーの ID を定義します。

commit

string

commit は、特定のコミットを識別するコミットハッシュです。

committer

object

SourceControlUser は、ソース管理のユーザーの ID を定義します。

message

string

メッセージは特定のコミットの説明です

2.1.8. .spec.revision.git.author

Description
SourceControlUser は、ソース管理のユーザーの ID を定義します。
タイプ
object
プロパティータイプDescription

email

string

ソース管理ユーザーの電子メール

name

string

ソース管理ユーザーの名前

2.1.9. .spec.revision.git.committer

Description
SourceControlUser は、ソース管理のユーザーの ID を定義します。
タイプ
object
プロパティータイプDescription

email

string

ソース管理ユーザーの電子メール

name

string

ソース管理ユーザーの名前

2.1.10. .spec.source

Description
BuildSource は、ビルドに使用される SCM です。
タイプ
object
プロパティータイプDescription

バイナリー

object

BinaryBuildSource は、Docker および Source ビルドストラテジーに使用されるバイナリーファイルを記述します。ファイルは抽出され、ビルドソースとして使用されます。

configMaps

array

configMaps は、ビルドに使用される configMap とその宛先のリストを表します。

configMaps[]

object

ConfigMapBuildSource は、ビルド時にのみ使用される configmap とその宛先ディレクトリーを記述します。ここで参照されている configmap の内容は、マウントする代わりに宛先ディレクトリーにコピーされます。

contextDir

string

contextDir は、アプリケーションのソースコードが存在するサブディレクトリーを指定します。これにより、リポジトリーのルート以外のディレクトリーにビルド可能なソースを含めることができます。

dockerfile

string

dockerfile は、ビルドする必要のある Dockerfile の生のコンテンツです。このオプションを指定すると、戦略ベースイメージに基づいて FROM が変更され、戦略環境からの追加の ENV スタンザが FROM から、残りの Dockerfile スタンザの間に追加されます。Dockerfile ソースタイプは、git などの他のオプションとともに使用できます。その場合、Git リポジトリーでは、コンテキストディレクトリーで固有の Dockerfile が置き換えられます。

git

object

GitBuildSource は、Git SCM のパラメーターを定義します

images

array

images は、ビルドのソースを提供するのに使用される一連のイメージを記述します

images[]

object

ImageSource は、イメージから抽出されるか、マルチステージビルド中に使用されるビルドソースを記述するのに使用されます。タイプ ImageStreamTag、ImageStreamImage、または DockerImage の参照を使用できます。プルシークレットを指定して、外部レジストリーからイメージをプルするか、内部レジストリーからプルする場合はデフォルトのサービスアカウントシークレットを上書きできます。イメージソースを使用して、イメージからコンテンツを抽出し、リポジトリーソースと一緒にビルドコンテキストに配置するか、マルチステージコンテナーイメージのビルド中に直接使用して、リポジトリーソースのコンテンツを上書きせずにコンテンツをコピーできるようにします。(paths および as フィールドを参照してください)。

secrets

array

secrets は、ビルドにのみ使用されるシークレットとその宛先のリストを表します。

secrets[]

object

SecretBuildSource は、ビルド時にのみ使用されるシークレットとその宛先ディレクトリーを記述します。ここで参照されているシークレットの内容は、マウントする代わりに宛先ディレクトリーにコピーされます。

sourceSecret

LocalObjectReference

sourceSecret は、プライベートリポジトリーのクローンを作成するための認証を設定するのに使用される Secret の名前です。シークレットには、リモートリポジトリーの有効な認証情報が含まれています。ここで、データのキーは使用される認証方法を表し、値は base64 でエンコードされた認証情報です。サポートされている認証方法は ssh-privatekey です。

type

string

受け入れるビルド入力のタイプ

2.1.11. .spec.source.binary

Description
BinaryBuildSource は、Docker および Source ビルドストラテジーに使用されるバイナリーファイルを記述します。ファイルは抽出され、ビルドソースとして使用されます。
タイプ
object
プロパティータイプDescription

asFile

string

asFile は、提供されたバイナリー入力がビルド入力内の単一ファイルと見なされる必要があることを示します。たとえば、webapp.war を指定すると、提供されたバイナリーがビルダーの /webapp.war として配置されます。空のままにした場合、Docker および Source ビルド戦略は、このファイルが zip、tar、または tar.gz ファイルであると想定し、ソースとして抽出します。カスタム戦略は、このバイナリーを標準入力として受け取ります。このファイル名にはスラッシュを含めたり、.. または.にすることはできません。

2.1.12. .spec.source.configMaps

Description
configMaps は、ビルドに使用される configMap とその宛先のリストを表します。
タイプ
array

2.1.13. .spec.source.configMaps[]

Description
ConfigMapBuildSource は、ビルド時にのみ使用される configmap とその宛先ディレクトリーを記述します。ここで参照されている configmap の内容は、マウントする代わりに宛先ディレクトリーにコピーされます。
タイプ
object
必須
  • configMap
プロパティータイプ説明

configMap

LocalObjectReference

configMap は、ビルドで使用する既存の configmap への参照です。

destinationDir

string

destinationDir は、ビルド時に configmap のファイルを使用できるディレクトリーです。ソースビルド戦略の場合、これらはアセンブルスクリプトが実行されるコンテナーに挿入されます。コンテナーイメージのビルド戦略では、これらは Dockerfile が配置されているビルドディレクトリーにコピーされるため、ユーザーはコンテナーイメージのビルド中にそれらを追加またはコピーできます。

2.1.14. .spec.source.git

Description
GitBuildSource は、Git SCM のパラメーターを定義します
タイプ
object
必須
  • uri
プロパティータイプDescription

httpProxy

string

httpProxy は、http 経由で git リポジトリーに到達するのに使用されるプロキシーです。

httpsProxy

string

httpsProxy は、https 経由で git リポジトリーに到達するのに使用されるプロキシーです。

noProxy

string

noProxy は、プロキシーを使用してはならないドメインのリストです。

ref

string

ref は、ビルドするブランチ/タグ/参照です。

uri

string

uri は、ビルドされるソースを指します。ソースの構造は、実行するビルドのタイプによって異なります

2.1.15. .spec.source.images

Description
images は、ビルドのソースを提供するのに使用される一連のイメージを記述します
タイプ
array

2.1.16. .spec.source.images[]

Description
ImageSource は、イメージから抽出されるか、マルチステージビルド中に使用されるビルドソースを記述するのに使用されます。タイプ ImageStreamTag、ImageStreamImage、または DockerImage の参照を使用できます。プルシークレットを指定して、外部レジストリーからイメージをプルするか、内部レジストリーからプルする場合はデフォルトのサービスアカウントシークレットを上書きできます。イメージソースを使用して、イメージからコンテンツを抽出し、リポジトリーソースと一緒にビルドコンテキストに配置するか、マルチステージコンテナーイメージのビルド中に直接使用して、リポジトリーソースのコンテンツを上書きせずにコンテンツをコピーできるようにします。(paths および as フィールドを参照してください)。
タイプ
object
必須
  • from
プロパティータイプDescription

as

array (string)

マルチステージコンテナーイメージのビルド中にこのソースが代わりに使用されるイメージ名のリスト。たとえば、"COPY --from=nginx:latest" を使用する Dockerfile は、直接プルを試みる前に、このフィールドに "nginx:latest" が含まれるイメージソースを最初にチェックします。Dockerfile がイメージソースを参照していない場合、それは無視されます。このフィールドとパスの両方を設定できます。その場合、コンテンツは 2 回使用されます。

from

ObjectReference

from は、ソースをコピーする ImageStreamTag、ImageStreamImage、または DockerImage への参照です。

paths

array

パスは、イメージからコピーするソースパスおよび宛先パスのリストです。このコンテンツは、ビルドを開始する前にビルドコンテキストにコピーされます。パスが設定されていない場合、ビルドコンテキストは変更されません。

paths[]

object

ImageSourcePath は、ビルドディレクトリー内のソースイメージとその宛先からコピーされるパスを記述します。

pullSecret

LocalObjectReference

pullSecret は、レジストリーからイメージをプルするのに使用されるシークレットへの参照です。イメージが OpenShift レジストリーからプルされる場合は、このフィールドを設定する必要がありません。

2.1.17. .spec.source.images[].paths

Description
パスは、イメージからコピーするソースパスおよび宛先パスのリストです。このコンテンツは、ビルドを開始する前にビルドコンテキストにコピーされます。パスが設定されていない場合、ビルドコンテキストは変更されません。
タイプ
array

2.1.18. .spec.source.images[].paths[]

Description
ImageSourcePath は、ビルドディレクトリー内のソースイメージとその宛先からコピーされるパスを記述します。
タイプ
object
必須
  • sourcePath
  • destinationDir
プロパティータイプDescription

destinationDir

string

destinationDir は、イメージからコピーされたファイルが配置されるビルドディレクトリー内の相対ディレクトリーです。

sourcePath

string

sourcePath は、ビルドディレクトリーにコピーするイメージ内のファイルまたはディレクトリーの絶対パスです。ソースパスの末尾は /. であり、ディレクトリーのコンテンツがコピーされますが、ディレクトリー自体は宛先で作成されません。

2.1.19. .spec.source.secrets

Description
secrets は、ビルドにのみ使用されるシークレットとその宛先のリストを表します。
タイプ
array

2.1.20. .spec.source.secrets[]

Description
SecretBuildSource は、ビルド時にのみ使用されるシークレットとその宛先ディレクトリーを記述します。ここで参照されているシークレットの内容は、マウントする代わりに宛先ディレクトリーにコピーされます。
タイプ
object
必須
  • secret
プロパティータイプDescription

destinationDir

string

destinationDir は、ビルド時にシークレットのファイルを使用できるディレクトリーです。ソースビルド戦略の場合、これらはアセンブルスクリプトが実行されるコンテナーに挿入されます。その後、スクリプトが終了すると、挿入されたすべてのファイルの長さがゼロに切り捨てられます。コンテナーイメージのビルド戦略では、これらは Dockerfile が配置されているビルドディレクトリーにコピーされるため、ユーザーはコンテナーイメージのビルド中にそれらを追加またはコピーできます。

secret

LocalObjectReference

secret は、ビルドで使用する既存のシークレットへの参照です。

2.1.21. .spec.strategy

Description
BuildStrategy には、ビルドを実行する方法の詳細が含まれています。
タイプ
object
プロパティータイプDescription

customStrategy

object

CustomBuildStrategy は、カスタムビルドに固有の入力パラメーターを定義します。

dockerStrategy

object

DockerBuildStrategy は、コンテナーイメージビルドに固有の入力パラメーターを定義します。

jenkinsPipelineStrategy

object

JenkinsPipelineBuildStrategy は、Jenkins Pipeline ビルドに固有のパラメーターを保持します。非推奨: OpenShift Pipelines を使用する

sourceStrategy

object

SourceBuildStrategy は、ソースビルドに固有の入力パラメーターを定義します。

type

string

タイプはビルド戦略の一種です。

2.1.22. .spec.strategy.customStrategy

Description
CustomBuildStrategy は、カスタムビルドに固有の入力パラメーターを定義します。
タイプ
object
必須
  • from
プロパティータイプDescription

buildAPIVersion

string

buildAPIVersion は、シリアル化されてカスタムビルダーに渡される Build オブジェクトに対して要求された API バージョンです。

env

array (EnvVar)

env には、ビルダーコンテナーに渡す追加の環境変数が含まれています。

exposeDockerSocket

boolean

exportDockerSocket を使用すると、コンテナー内から Docker コマンドを実行 (およびコンテナーイメージをビルド) できます。

forcePull

boolean

forcePull は、コントローラーがビルド Pod を設定して、ビルダーのイメージを常にプルするか、ローカルに存在しない場合にのみプルするかを記述します。

from

ObjectReference

from は、コンテナーイメージのプル元となる DockerImage、ImageStreamTag、または ImageStreamImage への参照です。

pullSecret

LocalObjectReference

pullSecret は、プライベート Docker レジストリーからコンテナーイメージをプルするための認証を設定するために使用される Secret の名前です。

secrets

array

secrets は、ビルド Pod に含まれる追加のシークレットのリストです

secrets[]

object

SecretSpec は、ビルド Pod とそれに対応するマウントポイントに含まれるシークレットを指定します

2.1.23. .spec.strategy.customStrategy.secrets

Description
secrets は、ビルド Pod に含まれる追加のシークレットのリストです
タイプ
array

2.1.24. .spec.strategy.customStrategy.secrets[]

Description
SecretSpec は、ビルド Pod とそれに対応するマウントポイントに含まれるシークレットを指定します
タイプ
object
必須
  • secretSource
  • mountPath
プロパティータイプ説明

mountPath

string

mountPath は、シークレットをマウントするパスです。

secretSource

LocalObjectReference

secretSource はシークレットへの参照です

2.1.25. .spec.strategy.dockerStrategy

Description
DockerBuildStrategy は、コンテナーイメージビルドに固有の入力パラメーターを定義します。
タイプ
object
プロパティータイプDescription

buildArgs

array (EnvVar)

buildArgs には、Dockerfile で解決されるビルド引数が含まれています。詳細は、https://docs.docker.com/engine/reference/builder/#/arg を参照してください。注意: 'name' フィールドおよび 'value' フィールドのみがサポートされます。valueFrom フィールドの設定は無視されます。

dockerfilePath

string

dockerfilePath は、コンテキストのルート (contextDir) を基準にした、コンテナーイメージの構築に使用される Dockerfile のパスです。設定されていない場合は、デフォルトで Dockerfile になります。

env

array (EnvVar)

env には、ビルダーコンテナーに渡す追加の環境変数が含まれています。

forcePull

boolean

forcePull は、ビルダーがビルドする前にレジストリーからイメージをプルする必要があるかどうかを記述します。

from

ObjectReference

from は、ビルド用の Dockerfile 内の FROM イメージをオーバーライドする DockerImage、ImageStreamTag、または ImageStreamImage への参照です。Dockerfile がマルチステージビルドを使用する場合、これはファイルの最後の FROM ディレクティブのイメージを置き換えます。

imageOptimizationPolicy

string

imageOptimizationPolicy は、イメージを構築するときにシステムが使用できる最適化を記述して、イメージの構築に費やされる最終的なサイズまたは時間を削減します。デフォルトのポリシーは 'None' です。これは、最終的なビルドイメージがコンテナーイメージビルド API によって作成されたイメージと同等になることを意味します。実験的なポリシー 'SkipLayers' は、各イメージステップの間に新しいレイヤーをコミットすることを回避し、Dockerfile が 'None' ポリシーとの互換性を提供できない場合は失敗します。追加の実験的なポリシー 'SkipLayersAndWarn' は 'SkipLayers' と同じですが、互換性を維持できない場合は単に警告します。

noCache

boolean

noCache が true に設定されている場合、コンテナーイメージのビルドは --no-cache=true フラグを指定して実行する必要があることを示します

pullSecret

LocalObjectReference

pullSecret は、プライベート Docker レジストリーからコンテナーイメージをプルするための認証を設定するために使用される Secret の名前です。

volumes

array

ボリュームは、ビルドのランタイム環境にマウントできる入力ボリュームのリストです。ビルドでサポートされているのは、Kubernetes Volume ソースのサブセットのみです。詳細: https://kubernetes.io/docs/concepts/storage/volumes

volumes[]

object

BuildVolume は、buildah のランタイム環境にマウントできるように、Pod をビルドするのに使用できるようになるボリュームを記述します。Kubernetes ボリュームソースのサブセットのみがサポートされています。

2.1.26. .spec.strategy.dockerStrategy.volumes

Description
ボリュームは、ビルドのランタイム環境にマウントできる入力ボリュームのリストです。ビルドでサポートされているのは、Kubernetes Volume ソースのサブセットのみです。詳細: https://kubernetes.io/docs/concepts/storage/volumes
タイプ
array

2.1.27. .spec.strategy.dockerStrategy.volumes[]

Description
BuildVolume は、buildah のランタイム環境にマウントできるように、Pod をビルドするのに使用できるようになるボリュームを記述します。Kubernetes ボリュームソースのサブセットのみがサポートされています。
タイプ
object
必須
  • name
  • source
  • mounts
プロパティータイプDescription

mounts

array

mounts は、イメージビルドコンテナー内のボリュームの場所を表します

mounts[]

object

BuildVolumeMount は、buildah のランタイム環境内でのボリュームのマウントについて説明します。

name

string

name は、この BuildVolume の一意の識別子です。Kubernetes DNS ラベル標準に準拠し、Pod 内で一意である必要があります。名前が、ビルドコントローラーにより追加された名前と競合するとビルドが失敗し、エラーの原因となった名前の詳細を示すエラーメッセージが表示されます。詳細: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

source

object

BuildVolumeSource は、マウントするボリュームのソースを表します。サポートされているタイプの 1 つだけを常に指定できます。

2.1.28. .spec.strategy.dockerStrategy.volumes[].mounts

Description
mounts は、イメージビルドコンテナー内のボリュームの場所を表します
タイプ
array

2.1.29. .spec.strategy.dockerStrategy.volumes[].mounts[]

Description
BuildVolumeMount は、buildah のランタイム環境内でのボリュームのマウントについて説明します。
タイプ
object
必須
  • destinationPath
プロパティータイプDescription

destinationPath

string

destinationPath は、ボリュームをマウントする必要がある buildah ランタイム環境内のパスです。ビルドイメージ内の一時マウントとバッキングボリュームは両方とも読み取り専用でマウントされます。絶対パスである必要があり、..または: を含めることはできません。また、ビルダープロセスにより生成された宛先パスと競合してはなりません。このパスが、ビルドコントローラーにより追加されたパスと競合すると、ビルドが失敗し、エラーの原因となったパスの詳細を示すエラーメッセージが表示されます。

2.1.30. .spec.strategy.dockerStrategy.volumes[].source

Description
BuildVolumeSource は、マウントするボリュームのソースを表します。サポートされているタイプの 1 つだけを常に指定できます。
タイプ
object
必須
  • type
プロパティータイプ説明

configMap

ConfigMapVolumeSource

configMap は、このボリュームに入力する必要がある ConfigMap を表します

csi

CSIVolumeSource

CSI は、この機能をサポートする外部 CSI ドライバーによって提供される一時ストレージを表します。

secret

SecretVolumeSource

secret は、このボリュームに入力する必要がある Secret を表します。詳細: https://kubernetes.io/docs/concepts/storage/volumes#secret

type

string

type は、ボリュームソースの BuildVolumeSourceType です。Type は、入力されたボリュームソースと一致する必要があります。有効なタイプは、Secret、ConfigMap です。

2.1.31. .spec.strategy.jenkinsPipelineStrategy

Description
JenkinsPipelineBuildStrategy は、Jenkins Pipeline ビルドに固有のパラメーターを保持します。非推奨: OpenShift Pipelines を使用する
タイプ
object
プロパティータイプ説明

env

array (EnvVar)

env には、ビルドパイプラインに渡す追加の環境変数が含まれています。

jenkinsfile

string

Jenkinsfile は、Jenkins パイプラインビルドを定義する Jenkinsfile の任意の raw コンテンツを定義します。

jenkinsfilePath

string

JenkinsfilePath は、コンテキストのルート (contextDir) を基準にしてパイプラインを設定するのに使用される Jenkinsfile の任意のパスです。JenkinsfilePath と Jenkinsfile の両方が指定されていない場合、これはデフォルトで、指定された contextDir のルートにある Jenkinsfile になります。

2.1.32. .spec.strategy.sourceStrategy

Description
SourceBuildStrategy は、ソースビルドに固有の入力パラメーターを定義します。
タイプ
object
必須
  • from
プロパティータイプ説明

env

array (EnvVar)

env には、ビルダーコンテナーに渡す追加の環境変数が含まれています。

forcePull

boolean

forcePull は、ビルダーがビルドする前にレジストリーからイメージをプルする必要があるかどうかを記述します。

from

ObjectReference

from は、コンテナーイメージのプル元となる DockerImage、ImageStreamTag、または ImageStreamImage への参照です。

incremental

boolean

増分フラグは、true の場合、ソースビルドに増分ビルドを強制します。

pullSecret

LocalObjectReference

pullSecret は、プライベート Docker レジストリーからコンテナーイメージをプルするための認証を設定するために使用される Secret の名前です。

scripts

string

Source はソーススクリプトの場所です

volumes

array

ボリュームは、ビルドのランタイム環境にマウントできる入力ボリュームのリストです。ビルドでサポートされているのは、Kubernetes Volume ソースのサブセットのみです。詳細: https://kubernetes.io/docs/concepts/storage/volumes

volumes[]

object

BuildVolume は、buildah のランタイム環境にマウントできるように、Pod をビルドするのに使用できるようになるボリュームを記述します。Kubernetes ボリュームソースのサブセットのみがサポートされています。

2.1.33. .spec.strategy.sourceStrategy.volumes

Description
ボリュームは、ビルドのランタイム環境にマウントできる入力ボリュームのリストです。ビルドでサポートされているのは、Kubernetes Volume ソースのサブセットのみです。詳細: https://kubernetes.io/docs/concepts/storage/volumes
タイプ
array

2.1.34. .spec.strategy.sourceStrategy.volumes[]

Description
BuildVolume は、buildah のランタイム環境にマウントできるように、Pod をビルドするのに使用できるようになるボリュームを記述します。Kubernetes ボリュームソースのサブセットのみがサポートされています。
タイプ
object
必須
  • name
  • source
  • mounts
プロパティータイプDescription

mounts

array

mounts は、イメージビルドコンテナー内のボリュームの場所を表します

mounts[]

object

BuildVolumeMount は、buildah のランタイム環境内でのボリュームのマウントについて説明します。

name

string

name は、この BuildVolume の一意の識別子です。Kubernetes DNS ラベル標準に準拠し、Pod 内で一意である必要があります。名前が、ビルドコントローラーにより追加された名前と競合するとビルドが失敗し、エラーの原因となった名前の詳細を示すエラーメッセージが表示されます。詳細: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

source

object

BuildVolumeSource は、マウントするボリュームのソースを表します。サポートされているタイプの 1 つだけを常に指定できます。

2.1.35. .spec.strategy.sourceStrategy.volumes[].mounts

Description
mounts は、イメージビルドコンテナー内のボリュームの場所を表します
タイプ
array

2.1.36. .spec.strategy.sourceStrategy.volumes[].mounts[]

Description
BuildVolumeMount は、buildah のランタイム環境内でのボリュームのマウントについて説明します。
タイプ
object
必須
  • destinationPath
プロパティータイプDescription

destinationPath

string

destinationPath は、ボリュームをマウントする必要がある buildah ランタイム環境内のパスです。ビルドイメージ内の一時マウントとバッキングボリュームは両方とも読み取り専用でマウントされます。絶対パスである必要があり、..または: を含めることはできません。また、ビルダープロセスにより生成された宛先パスと競合してはなりません。このパスが、ビルドコントローラーにより追加されたパスと競合すると、ビルドが失敗し、エラーの原因となったパスの詳細を示すエラーメッセージが表示されます。

2.1.37. .spec.strategy.sourceStrategy.volumes[].source

Description
BuildVolumeSource は、マウントするボリュームのソースを表します。サポートされているタイプの 1 つだけを常に指定できます。
タイプ
object
必須
  • type
プロパティータイプ説明

configMap

ConfigMapVolumeSource

configMap は、このボリュームに入力する必要がある ConfigMap を表します

csi

CSIVolumeSource

CSI は、この機能をサポートする外部 CSI ドライバーによって提供される一時ストレージを表します。

secret

SecretVolumeSource

secret は、このボリュームに入力する必要がある Secret を表します。詳細: https://kubernetes.io/docs/concepts/storage/volumes#secret

type

string

type は、ボリュームソースの BuildVolumeSourceType です。Type は、入力されたボリュームソースと一致する必要があります。有効なタイプは、Secret、ConfigMap です。

2.1.38. .spec.triggers

Description
トリガーは、BuildConfig から新しいビルドを起動する方法を決定します。トリガーが定義されていない場合、新しいビルドは、明示的なクライアントビルドの作成の結果としてのみ発生します。
タイプ
array

2.1.39. .spec.triggers[]

Description
BuildTriggerPolicy は、新しいビルドをもたらす単一のトリガーのポリシーを記述します。
タイプ
object
必須
  • type
プロパティータイプDescription

bitbucket

object

WebHookTrigger は、Webhook タイプの投稿を使用して呼び出されるトリガーです。

generic

object

WebHookTrigger は、Webhook タイプの投稿を使用して呼び出されるトリガーです。

github

object

WebHookTrigger は、Webhook タイプの投稿を使用して呼び出されるトリガーです。

gitlab

object

WebHookTrigger は、Webhook タイプの投稿を使用して呼び出されるトリガーです。

imageChange

object

ImageChangeTrigger を使用すると、ImageStream が変更されたときにビルドをトリガーできます

type

string

type は、ビルドトリガーのタイプです。有効な値は以下のとおりです。

- GitHub GitHubWebHookBuildTriggerType は、GitHub Webhook 呼び出しでビルドを起動するトリガーを表します

- Generic GenericWebHookBuildTriggerType は、汎用 Webhook 呼び出しでビルドを起動するトリガーを表します

- GitLab GitLabWebHookBuildTriggerType は、GitLab Webhook 呼び出しでビルドを起動するトリガーを表します

- Bitbucket BitbucketWebHookBuildTriggerType は、Bitbucket Webhook 呼び出しでビルドを起動するトリガーを表します

- ImageChange ImageChangeBuildTriggerType は、新しいバージョンのイメージの可用性に基づいてビルドを起動するトリガーを表します

- ConfigChange ConfigChangeBuildTriggerType は、最初のビルド設定の作成時にビルドをトリガーします。警告: 将来、動作が変更され、設定の変更時にビルドがトリガーされます

2.1.40. .spec.triggers[].bitbucket

Description
WebHookTrigger は、Webhook タイプの投稿を使用して呼び出されるトリガーです。
タイプ
object
プロパティータイプDescription

allowEnv

boolean

allowEnv は、Webhook が環境変数を設定できるかどうかを判別します。GenericWebHook に対してのみ true に設定できます。

secret

string

リクエストの検証に使用されるシークレット。非推奨: 代わりに SecretReference を使用してください。

secretReference

object

SecretLocalReference には、使用されているローカルシークレットを指す情報が含まれています

2.1.41. .spec.triggers[].bitbucket.secretReference

Description
SecretLocalReference には、使用されているローカルシークレットを指す情報が含まれています
タイプ
object
必須
  • name
プロパティータイプ説明

name

string

Name は、参照されている同じ namespace 内のリソースの名前です。

2.1.42. .spec.triggers[].generic

Description
WebHookTrigger は、Webhook タイプの投稿を使用して呼び出されるトリガーです。
タイプ
object
プロパティータイプDescription

allowEnv

boolean

allowEnv は、Webhook が環境変数を設定できるかどうかを判別します。GenericWebHook に対してのみ true に設定できます。

secret

string

リクエストの検証に使用されるシークレット。非推奨: 代わりに SecretReference を使用してください。

secretReference

object

SecretLocalReference には、使用されているローカルシークレットを指す情報が含まれています

2.1.43. .spec.triggers[].generic.secretReference

Description
SecretLocalReference には、使用されているローカルシークレットを指す情報が含まれています
タイプ
object
必須
  • name
プロパティータイプ説明

name

string

Name は、参照されている同じ namespace 内のリソースの名前です。

2.1.44. .spec.triggers[].github

Description
WebHookTrigger は、Webhook タイプの投稿を使用して呼び出されるトリガーです。
タイプ
object
プロパティータイプDescription

allowEnv

boolean

allowEnv は、Webhook が環境変数を設定できるかどうかを判別します。GenericWebHook に対してのみ true に設定できます。

secret

string

リクエストの検証に使用されるシークレット。非推奨: 代わりに SecretReference を使用してください。

secretReference

object

SecretLocalReference には、使用されているローカルシークレットを指す情報が含まれています

2.1.45. .spec.triggers[].github.secretReference

Description
SecretLocalReference には、使用されているローカルシークレットを指す情報が含まれています
タイプ
object
必須
  • name
プロパティータイプ説明

name

string

Name は、参照されている同じ namespace 内のリソースの名前です。

2.1.46. .spec.triggers[].gitlab

Description
WebHookTrigger は、Webhook タイプの投稿を使用して呼び出されるトリガーです。
タイプ
object
プロパティータイプDescription

allowEnv

boolean

allowEnv は、Webhook が環境変数を設定できるかどうかを判別します。GenericWebHook に対してのみ true に設定できます。

secret

string

リクエストの検証に使用されるシークレット。非推奨: 代わりに SecretReference を使用してください。

secretReference

object

SecretLocalReference には、使用されているローカルシークレットを指す情報が含まれています

2.1.47. .spec.triggers[].gitlab.secretReference

Description
SecretLocalReference には、使用されているローカルシークレットを指す情報が含まれています
タイプ
object
必須
  • name
プロパティータイプ説明

name

string

Name は、参照されている同じ namespace 内のリソースの名前です。

2.1.48. .spec.triggers[].imageChange

Description
ImageChangeTrigger を使用すると、ImageStream が変更されたときにビルドをトリガーできます
タイプ
object
プロパティータイプ説明

from

ObjectReference

from は、更新時にビルドをトリガーする ImageStreamTag への参照です。これはオプションです。From が指定されていない場合は、ビルドストラテジーの From イメージが使用されます。ビルド設定では、From 参照が空の ImageChangeTrigger を 1 つだけ許可します。

lastTriggeredImageID

string

lastTriggeredImageID は、ビルド用に最後に使用されたイメージ ID を保存するために ImageChangeController によって内部的に使用されます。このフィールドは非推奨であり、将来のリリースで削除される予定です。非推奨

paused

boolean

このトリガーが一時的に無効になっている場合、paused は true です。任意。

2.1.49. .status

Description
BuildConfigStatus には、ビルド設定オブジェクトの現在の状態が含まれます。
タイプ
object
必須
  • lastVersion
プロパティータイプDescription

imageChangeTriggers

array

ImageChangeTriggers は、BuildConfigSpec で指定された ImageChangeTrigger のランタイム状態をキャプチャーします。これには、OpenShiftAPIServer によって lastTriggeredImageID に対して調整された値が含まれます。この配列には、仕様のイメージ変更トリガーごとに 1 つのエントリーがあります。各トリガーステータスは、トリガーのソースとして機能する ImageStreamTag を参照します。

imageChangeTriggers[]

object

ImageChangeTriggerStatus は、BuildConfigSpec.Triggers 構造体で指定された関連する ImageChangeTrigger ポリシーの最新の解決済みステータスを追跡します。

lastVersion

integer

lastVersion は、最後にトリガーされたビルドの数を通知するのに使用されます。

2.1.50. .status.imageChangeTriggers

Description
ImageChangeTriggers は、BuildConfigSpec で指定された ImageChangeTrigger のランタイム状態をキャプチャーします。これには、OpenShiftAPIServer によって lastTriggeredImageID に対して調整された値が含まれます。この配列には、仕様のイメージ変更トリガーごとに 1 つのエントリーがあります。各トリガーステータスは、トリガーのソースとして機能する ImageStreamTag を参照します。
タイプ
array

2.1.51. .status.imageChangeTriggers[]

Description
ImageChangeTriggerStatus は、BuildConfigSpec.Triggers 構造体で指定された関連する ImageChangeTrigger ポリシーの最新の解決済みステータスを追跡します。
タイプ
object
プロパティータイプ説明

from

object

ImageStreamTagReference は、namespace および名前によりイメージ変更トリガーの ImageStreamTag を参照します。

lastTriggerTime

time

lastTriggerTime は、この特定の ImageStreamTag が Build の開始をトリガーした最後の時間です。このフィールドは、このトリガーが具体的に Build を開始したときにのみ更新されます。

lastTriggeredImageID

string

lastTriggeredImageID は、この BuildConfig のビルドが開始したときの ImageStreamTag の sha/id を表します。lastTriggeredImageID は、この ImageStreamTag が Build が開始される理由ではない場合でも、この BuildConfig のビルドが開始されるたびに更新されます。

2.1.52. .status.imageChangeTriggers[].from

Description
ImageStreamTagReference は、namespace および名前によりイメージ変更トリガーの ImageStreamTag を参照します。
タイプ
object
プロパティータイプ説明

name

string

name は、ImageChangeTrigger の ImageStreamTag の名前です。

namespace

string

namespace は、ImageChangeTrigger の ImageStreamTag が配置されている namespace です。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.