Open9

TerraformでConoha VPSのnameを指定できない問題

あおかびあおかび

ConohaのAPIにはserverのnameを指定するリクエストパラメータが無い.
https://www.conoha.jp/docs/compute-create_vm.php

Terraformのopenstack_compute_instance_v2リソースのnameフィールドに名前を指定しても,Conoha側がIPアドレスのドットをハイフンに置換した値を勝手に設定する.

あおかびあおかび

なので一旦適当な値をnameフィールドに入れてserverを作成したあと,serverのnameの値をnameフィールドにセットし直さないといけない.

あおかびあおかび

そうしないとTerraformのOpenStackモジュールがnameフィールドの更新をしようとして,Conoha APIがそのAPIを持っていないのでMethod Not Allowedと言われて失敗する.
多分↓のAPIを使うけど,Conoha APIにはそれがない.
https://docs.openstack.org/api-ref/compute/?expanded=show-security-group-details-detail,add-security-group-to-a-server-addsecuritygroup-action-detail,update-server-detail#update-server

あおかびあおかび

port使わずに普通に作成時にsecuritygroup指定すればいいのでは?