Worker Custom Domain 0.1.0
管理しているホスト名を、Workerの有効なデプロイに接続します。
公開パッケージの内容を取得して検証済みです。
Hostの対応や受け入れ判断は、パッケージの公開とは別です。このバージョンを使う前に、利用先のHostで確認してください。
使い方
この接続を削除してもWorkerは削除されず、ホスト名だけが切り離されます。HostはDNS名を正規化し、所有の重複を拒否します。例の.invalidホスト名は接続できない説明用の名前です。
関連するForms: ModuleWorker 0.1.0 · WorkerDeployment 0.2.0 · WorkerEndpoint 0.1.0
定義の説明(英語原文)
Attaches one DNS hostname to a Module Worker so its active deployment serves that hostname over HTTPS. Inward activation is an attachment, never a binding; deleting the attachment detaches the hostname and never deletes the worker. A hostname is a name in DNS rather than a label in this host's namespace, so it is CANONICALIZED before it is compared and before it is stored — trailing root dot removed, ASCII letters lowercased — and one canonical hostname is served by AT MOST ONE attachment per tenant, across every space. A second attachment claiming a hostname a live one already serves is refused before any mutation; releasing the holder makes the claim representable (decision 0026).
設定項目
項目名とスキーマ内の説明は、パッケージに含まれる英語の原文です。日本語の解説は定義に要件を追加するものではありません。
hostname
必須 · string
Dotted DNS hostname this attachment serves. Changing it replaces the attachment. The pattern admits the spellings DNS treats as one name — an uppercase letter, a trailing root dot — because a host canonicalizes rather than refusing them; it admits no non-ASCII byte, so an internationalized name travels as its A-label.
- maxLength: 253
- pattern: "^[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?(?:\.[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?)+\.?$"
worker
必須 · object
Module Worker served on this hostname.
- additionalProperties: false
設定の例
パッケージに含まれるfixtures/desired.jsonをそのまま掲載しています。完全なHost APIリクエストやOpenTofuの設定ではありません。例のリソース参照とArtifactのダイジェストは、実際の値に置き換えてください。このJSONだけでリソースが作成されることはありません。
{
"hostname": "app.portable-conformance.invalid",
"worker": {
"apiVersion": "edge.forms.takoform.com",
"kind": "ModuleWorker",
"name": "module-worker"
}
}設定のスキーマ全文(英語原文)
入れ子の項目、選択肢、すべてのスキーマ制約を以下に掲載しています。Hostが検証する意味上の規則は、定義の説明にも記載されています。
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"description": "Attaches one DNS hostname to a Module Worker so its active deployment serves that hostname over HTTPS. Inward activation is an attachment, never a binding; deleting the attachment detaches the hostname and never deletes the worker. A hostname is a name in DNS rather than a label in this host's namespace, so it is CANONICALIZED before it is compared and before it is stored — trailing root dot removed, ASCII letters lowercased — and one canonical hostname is served by AT MOST ONE attachment per tenant, across every space. A second attachment claiming a hostname a live one already serves is refused before any mutation; releasing the holder makes the claim representable (decision 0026).",
"properties": {
"hostname": {
"description": "Dotted DNS hostname this attachment serves. Changing it replaces the attachment. The pattern admits the spellings DNS treats as one name — an uppercase letter, a trailing root dot — because a host canonicalizes rather than refusing them; it admits no non-ASCII byte, so an internationalized name travels as its A-label.",
"maxLength": 253,
"pattern": "^[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?(?:\\.[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?)+\\.?$",
"type": "string"
},
"worker": {
"additionalProperties": false,
"description": "Module Worker served on this hostname.",
"properties": {
"apiVersion": {
"const": "edge.forms.takoform.com",
"type": "string"
},
"kind": {
"const": "ModuleWorker",
"type": "string"
},
"name": {
"maxLength": 63,
"minLength": 1,
"pattern": "^[a-z]([a-z0-9-]{0,61}[a-z0-9])?$",
"type": "string"
}
},
"required": [
"apiVersion",
"kind",
"name"
],
"type": "object",
"x-takoform-required-entrypoint": "fetch",
"x-takoform-required-interface": {
"apiVersion": "interfaces.takoform.com/v1alpha1",
"name": "worker.runtime",
"schemaDigest": "sha256:ed2f8211aac5be94488d391945ca6aca7627a4ecbd261e39790093e887feae08",
"version": "1.1.0"
}
}
},
"required": [
"hostname",
"worker"
],
"title": "Worker Custom Domain desired state",
"type": "object"
}ライフサイクル
役割: attachment
- create
- read
- delete
- import
- observe
提供するInterface
ありません。
パッケージ参照
| 項目 | 値 |
|---|---|
| Kind | WorkerCustomDomain |
| Package digest | sha256:94453c8f24eccf11e2a7142fb8711b47a8b039a7124a9498c498ec466c0574ed |
| Schema digest | sha256:1e4ae27dd53dfb8db977e3627e0b14f0d5e284703e9c435f48af31bd8e474110 |
| Tag | forms/k-mvsgozjomzxxe3ltfz2gc23pmzxxe3jomnxw2l2xn5zgwzlsin2xg5dpnvcg63lbnfxa/sha256-94453c8f24eccf11e2a7142fb8711b47a8b039a7124a9498c498ec466c0574ed |
| Source path | forms/releases/k-mvsgozjomzxxe3ltfz2gc23pmzxxe3jomnxw2l2xn5zgwzlsin2xg5dpnvcg63lbnfxa/sha256-94453c8f24eccf11e2a7142fb8711b47a8b039a7124a9498c498ec466c0574ed |
| 署名セット | e7f8a39311dd011b8467e97e7f300cabb9a6b06c |
4項目のFormRef
{
"apiVersion": "edge.forms.takoform.com",
"kind": "WorkerCustomDomain",
"definitionVersion": "0.1.0",
"schemaDigest": "sha256:1e4ae27dd53dfb8db977e3627e0b14f0d5e284703e9c435f48af31bd8e474110"
}