Skip to content

SQLite Migration Set 0.1.0

順序が固定された、変更不可のSQLマイグレーション履歴を指定します。

公開パッケージの内容を取得して検証済みです。

Hostの対応や受け入れ判断は、パッケージの公開とは別です。このバージョンを使う前に、利用先のHostで確認してください。

使い方

MigrationBundleのマニフェストがSQLの内容を特定します。後継のセットには追加できますが、適用済みの先頭部分を書き換えたり、並べ替えたり、削除したりすることはできません。

関連するForms: SQLiteDatabase 0.1.0 · SQLiteMigrationApplication 0.1.0

定義の説明(英語原文)

Immutable ordered SQLite migration history backed by one committed artifacts.takoform.com/v1alpha1 MigrationBundle manifest. The manifest files array is the migration order; every entry has a unique portable path, media type application/sql, exact size, and sha256 digest. SQL bytes travel only through the content-addressed artifact upload and never enter desired state. A new set may append entries, but an application refuses any set whose prefix rewrites, reorders, or removes an already applied path+digest pair.

設定項目

項目名とスキーマ内の説明は、パッケージに含まれる英語の原文です。日本語の解説は定義に要件を追加するものではありません。

manifestDigest

必須 · string

Immutable identity of the committed MigrationBundle artifact manifest. Before mutation a host resolves it within the caller's tenant and verifies its canonical digest, MigrationBundle kind, non-empty ordered files inventory, unique paths, application/sql media type, sizes, and blob digests.

  • pattern: "^sha256:[0-9a-f]{64}$"

設定の例

パッケージに含まれるfixtures/desired.jsonをそのまま掲載しています。完全なHost APIリクエストやOpenTofuの設定ではありません。例のリソース参照とArtifactのダイジェストは、実際の値に置き換えてください。このJSONだけでリソースが作成されることはありません。

json
{
  "manifestDigest": "sha256:344f4d30e8843b60598889c142ad26a7a9958ead6d26f50d787cd0fc32b02338"
}

例の原文を見る

設定のスキーマ全文(英語原文)

入れ子の項目、選択肢、すべてのスキーマ制約を以下に掲載しています。Hostが検証する意味上の規則は、定義の説明にも記載されています。

json
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false,
  "description": "Immutable ordered SQLite migration history backed by one committed artifacts.takoform.com/v1alpha1 MigrationBundle manifest. The manifest files array is the migration order; every entry has a unique portable path, media type application/sql, exact size, and sha256 digest. SQL bytes travel only through the content-addressed artifact upload and never enter desired state. A new set may append entries, but an application refuses any set whose prefix rewrites, reorders, or removes an already applied path+digest pair.",
  "properties": {
    "manifestDigest": {
      "description": "Immutable identity of the committed MigrationBundle artifact manifest. Before mutation a host resolves it within the caller's tenant and verifies its canonical digest, MigrationBundle kind, non-empty ordered files inventory, unique paths, application/sql media type, sizes, and blob digests.",
      "pattern": "^sha256:[0-9a-f]{64}$",
      "type": "string"
    }
  },
  "required": [
    "manifestDigest"
  ],
  "title": "SQLite Migration Set desired state",
  "type": "object"
}

ライフサイクル

役割: revision

  • create
  • read
  • delete
  • import
  • observe

提供するInterface

ありません。

パッケージ参照

項目
KindSQLiteMigrationSet
Package digestsha256:45a09765392059c0f1f4794885f6a5bc074400490375b46c5a39bfd018f1185a
Schema digestsha256:05a4aa2ebd8fbf659f05ae378288d9c9657cc7478e1437f013732199bfcce7b9
Tagforms/k-mvsgozjomzxxe3ltfz2gc23pmzxxe3jomnxw2l2tkfggs5dfjvuwo4tboruw63stmv2a/sha256-45a09765392059c0f1f4794885f6a5bc074400490375b46c5a39bfd018f1185a
Source pathforms/releases/k-mvsgozjomzxxe3ltfz2gc23pmzxxe3jomnxw2l2tkfggs5dfjvuwo4tboruw63stmv2a/sha256-45a09765392059c0f1f4794885f6a5bc074400490375b46c5a39bfd018f1185a
署名セットe7f8a39311dd011b8467e97e7f300cabb9a6b06c

変更不可のパッケージを開く

4項目のFormRef
json
{
  "apiVersion": "edge.forms.takoform.com",
  "kind": "SQLiteMigrationSet",
  "definitionVersion": "0.1.0",
  "schemaDigest": "sha256:05a4aa2ebd8fbf659f05ae378288d9c9657cc7478e1437f013732199bfcce7b9"
}