メインコンテンツまでスキップ

Kubectl job を追加する

Kubectl Job は、Pipeline 内から Kubernetes cluster に対して 1 つの kubectl operation を実行します。manifest の deploy、リソースの確認、ログの表示など、cluster に対する操作を、自分のマシンで kubectl を手動実行することなく、完全な audit trail を保ちながら行えます。

前提条件​

  • Pipeline が作成・保存済みであること。Pipeline の作成と設定 を参照してください。
  • Environment(Kubernetes cluster)が設定済みで、アクセス権限があること。Manage environments を参照してください。
  • Git 上の manifest を使う Apply operation の場合は、Git connection が設定済みであること。Manage credentials を参照してください。

Kubectl job を追加する​

Add job menu — Kubectl

  1. Pipeline Editor で、operation を実行したい Stage の Add Job(または Add Parallel Job)をクリックします。
  2. Operations の下から Kubectl を選択します。

Edit Job パネルが開きます。

Operation を設定する​

Edit Job panel — Kubectl, Apply operation

  1. Job name を入力します。
  2. Operation(Apply、Create、Delete、Expose、Get、Logs、Rollout、Run、Set、Top、Exec のいずれか)を選択します。それぞれの内容は Kubectl job reference を参照してください。
  3. 対象の Environment を選択します。Namespace と Kubectl Version は自動入力され、編集できません。
ヒント

直前の Build and push Job が build した image を参照するには、manifest や Arguments 内で {{BUILD_REPOSITORY}} と {{BUILD_TAG}} を使用します。実行時に Kubectl Job が実際の値に置き換えます。

Operation が Apply の場合​

  1. Manifest Source で Git repository または Inline YAML を選択します。

Git repository の場合:

  1. Git account connection を選択するか、Add Git connections をクリックして新規作成します。
  2. Branch(デフォルトは main)を入力します。
  3. Manifest file or directory(単一の YAML ファイル、または再帰的に apply されるディレクトリ)を入力します。

Inline YAML の場合:

  1. manifest の内容を YAML Manifest フィールドに直接貼り付けます。

  2. 必要に応じて、apply コマンドへの追加フラグとして Arguments を入力します(任意)。

ヒント

実際に apply する前に、Pipeline は必ず kubectl apply --dry-run=server を先に実行します。dry-run が成功した場合のみ実際の apply が実行され、両方のステップは Git commit SHA と共に run の audit log に記録されます。

Operation が Apply 以外の場合​

Edit Job panel — Kubectl, Get operation

  1. 選択した Operation の Arguments を入力します。このフィールドは Apply 以外のすべての Operation で必須です。
警告

Arguments に -n や --namespace を含めないでください。Namespace は常に上の Environment フィールドから取得されます。

リスクの高い operation の前に approval を追加する(任意)​

Delete または Exec を使う場合は、同じ Stage 内で Kubectl Job の直前に Approval Job を追加することを検討してください。設定した Approver が判断するまで Pipeline が一時停止します。Add an approval gate を参照してください。

Job を保存する​

  1. Save changes をクリックします。
  2. Save Pipeline をクリックして変更を保存します。
警告

Save changes は現在の編集セッション内で Job を保存するだけです。永続化するには Save Pipeline をクリックする必要があります。

Kubectl Job は、その Stage が次に実行されるときに、Pipeline の他の Job と一緒に実行されます。

次のステップ​