- 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証明書チェーン。