{ "module": "cloudflare-dns", "version": "1", "slug": "cfdns", "provides": [ { "name": "public-dns", "scope": "mesh" } ], "serves": { "public-dns": {} }, "grants": { "public-dns": "${dir:grants}" }, "receives": { "public-dns": "${dir:grants}/mesh.json" }, "own-secrets": { "token": "${dir:state}/token" }, "emits": [ "record.created", "record.removed" ], "resources": [ { "id": "state", "type": "directory", "mode": "0700", "place": "." }, { "id": "grants", "type": "directory", "mode": "0700" }, { "id": "config", "type": "file", "path": "${dir:state}/config.json", "merge": "json", "content": "{}", "mode": "0600" } ], "capabilities": [ "container-runtime" ], "build": { "artifacts": [ { "name": "code", "kind": "bundle", "language": "typescript", "entrypoints": [ "tools/index.js", "provisioner/index.js" ], "loads": [ "tools/index.js", "provisioner/index.js" ], "env": { "MESH_CLOUDFLARE_TOKEN_FILE": "${dir:state}/token", "MESH_CLOUDFLARE_CONFIG_FILE": "${dir:state}/config.json", "MESH_RECEIVES": "${dir:grants}/mesh.json" } } ] } }