ドキュメント
Terraform / OpenTofu で Takoform を使うための手順と、2 つの利用経路 (lane) の説明です。
クイックスタート
現行ラインは provider v2.0.0 で、Registry に公開済みです。provider と 9 種類の リソースをまとめて動かすには、リポジトリの conformance matrix を使います:
bun run check:current-form-candidates
go run ./cmd/provider-lifecycle-conformance matrix \
--opentofu tofu --terraform terraformこの matrix は、実ホストに触れずに、exact な v1alpha2 契約に対して preview/apply/observe/refresh/delete を検証します。実ホスト相手に試す場合は、 そのホストが versioned discovery 経路 (/.well-known/takoform/v1alpha2) で exact な v1alpha2 FormRef を公開していることを先に確認してください。
現行 provider のピン留め
現行ラインを使うには provider v2.0.0 をピン留めします。init で Registry からインストールされます。
terraform {
required_providers {
takoform = {
source = "registry.terraform.io/tako0614/takoform"
version = "= 2.0.0"
}
}
}2 つの利用経路
provider の address は registry.terraform.io/tako0614/takoform の 1 つだけで、 利用経路は 2 つです。
| 経路 | 用途 | インストール |
|---|---|---|
| v1.0.3 (公開済み) | 既存の Legacy state の保守・delete・recovery | Registry から |
| v2.0.0 (現行) | 現行の 9 契約 | Registry から |
公開済み Legacy の保守
既存の v1 state には、公開済みの provider v1.0.3 をピン留めしてください。 この provider が state を v2 の意味論に自動変換することはありません。
terraform {
required_providers {
takoform = {
source = "registry.terraform.io/tako0614/takoform"
version = "= 1.0.3"
}
}
}v1 からの移行
移行は明示的な create/import で行います。state が自動的に書き換わることは なく、provider v2 は provider-v1 の state を拒否します。
- provider v1 をピン留めし、Legacy resource を refresh する。
- secret を除く desired configuration と、必要な public output を記録する。
- exact な v1alpha2 FormRef で新規作成するか、ホストの conformance が証明された resource だけを import する。
- consumer を切り替えて observe し、rollback が不要になった時点で、v1 を使って Legacy を delete する。
リソースリファレンス
各リソースの引数・read-only 属性・宣言 interface・import の挙動は、次のページに まとまっています:
- edge_worker
- relational_database
- object_bucket
- key_value_store
- queue
- schedule
- container_service
- stateful_entity
- vector_index
- interface data source
ホストとの境界
Takoform が所有するのは、workload semantics、schema、exact identity、package、 conformance だけです。capability support、配置、ルーティング、スケーリング、 資格情報、復旧はホストが、マネージドの容量・課金・クォータ・SLA は Takosumi Cloud が所有します。
Takoform は Experimental specification project です。現行の FormRef は forms.takoform.com/v1alpha2、現行の package envelope は packages.forms.takoform.com/v1alpha3 です。provider v1.0.3 は公開済みの Legacy client、provider v2.0.0 は現在の公開済み client です。 forms.takoform.com/v1alpha1 の公開済み Form Package identity 34件は、不変の Legacy 証跡です。現在、中央による承認や admission はありません。