1.2. OpenShift Pipeline の概念
OpenShift Pipeline は、アプリケーション用に CI/CD パイプラインをアセンブルできるビルディングブロックとして動作する標準のカスタムリソース定義 (CRD) のセットを提供します。
- Task
- Task は Pipeline の設定可能な最小単位です。これは基本的に Pipeline のビルドを設定する入出力の機能です。これは個別に実行することも、Pipeline の一部として実行することもできます。Pipeline には 1 つまたは複数の Task が含まれており、各 Task は 1 つまたは複数のステップで設定されます。ステップは、Task によって順次実行される一連のコマンドです。
- Pipeline
- Pipeline は、アプリケーションのビルド、デプロイメント、およびデリバリーを自動化する複雑なワークフローを構築するために実行される一連の Task で設定されます。これは、PipelineResource、パラメーターおよび 1 つまたは複数の Task のコレクションです。Pipeline は、Task に入力および出力として追加される PipelineResource を使用して外部と対話します。
- PipelineRun
- PipelineRun は、Pipeline の実行中のインスタンスです。PipelineRun は Pipeline を開始し、Pipeline で実行される各 Task の TaskRun の作成を管理します。
- TaskRun
- TaskRun は、Pipeline の各 Task について PipelineRun によって自動的に作成されます。これは Pipeline で Task のインスタンスを実行する結果です。また、Task が Pipeline の外部で実行される場合に手動で作成できます。
- PipelineResource
- PipelineResource は、Pipeline Task の入力および出力として使用されるオブジェクトです。たとえば、入力が Git リポジトリーで、出力がその Git リポジトリーからビルドされるコンテナーイメージである場合、これらはどちらも PipelineResource として分類されます。PipelineResource は現在 Git リソース、イメージリソース、クラスターリソース、ストレージリソース、および CloudEvent リソースをサポートします。
- Trigger
- Trigger は Git プル要求などの外部イベントを取得し、イベントペイロードを処理して情報の主要な部分を抽出します。次にこの抽出された情報は一連の事前定義済みのパラメーターにマップされます。これにより、Kubernetes リソースの作成およびデプロイメントが含まれる可能性のある一連のタスクがトリガーされます。Trigger を Pipeline と共に使用して、実行が完全に Kubernetes リソースで定義される本格的な CI/CD システムを作成できます。
- Condition
-
Condition は、Task が Pipeline で実行される前に、実行される検証またはチェックのことを指します。Condition は、論理テストを実行する
if
ステートメントと似ています。戻り値はTrue
またはFalse
です。Task は、すべての Condition がTrue
を返す場合に実行されますが、いずれかの Condition が失敗すると、Task と後続のすべての Task は省略されます。Pipeline で Condition を使用して、複数のシナリオに対応する複雑なワークフローを作成できます。
追加リソース
- Pipeline のインストールについての詳細は、OpenShift Pipeline のインストール を参照してください。
- カスタムの CI/CD ソリューションの作成についての詳細は、CI/CD パイプラインを使用したアプリケーションの作成 を参照してください。