- OpenTofu言語
- OpenTofuの設定
- バックエンド
- http
バックエンドタイプ: http
シンプルなRESTクライアントを使用して状態を保存します。
状態はGETでフェッチされ、POSTで更新され、DELETEでパージされます。更新に使用されるメソッドは構成可能です。
このバックエンドはオプションで状態ロックをサポートします。ロックサポートが有効な場合、ロック情報を本文に含めてLOCKおよびUNLOCKリクエストを使用します。エンドポイントは、すでにロックされている場合は、保持しているロック情報とともに423: Lockedまたは409: Conflictを返し、成功した場合は200: OKを返す必要があります。他のステータスはエラーと見なされます。保持しているロック情報のIDは、状態更新リクエストへのクエリパラメーターとして追加されます。
使用例
terraform {
backend "http" {
address = "http://myrest.api.com/foo"
lock_address = "http://myrest.api.com/foo"
unlock_address = "http://myrest.api.com/foo"
}
}
データソース構成
data "terraform_remote_state" "foo" {
backend = "http"
config = {
address = "http://my.rest.api.com"
}
}
構成変数
警告
認証情報やその他の機密データを提供する場合は、環境変数を使用することをお勧めします。-backend-config
を使用するか、これらの値を構成に直接ハードコードすると、OpenTofuはこれらの値を.terraform
サブディレクトリとプランファイルの両方に含めます。詳細については、認証情報と機密データを参照してください。
次の構成オプション/環境変数がサポートされています
address
/TF_HTTP_ADDRESS
- (必須) RESTエンドポイントのアドレスupdate_method
/TF_HTTP_UPDATE_METHOD
- (オプション) 状態の更新時に使用するHTTPメソッド。デフォルトはPOST
です。lock_address
/TF_HTTP_LOCK_ADDRESS
- (オプション) ロックRESTエンドポイントのアドレス。デフォルトは無効です。lock_method
/TF_HTTP_LOCK_METHOD
- (オプション) ロック時に使用するHTTPメソッド。デフォルトはLOCK
です。unlock_address
/TF_HTTP_UNLOCK_ADDRESS
- (オプション) ロック解除RESTエンドポイントのアドレス。デフォルトは無効です。unlock_method
/TF_HTTP_UNLOCK_METHOD
- (オプション) ロック解除時に使用するHTTPメソッド。デフォルトはUNLOCK
です。username
/TF_HTTP_USERNAME
- (オプション) HTTP基本認証のユーザー名password
/TF_HTTP_PASSWORD
- (オプション) HTTP基本認証のパスワードskip_cert_verification
- (オプション) TLS検証をスキップするかどうか。デフォルトはfalse
です。retry_max
/TF_HTTP_RETRY_MAX
– (オプション) HTTPリクエストの最大リトライ回数。デフォルトは2
です。retry_wait_min
/TF_HTTP_RETRY_WAIT_MIN
– (オプション) HTTPリクエスト試行間の最小待機時間(秒単位)。デフォルトは1
です。retry_wait_max
/TF_HTTP_RETRY_WAIT_MAX
– (オプション) HTTPリクエスト試行間の最大待機時間(秒単位)。デフォルトは30
です。
mTLS認証の場合、次の3つのオプションを設定できます
client_certificate_pem
/TF_HTTP_CLIENT_CERTIFICATE_PEM
- (オプション) 相互TLS(mTLS)認証中にサーバーがクライアントを検証するために使用するPEMエンコードされた証明書。client_private_key_pem
/TF_HTTP_CLIENT_PRIVATE_KEY_PEM
- (オプション) client_certificate_pemが指定されている場合に必須となるPEMエンコードされた秘密鍵。client_ca_certificate_pem
/TF_HTTP_CLIENT_CA_CERTIFICATE_PEM
- (オプション) TLS認証中にサーバー証明書を検証するためにクライアントが使用するPEMエンコードされたCA証明書チェーン。