3.9. OpenShift Pipelines で提供されるステップアクション定義
OpenShift Pipelines は、タスクで使用できる標準の StepAction
定義を提供します。これらの定義を参照するには、クラスターリゾルバーを使用します。
git-clone
git-clone
ステップアクションは Git を使用してワークスペースでリモートリポジトリーを初期化し、クローンします。このステップアクションを使用して、このソースコードをビルドまたは処理するパイプラインの開始時にリポジトリーのクローンを作成するタスクを定義できます。
タスクでの git-clone
ステップアクションの使用例
パラメーター | 説明 | 型 | デフォルト値 |
---|---|---|---|
|
フェッチされた Git リポジトリーのディレクトリー。クローンされたリポジトリーデータは、ディレクトリーのルートまたは |
| |
|
必要に応じて、秘密鍵、 |
| |
|
|
| |
| CA 証明書を含むワークスペース。このワークスペースを指定すると、Git は HTTPS を使用してリモートリポジトリーとやり取りする場合に、これらの証明書を使用してピアを検証します。 |
| |
|
|
|
|
| HTTP プロキシーサーバー (TLS 以外のリクエスト)。 |
| |
| HTTPS プロキシーサーバー (TLS リクエスト)。 |
| |
| HTTP/HTTPS リクエストのプロキシーをオプトアウトします。 |
| |
|
タスクが Git リポジトリーを配置する |
| |
| Pod 内の Git ユーザーのホームディレクトリーへの絶対パス。 |
|
|
| Git 操作を実行する前に、デフォルトのワークスペースにコンテンツが存在する場合は削除します。 |
|
|
| 実行したコマンドをログに記録します。 |
|
|
|
グローバル |
|
|
| Git リポジトリー URL |
| |
| チェックアウトするリビジョン (ブランチやタグなど)。 |
|
|
|
リビジョンをチェックアウトする前にタスクが取得するリポジトリーの |
| |
| Git サブモジュールを初期化して取得します。 |
|
|
| 取得するコミットの数。"シャロークローン" は単一のコミットです。 |
|
|
| "スパースチェックアウト" を実行するための、コンマで区切られたディレクトリーパターンのリスト。 |
|
結果 | 型 | 説明 |
---|---|---|
|
| クローンされた Git リポジトリー内の現在のブランチの HEAD にあるコミットの SHA ダイジェスト。 |
|
| クローンされたリポジトリーの URL。 |
|
| クローンされた Git リポジトリー内の現在のブランチの HEAD にあるコミットのエポックタイムスタンプ。 |
cache-upload および cache-fetch
cache-upload
および cache-fetch
ステップアクションの使用は、テクノロジープレビュー機能です。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。
Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
ビルドプロセスが依存関係を保持するキャッシュディレクトリーを保持するには、cache-upload
および cache-fetch
ステップアクションを使用し、Amazon Simple Storage Service (S3) バケット、Google Cloud Services (GCS) バケット、または Open Container Initiative (OCI) リポジトリーに保存します。
cache-upload
ステップアクションを使用すると、ステップアクションはビルド内の特定のファイルに基づいてハッシュを計算します。これらのファイルを選択するには、正規表現を指定する必要があります。cache-upload
ステップアクションは、ハッシュでインデックス付けされたキャッシュディレクトリーのコンテンツを含むイメージを保存します。
cache-fetch
ステップアクションを使用すると、ステップアクションは同じハッシュを計算します。次に、このハッシュのキャッシュされたイメージがすでに利用可能かどうかを確認します。イメージが利用可能な場合、ステップアクションによってキャッシュされたコンテンツがキャッシュディレクトリーに設定されます。イメージが利用できない場合は、ディレクトリーはそのまま残ります。
cache-fetch
ステップアクションを使用した後、ビルドプロセスを実行できます。キャッシュが正常に取得された場合、ビルドプロセスで以前にダウンロードした依存関係が含まれます。キャッシュが取得されなかった場合、ビルドプロセスの通常の手順で依存関係をダウンロードします。
cache-fetch
の結果は、キャッシュされたイメージが取得されたかどうかを示します。後続の cache-upload
ステップアクションでは、その結果を使用して、現在のハッシュのキャッシュがすでに利用可能であった場合は、新しいキャッシュイメージのアップロードをスキップできます。
次のサンプルタスクは、リポジトリーからソースを取得し、キャッシュ (使用可能な場合) を取得し、Maven ビルドを実行し、キャッシュが取得されなかった場合は、ビルドディレクトリーの新しいキャッシュイメージをアップロードします。
タスク内の cache-fetch
および cache-upload
ステップアクションの使用例
パラメーター | 説明 | 型 | デフォルト値 |
---|---|---|---|
|
ハッシュを計算するファイルを選択するための正規表現。たとえば、Go プロジェクトの場合、キャッシュを計算するために |
| |
|
キャッシュを取得するためのソース URI。キャッシュハッシュを指定するには |
| |
| キャッシュコンテンツを抽出するためのパス。通常、このパスはワークスペース内にあります。 |
| |
| ハッシュを計算するためのファイルが配置されているパス。 |
| |
|
|
|
|
| Google 認証情報が保存されているパス。空の場合は無視されます。 |
| |
| AWS 設定ファイルへのパス。空の場合は無視されます。 |
| |
| AWS 認証情報ファイルへのパス。空の場合は無視されます。 |
| |
| S3、GCS、または Azure を設定するための Blob クエリーパラメーター。S3 アクセラレーション、FIPS、パススタイルのアドレス指定などの追加機能には、これらのオプションパラメーターを使用します。 |
|
結果 | 型 | 説明 |
---|---|---|
|
|
ステップがキャッシュをフェッチした場合は |
パラメーター | 説明 | 型 | デフォルト値 |
---|---|---|---|
|
ハッシュを計算するファイルを選択するための正規表現。たとえば、Go プロジェクトの場合、キャッシュを計算するために |
| |
|
キャッシュをアップロードするためのターゲット URI。 |
| |
| ステップがイメージにパックするキャッシュコンテンツのパス。通常、このパスはワークスペース内にあります。 |
| |
| ハッシュを計算するためのファイルが配置されているパス。 |
| |
|
|
|
|
|
|
|
|
|
|
|
|
| Google 認証情報が保存されているパス。空の場合は無視されます。 |
| |
| AWS 設定ファイルへのパス。空の場合は無視されます。 |
| |
| AWS 認証情報ファイルへのパス。空の場合は無視されます。 |
| |
| S3、GCS、または Azure を設定するための Blob クエリーパラメーター。S3 アクセラレーション、FIPS、パススタイルのアドレス指定などの追加機能には、これらのオプションパラメーターを使用します。 |
|
cache-upload
ステップアクションは結果を返しません。