Terraform を使用して Databricks Git フォルダーを管理する
Terraform と databricks_repo Terraform リソースを使用して、完全に自動化された環境で Databricks Git フォルダーを管理できます。
個人用アクセストークンを使用した認証
このアプローチでは、リポジトリ認証に Git personal アクセストークンを使用します。
Terraform 構成 (.tf
) ファイルで、 databricks_repo
を Git フォルダーに使用する Git リポジトリの URL に設定します。
resource "databricks_repo" "this" {
url = "https://github.com/user/demo.git"
}
個人アクセストークンベースのGit資格情報を使用してDatabricksサービスプリンシパルを使用するには、次の手順に従います。
ステップ 1: Databricks プロバイダーを構成する
プロバイダー databricks
を Databricks ワークスペースの URL に設定します。アクセストークン databricks_obo_token
は、後のステップで定義します。
provider "databricks" {
# Configuration options
}
# Example 'databricks' provider configuration
provider "databricks" {
alias = "sp"
host = "https://....cloud.databricks.com"
token = databricks_obo_token.this.token_value
}
ステップ 2: サービスプリンシパルを作成する
Databricksサービスプリンシパルのリソースを定義します。サービスプリンシパル名は、 Databricks アカウントコンソールの ユーザー管理 > サービスプリンシパル にあります。
resource "databricks_service_principal" "sp" {
display_name = "<service_principal_name_here>"
}
ステップ 3: 承認トークンを作成する
アプリケーション ID を使用して、 Databricks サービスプリンシパル アカウントの認証トークンを設定します。 サービスプリンシパルのアプリケーション ID は、 Databricks アカウントコンソールの [ ユーザー管理 ] > [サービスプリンシパル ] にあります。
resource "databricks_obo_token" "this" {
application_id = databricks_service_principal.sp.application_id
comment = "PAT on behalf of ${databricks_service_principal.sp.display_name}"
lifetime_seconds = 3600
}
ステップ 4: Git 資格情報を構成する
サービスプリンシパルがGitリポジトリにアクセスするために使用するGit資格情報を設定します。
resource "databricks_git_credential" "sp" {
provider = databricks.sp
depends_on = [databricks_obo_token.this]
git_username = "<the_git_user_account_used_by_the_servcie_principal>"
git_provider = "<your_git_provider_string here>"
personal_access_token = "<auth_token_string_for_git_user>"
}