@caelo-cms/provisioning 0.10.47 → 0.10.49

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (321) hide show
  1. package/caddy/Caddyfile.production +1 -1
  2. package/caddy/Caddyfile.staging +1 -1
  3. package/dist/agent/apply.d.ts +45 -0
  4. package/dist/agent/apply.d.ts.map +1 -0
  5. package/dist/agent/apply.js +83 -0
  6. package/dist/agent/apply.js.map +1 -0
  7. package/dist/agent/cli-provenance.d.ts +42 -0
  8. package/dist/agent/cli-provenance.d.ts.map +1 -0
  9. package/dist/agent/cli-provenance.js +138 -0
  10. package/dist/agent/cli-provenance.js.map +1 -0
  11. package/dist/agent/command.d.ts +79 -0
  12. package/dist/agent/command.d.ts.map +1 -0
  13. package/dist/agent/command.js +454 -0
  14. package/dist/agent/command.js.map +1 -0
  15. package/dist/agent/config.d.ts +30 -0
  16. package/dist/agent/config.d.ts.map +1 -0
  17. package/dist/agent/config.js +60 -0
  18. package/dist/agent/config.js.map +1 -0
  19. package/dist/agent/lock.d.ts +13 -0
  20. package/dist/agent/lock.d.ts.map +1 -0
  21. package/dist/agent/lock.js +100 -0
  22. package/dist/agent/lock.js.map +1 -0
  23. package/dist/agent/queue.d.ts +35 -0
  24. package/dist/agent/queue.d.ts.map +1 -0
  25. package/dist/agent/queue.js +50 -0
  26. package/dist/agent/queue.js.map +1 -0
  27. package/dist/agent/run.d.ts +97 -0
  28. package/dist/agent/run.d.ts.map +1 -0
  29. package/dist/agent/run.js +198 -0
  30. package/dist/agent/run.js.map +1 -0
  31. package/dist/agent/systemd.d.ts +55 -0
  32. package/dist/agent/systemd.d.ts.map +1 -0
  33. package/dist/agent/systemd.js +171 -0
  34. package/dist/agent/systemd.js.map +1 -0
  35. package/dist/agent/units.d.ts +44 -0
  36. package/dist/agent/units.d.ts.map +1 -0
  37. package/dist/agent/units.js +127 -0
  38. package/dist/agent/units.js.map +1 -0
  39. package/dist/agent-db.js +18402 -0
  40. package/dist/cli.js +119 -16
  41. package/dist/cli.js.map +1 -1
  42. package/dist/cloudsql-iam-user.d.ts +39 -0
  43. package/dist/cloudsql-iam-user.d.ts.map +1 -0
  44. package/dist/cloudsql-iam-user.js +119 -0
  45. package/dist/cloudsql-iam-user.js.map +1 -0
  46. package/dist/compose.d.ts +16 -0
  47. package/dist/compose.d.ts.map +1 -1
  48. package/dist/compose.js +26 -1
  49. package/dist/compose.js.map +1 -1
  50. package/dist/dns/index.d.ts +2 -0
  51. package/dist/dns/index.d.ts.map +1 -1
  52. package/dist/dns/index.js +3 -2
  53. package/dist/dns/index.js.map +1 -1
  54. package/dist/dns/manual.d.ts +5 -0
  55. package/dist/dns/manual.d.ts.map +1 -1
  56. package/dist/dns/manual.js +28 -12
  57. package/dist/dns/manual.js.map +1 -1
  58. package/dist/gcloud.d.ts +2 -0
  59. package/dist/gcloud.d.ts.map +1 -1
  60. package/dist/gcloud.js +1 -1
  61. package/dist/gcloud.js.map +1 -1
  62. package/dist/gcp-names.d.ts +15 -0
  63. package/dist/gcp-names.d.ts.map +1 -1
  64. package/dist/gcp-names.js +23 -0
  65. package/dist/gcp-names.js.map +1 -1
  66. package/dist/index.d.ts +6 -0
  67. package/dist/index.d.ts.map +1 -1
  68. package/dist/index.js +4 -0
  69. package/dist/index.js.map +1 -1
  70. package/dist/infra-contract.d.ts +1 -1
  71. package/dist/infra-contract.js +7 -1
  72. package/dist/infra-contract.js.map +1 -1
  73. package/dist/install-job-runner.d.ts +13 -0
  74. package/dist/install-job-runner.d.ts.map +1 -0
  75. package/dist/install-job-runner.js +155 -0
  76. package/dist/install-job-runner.js.map +1 -0
  77. package/dist/install-job.d.ts +210 -0
  78. package/dist/install-job.d.ts.map +1 -0
  79. package/dist/install-job.js +449 -0
  80. package/dist/install-job.js.map +1 -0
  81. package/dist/install-state.d.ts +10 -1
  82. package/dist/install-state.d.ts.map +1 -1
  83. package/dist/install-state.js +10 -2
  84. package/dist/install-state.js.map +1 -1
  85. package/dist/lifecycle.d.ts.map +1 -1
  86. package/dist/lifecycle.js +19 -4
  87. package/dist/lifecycle.js.map +1 -1
  88. package/dist/migration-runner.d.ts +5 -0
  89. package/dist/migration-runner.d.ts.map +1 -1
  90. package/dist/migration-runner.js +1 -1
  91. package/dist/migration-runner.js.map +1 -1
  92. package/dist/operator-access.d.ts +14 -8
  93. package/dist/operator-access.d.ts.map +1 -1
  94. package/dist/operator-access.js +16 -102
  95. package/dist/operator-access.js.map +1 -1
  96. package/dist/release-manifest.d.ts +2 -41
  97. package/dist/release-manifest.d.ts.map +1 -1
  98. package/dist/release-manifest.js +18 -121
  99. package/dist/release-manifest.js.map +1 -1
  100. package/dist/run-mode.d.ts +27 -0
  101. package/dist/run-mode.d.ts.map +1 -0
  102. package/dist/run-mode.js +22 -0
  103. package/dist/run-mode.js.map +1 -0
  104. package/dist/runtime-secrets.d.ts +19 -0
  105. package/dist/runtime-secrets.d.ts.map +1 -1
  106. package/dist/runtime-secrets.js +44 -0
  107. package/dist/runtime-secrets.js.map +1 -1
  108. package/dist/self-hosted-roles.d.ts +22 -1
  109. package/dist/self-hosted-roles.d.ts.map +1 -1
  110. package/dist/self-hosted-roles.js +81 -12
  111. package/dist/self-hosted-roles.js.map +1 -1
  112. package/dist/self-hosted-upgrade.d.ts +17 -0
  113. package/dist/self-hosted-upgrade.d.ts.map +1 -1
  114. package/dist/self-hosted-upgrade.js +16 -1
  115. package/dist/self-hosted-upgrade.js.map +1 -1
  116. package/dist/stack-contract.d.ts +6 -0
  117. package/dist/stack-contract.d.ts.map +1 -1
  118. package/dist/stack-contract.js +10 -1
  119. package/dist/stack-contract.js.map +1 -1
  120. package/dist/upgrade/converge.d.ts +6 -0
  121. package/dist/upgrade/converge.d.ts.map +1 -1
  122. package/dist/upgrade/converge.js +59 -2
  123. package/dist/upgrade/converge.js.map +1 -1
  124. package/dist/upgrade/gcp-lookup.d.ts +6 -0
  125. package/dist/upgrade/gcp-lookup.d.ts.map +1 -1
  126. package/dist/upgrade/gcp-lookup.js +25 -0
  127. package/dist/upgrade/gcp-lookup.js.map +1 -1
  128. package/dist/upgrade/release-images.d.ts +26 -2
  129. package/dist/upgrade/release-images.d.ts.map +1 -1
  130. package/dist/upgrade/release-images.js +35 -2
  131. package/dist/upgrade/release-images.js.map +1 -1
  132. package/dist/upgrade/upgrade.d.ts +5 -0
  133. package/dist/upgrade/upgrade.d.ts.map +1 -1
  134. package/dist/upgrade/upgrade.js +28 -1
  135. package/dist/upgrade/upgrade.js.map +1 -1
  136. package/dist/upgrader-assess.d.ts +85 -0
  137. package/dist/upgrader-assess.d.ts.map +1 -0
  138. package/dist/upgrader-assess.js +122 -0
  139. package/dist/upgrader-assess.js.map +1 -0
  140. package/dist/upgrader-gcp.d.ts +17 -0
  141. package/dist/upgrader-gcp.d.ts.map +1 -0
  142. package/dist/upgrader-gcp.js +87 -0
  143. package/dist/upgrader-gcp.js.map +1 -0
  144. package/dist/upgrader-job.d.ts +133 -0
  145. package/dist/upgrader-job.d.ts.map +1 -0
  146. package/dist/upgrader-job.js +259 -0
  147. package/dist/upgrader-job.js.map +1 -0
  148. package/dist/upgrader-reporter.d.ts +35 -0
  149. package/dist/upgrader-reporter.d.ts.map +1 -0
  150. package/dist/upgrader-reporter.js +79 -0
  151. package/dist/upgrader-reporter.js.map +1 -0
  152. package/dist/upgrader-setup.d.ts +59 -0
  153. package/dist/upgrader-setup.d.ts.map +1 -0
  154. package/dist/upgrader-setup.js +308 -0
  155. package/dist/upgrader-setup.js.map +1 -0
  156. package/dist/wizard.d.ts +6 -0
  157. package/dist/wizard.d.ts.map +1 -1
  158. package/dist/wizard.js +32 -4
  159. package/dist/wizard.js.map +1 -1
  160. package/dist/wizards/gcp-firebase.d.ts +3 -0
  161. package/dist/wizards/gcp-firebase.d.ts.map +1 -1
  162. package/dist/wizards/gcp-firebase.js +1 -0
  163. package/dist/wizards/gcp-firebase.js.map +1 -1
  164. package/dist/wizards/gcp-install-job.d.ts +74 -0
  165. package/dist/wizards/gcp-install-job.d.ts.map +1 -0
  166. package/dist/wizards/gcp-install-job.js +398 -0
  167. package/dist/wizards/gcp-install-job.js.map +1 -0
  168. package/dist/wizards/gcp-prompts.d.ts +3 -0
  169. package/dist/wizards/gcp-prompts.d.ts.map +1 -0
  170. package/dist/wizards/gcp-prompts.js +25 -0
  171. package/dist/wizards/gcp-prompts.js.map +1 -0
  172. package/dist/wizards/gcp-pulumi.d.ts +4 -2
  173. package/dist/wizards/gcp-pulumi.d.ts.map +1 -1
  174. package/dist/wizards/gcp-pulumi.js +1 -1
  175. package/dist/wizards/gcp-pulumi.js.map +1 -1
  176. package/dist/wizards/gcp.d.ts +40 -0
  177. package/dist/wizards/gcp.d.ts.map +1 -1
  178. package/dist/wizards/gcp.js +223 -59
  179. package/dist/wizards/gcp.js.map +1 -1
  180. package/package.json +6 -4
  181. package/src/adapter.ts +97 -0
  182. package/src/adc-impersonation.ts +176 -0
  183. package/src/admin-domain.test.ts +254 -0
  184. package/src/admin-domain.ts +245 -0
  185. package/src/admin-memory.test.ts +151 -0
  186. package/src/agent/apply.test.ts +185 -0
  187. package/src/agent/apply.ts +124 -0
  188. package/src/agent/cli-provenance.test.ts +159 -0
  189. package/src/agent/cli-provenance.ts +191 -0
  190. package/src/agent/command.test.ts +77 -0
  191. package/src/agent/command.ts +564 -0
  192. package/src/agent/config.ts +86 -0
  193. package/src/agent/lock-config.test.ts +97 -0
  194. package/src/agent/lock.ts +110 -0
  195. package/src/agent/queue.test.ts +10 -0
  196. package/src/agent/queue.ts +91 -0
  197. package/src/agent/run.test.ts +437 -0
  198. package/src/agent/run.ts +295 -0
  199. package/src/agent/systemd.ts +209 -0
  200. package/src/agent/units.test.ts +223 -0
  201. package/src/agent/units.ts +163 -0
  202. package/src/azure-front-door.test.ts +119 -0
  203. package/src/azure-front-door.ts +56 -0
  204. package/src/bootstrap-token.ts +20 -0
  205. package/src/caddy.ts +112 -0
  206. package/src/cdn-copy.ts +91 -0
  207. package/src/cert-wait.test.ts +194 -0
  208. package/src/cert-wait.ts +163 -0
  209. package/src/checkpoint-secrets.test.ts +380 -0
  210. package/src/checkpoint-secrets.ts +283 -0
  211. package/src/cli-routing.test.ts +45 -0
  212. package/src/cli-routing.ts +43 -0
  213. package/src/cli.ts +1491 -0
  214. package/src/cloudsql-iam-user.ts +147 -0
  215. package/src/compose.ts +334 -0
  216. package/src/default-firewall.test.ts +411 -0
  217. package/src/default-firewall.ts +342 -0
  218. package/src/deployed-release.test.ts +231 -0
  219. package/src/deployed-release.ts +220 -0
  220. package/src/dns/cloudflare.ts +182 -0
  221. package/src/dns/groups.test.ts +76 -0
  222. package/src/dns/groups.ts +86 -0
  223. package/src/dns/index.ts +56 -0
  224. package/src/dns/manual.ts +130 -0
  225. package/src/dns/types.ts +27 -0
  226. package/src/gateway-credentials.test.ts +180 -0
  227. package/src/gateway-credentials.ts +144 -0
  228. package/src/gcloud-components.test.ts +76 -0
  229. package/src/gcloud-components.ts +85 -0
  230. package/src/gcloud-retry.ts +41 -0
  231. package/src/gcloud-runner.test.ts +61 -0
  232. package/src/gcloud.test.ts +99 -0
  233. package/src/gcloud.ts +322 -0
  234. package/src/gcp-names.ts +135 -0
  235. package/src/index.test.ts +332 -0
  236. package/src/index.ts +114 -0
  237. package/src/infra-contract.ts +32 -0
  238. package/src/install-job-runner.ts +166 -0
  239. package/src/install-job.test.ts +566 -0
  240. package/src/install-job.ts +542 -0
  241. package/src/install-state.test.ts +239 -0
  242. package/src/install-state.ts +583 -0
  243. package/src/internal-token.ts +35 -0
  244. package/src/lifecycle.ts +900 -0
  245. package/src/mcp-iap-stacks.test.ts +58 -0
  246. package/src/mcp-iap.test.ts +149 -0
  247. package/src/mcp-iap.ts +131 -0
  248. package/src/media-volume.test.ts +296 -0
  249. package/src/migration-runner.ts +365 -0
  250. package/src/operator-access-stacks.test.ts +55 -0
  251. package/src/operator-access.test.ts +332 -0
  252. package/src/operator-access.ts +554 -0
  253. package/src/ops-backend.test.ts +320 -0
  254. package/src/ops-backend.ts +414 -0
  255. package/src/provisioner-identity.test.ts +482 -0
  256. package/src/provisioner-identity.ts +407 -0
  257. package/src/redirects-emit.ts +175 -0
  258. package/src/region-data.ts +428 -0
  259. package/src/regions.test.ts +277 -0
  260. package/src/regions.ts +370 -0
  261. package/src/release-contract.ts +57 -0
  262. package/src/release-manifest.test.ts +300 -0
  263. package/src/release-manifest.ts +310 -0
  264. package/src/run-mode.ts +40 -0
  265. package/src/runtime-secrets.test.ts +627 -0
  266. package/src/runtime-secrets.ts +754 -0
  267. package/src/self-command.test.ts +14 -0
  268. package/src/self-command.ts +21 -0
  269. package/src/self-hosted-compose.test.ts +177 -0
  270. package/src/self-hosted-release.ts +240 -0
  271. package/src/self-hosted-roles.integration.test.ts +161 -0
  272. package/src/self-hosted-roles.test.ts +124 -0
  273. package/src/self-hosted-roles.ts +203 -0
  274. package/src/self-hosted-upgrade.test.ts +394 -0
  275. package/src/self-hosted-upgrade.ts +548 -0
  276. package/src/stack-contract-parity.test.ts +199 -0
  277. package/src/stack-contract.test.ts +391 -0
  278. package/src/stack-contract.ts +888 -0
  279. package/src/stack-converge-secrets.test.ts +421 -0
  280. package/src/stack-converge.test.ts +833 -0
  281. package/src/stack-converge.ts +909 -0
  282. package/src/staging-admin.test.ts +246 -0
  283. package/src/staging-admin.ts +324 -0
  284. package/src/state-attach.test.ts +211 -0
  285. package/src/state-attach.ts +132 -0
  286. package/src/state-backend.test.ts +145 -0
  287. package/src/state-backend.ts +262 -0
  288. package/src/state-command.ts +293 -0
  289. package/src/state-migrate.test.ts +479 -0
  290. package/src/state-migrate.ts +434 -0
  291. package/src/state-pulumi.ts +289 -0
  292. package/src/state-store.test.ts +212 -0
  293. package/src/state-store.ts +243 -0
  294. package/src/upgrade/app-roll.ts +486 -0
  295. package/src/upgrade/backup.ts +109 -0
  296. package/src/upgrade/converge.ts +437 -0
  297. package/src/upgrade/gcp-lookup.ts +167 -0
  298. package/src/upgrade/health.test.ts +279 -0
  299. package/src/upgrade/health.ts +305 -0
  300. package/src/upgrade/release-images.test.ts +119 -0
  301. package/src/upgrade/release-images.ts +393 -0
  302. package/src/upgrade/reporter.ts +46 -0
  303. package/src/upgrade/upgrade.test.ts +626 -0
  304. package/src/upgrade/upgrade.ts +249 -0
  305. package/src/upgrader-assess.test.ts +306 -0
  306. package/src/upgrader-assess.ts +250 -0
  307. package/src/upgrader-gcp.ts +123 -0
  308. package/src/upgrader-job.test.ts +411 -0
  309. package/src/upgrader-job.ts +502 -0
  310. package/src/upgrader-reporter.test.ts +46 -0
  311. package/src/upgrader-reporter.ts +105 -0
  312. package/src/upgrader-setup.test.ts +169 -0
  313. package/src/upgrader-setup.ts +355 -0
  314. package/src/wizard.ts +425 -0
  315. package/src/wizards/gcp-cost.ts +188 -0
  316. package/src/wizards/gcp-firebase.ts +72 -0
  317. package/src/wizards/gcp-install-job.ts +506 -0
  318. package/src/wizards/gcp-prompts.ts +26 -0
  319. package/src/wizards/gcp-pulumi.test.ts +246 -0
  320. package/src/wizards/gcp-pulumi.ts +516 -0
  321. package/src/wizards/gcp.ts +1935 -0
@@ -1 +1 @@
1
- {"version":3,"file":"gcp.js","sourceRoot":"","sources":["../../src/wizards/gcp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gcp.js","sourceRoot":"","sources":["../../src/wizards/gcp.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@caelo-cms/provisioning",
3
- "version": "0.10.47",
3
+ "version": "0.10.49",
4
4
  "private": false,
5
5
  "license": "MPL-2.0",
6
6
  "description": "Pulumi-driven provisioning for Caelo CMS — `bunx @caelo-cms/provisioning --provider <self-hosted|gcp|aws|azure>` brings up a TLS-served install with Postgres + storage + secrets manager + the admin + the API gateway.",
@@ -20,12 +20,14 @@
20
20
  "exports": {
21
21
  ".": {
22
22
  "types": "./dist/index.d.ts",
23
+ "bun": "./src/index.ts",
23
24
  "import": "./dist/index.js",
24
25
  "default": "./dist/index.js"
25
26
  }
26
27
  },
27
28
  "files": [
28
29
  "dist/",
30
+ "src/",
29
31
  "stacks/",
30
32
  "caddy/",
31
33
  "static/",
@@ -34,11 +36,11 @@
34
36
  ],
35
37
  "scripts": {
36
38
  "typecheck": "tsc -b && tsc --project stacks/gcp/tsconfig.json && tsc --project stacks/gcp-firebase/tsconfig.json",
37
- "build": "tsc -b --force",
38
- "prepublishOnly": "tsc -b --force && tsc --project stacks/gcp/tsconfig.json && tsc --project stacks/gcp-firebase/tsconfig.json"
39
+ "build": "tsc -b --force && bun build ../platform-updater/src/agent-db.ts --target=bun --outfile=dist/agent-db.js",
40
+ "prepublishOnly": "tsc -b --force && bun build ../platform-updater/src/agent-db.ts --target=bun --outfile=dist/agent-db.js && tsc --project stacks/gcp/tsconfig.json && tsc --project stacks/gcp-firebase/tsconfig.json"
39
41
  },
40
42
  "dependencies": {
41
- "@caelo-cms/shared": "^0.10.47",
43
+ "@caelo-cms/shared": "^0.10.49",
42
44
  "@clack/prompts": "1.8.1",
43
45
  "@pulumi/aws": "^7",
44
46
  "@pulumi/awsx": "^3",
package/src/adapter.ts ADDED
@@ -0,0 +1,97 @@
1
+ // SPDX-License-Identifier: MPL-2.0
2
+
3
+ /**
4
+ * P15 — shared cloud-provider adapter contract.
5
+ *
6
+ * Every per-provider Pulumi stack at `packages/provisioning/stacks/<provider>/`
7
+ * exports a `provision(inputs: CloudAdapterInputs): CloudAdapterOutputs`
8
+ * function. The Caelo runtime never knows which provider it's running
9
+ * on — it just consumes the connection strings + URLs the adapter
10
+ * publishes via `CloudAdapterOutputs`. This keeps the per-provider
11
+ * surface small (~6 capabilities, see master plan) and the runtime
12
+ * provider-agnostic.
13
+ *
14
+ * Pulumi types are intentionally NOT imported here so that callers
15
+ * outside the Pulumi runtime (e.g. the cms-provision CLI, the admin
16
+ * app's DNS-guidance page) can consume the *plain* shape without
17
+ * dragging in the @pulumi/pulumi peer dep. Per-stack `index.ts` files
18
+ * narrow the output type to `pulumi.Output<T>` at their boundary.
19
+ */
20
+
21
+ export type Environment = "dev" | "staging" | "production";
22
+
23
+ export interface CloudAdapterInputs {
24
+ /** Primary domain (e.g. example.com). Admin + production public both bind here. */
25
+ readonly domain: string;
26
+ /** Operator email used for ACME / cert provisioning + Pulumi notifications. */
27
+ readonly ownerEmail: string;
28
+ /** Three-env model (CMS_REQUIREMENTS §16.5). Cloud installs always provision all three. */
29
+ readonly environments: ReadonlyArray<Environment>;
30
+ /** Optional pre-existing secret references (e.g. from a CI secrets manager). */
31
+ readonly preProvisionedSecrets?: {
32
+ readonly anthropicApiKey?: string;
33
+ readonly resendApiKey?: string;
34
+ };
35
+ }
36
+
37
+ /**
38
+ * DNS records the operator must create at their registrar to make the
39
+ * install reachable. Surfaced in the admin's /settings/dns page with
40
+ * live resolver status badges.
41
+ */
42
+ export interface DnsRecord {
43
+ readonly hostname: string; // e.g. "de.example.com"
44
+ readonly type: "A" | "AAAA" | "CNAME" | "TXT";
45
+ readonly value: string; // the value the operator's registrar must hold
46
+ readonly purpose: string; // human-readable description
47
+ }
48
+
49
+ /**
50
+ * Plain-data adapter outputs. Per-stack code wraps each field in
51
+ * `pulumi.Output<…>` at the Pulumi boundary, but the *shape* is shared
52
+ * across providers so the cms-provision CLI + the DNS UI can consume
53
+ * any provider's outputs uniformly.
54
+ */
55
+ export interface CloudAdapterOutputs {
56
+ /** DSN for cms_admin role (encrypted in Pulumi state). */
57
+ readonly adminDatabaseUrl: string;
58
+ /** DSN for public_role on cms_public (encrypted in Pulumi state). */
59
+ readonly publicDatabaseUrl: string;
60
+ /**
61
+ * DSN for gateway_role on cms_admin — the API gateway's own narrow login
62
+ * (#613). The gateway gets this and `publicDatabaseUrl`, never
63
+ * `adminDatabaseUrl` (CLAUDE.md §2).
64
+ */
65
+ readonly gatewayDatabaseUrl: string;
66
+ /** Provider-native blob URL (s3://, gs://, https://<account>.blob.core.windows.net/<container>). */
67
+ readonly mediaStorageUrl: string;
68
+ /** Public-facing URL the admin reaches for media reads. */
69
+ readonly mediaCdnBaseUrl: string;
70
+ /** Bootstrap-token URL — operator opens this once after `pulumi up`. */
71
+ readonly bootstrapUrl: string;
72
+ /** DNS records consumed by the admin's DNS-guidance page. */
73
+ readonly dnsRecordsRequired: ReadonlyArray<DnsRecord>;
74
+ /**
75
+ * Where the install's request logs land — read by the P12A analytics
76
+ * plugin's provider-specific log adapter. Provider-native sink URL (BigQuery
77
+ * dataset, CloudWatch log group, Log Analytics workspace).
78
+ */
79
+ readonly edgeLogSinkUrl: string;
80
+ /** Which provider produced these outputs — drives the analytics plugin's adapter dispatch. */
81
+ readonly provider: SupportedProvider;
82
+ /** Which environment this output snapshot represents. */
83
+ readonly environment: Environment;
84
+ }
85
+
86
+ export type SupportedProvider = "self-hosted" | "gcp" | "gcp-firebase" | "aws" | "azure";
87
+
88
+ /**
89
+ * Convenience: the shape persisted in `cms_admin.provisioning_outputs.outputs_json`.
90
+ * Pulumi runs the adapter, the CLI's `pulumi-output-sync` subcommand reads
91
+ * `pulumi stack output --json`, hashes the result, and writes a row keyed on
92
+ * (provider, environment) so the admin UI can read without provider creds.
93
+ */
94
+ export interface ProvisioningOutputsJson {
95
+ readonly outputs: CloudAdapterOutputs;
96
+ readonly syncedAt: string; // ISO timestamp
97
+ }
@@ -0,0 +1,176 @@
1
+ // SPDX-License-Identifier: MPL-2.0
2
+
3
+ /**
4
+ * Pre-flight for the keyless provisioner's credential chain (#696): before
5
+ * `pulumi up`, verify that the operator's Application Default Credentials
6
+ * exist and may mint a token for `caelo-provisioner` — the exact chain
7
+ * Pulumi's GCP provider uses (wizards/gcp-pulumi.ts `pulumiGcpEnv`). A
8
+ * missing login or grant then fails here with the fix, not halfway through
9
+ * the stack. See provisioner-identity.ts for the design.
10
+ *
11
+ * Both access tokens involved (the ADC source token and the minted one)
12
+ * stay in local variables: never printed, logged, returned or written.
13
+ */
14
+
15
+ import { gcloud as defaultGcloud } from "./gcloud.js";
16
+ import { type GcloudRunner, realSleep, type Sleep } from "./gcloud-retry.js";
17
+ import {
18
+ operatorMember,
19
+ PROPAGATION_DELAYS_MS,
20
+ provisionerServiceAccountEmail,
21
+ TOKEN_CREATOR_ROLE,
22
+ withoutAmbientGoogleCredentials,
23
+ } from "./provisioner-identity.js";
24
+
25
+ /** A user-managed service account's email, as IAM reports it. */
26
+ const SERVICE_ACCOUNT_EMAIL =
27
+ /^[a-z][a-z0-9-]{4,28}[a-z0-9]@[a-z][a-z0-9.:-]*[a-z0-9]\.iam\.gserviceaccount\.com$/;
28
+
29
+ export type AdcCheck =
30
+ | { readonly ok: true }
31
+ | {
32
+ readonly ok: false;
33
+ /** `no-adc`: no Application Default Credentials; `denied`: they can't impersonate. */
34
+ readonly reason: "no-adc" | "denied" | "error";
35
+ readonly error: string;
36
+ };
37
+
38
+ /**
39
+ * Verify the credential chain Pulumi will use: the operator's Application
40
+ * Default Credentials exist and may mint a token for the provisioner. Run
41
+ * before `pulumi up` so a missing login or grant fails here with the fix,
42
+ * not halfway through the stack. `freshGrant` waits out IAM propagation
43
+ * (a new binding can take minutes to apply). Both tokens stay in this
44
+ * function: neither is printed nor kept.
45
+ */
46
+ export async function checkAdcImpersonation(
47
+ target: { readonly projectId: string; readonly operatorAccount: string; freshGrant: boolean },
48
+ deps: { run?: GcloudRunner; sleep?: Sleep; fetch?: typeof fetch; env?: NodeJS.ProcessEnv } = {},
49
+ ): Promise<AdcCheck> {
50
+ const run = deps.run ?? defaultGcloud;
51
+ const sleep = deps.sleep ?? realSleep;
52
+ const doFetch = deps.fetch ?? fetch;
53
+ const sa = provisionerServiceAccountEmail(target.projectId);
54
+ const env = withoutAmbientGoogleCredentials(deps.env ?? process.env);
55
+
56
+ const adc = await run(["auth", "application-default", "print-access-token"], { env });
57
+ const sourceToken = adc.ok ? adc.stdout.trim() : "";
58
+ if (!sourceToken) {
59
+ return {
60
+ ok: false,
61
+ reason: "no-adc",
62
+ error: [
63
+ "No Application Default Credentials on this machine.",
64
+ `Infrastructure runs authenticate with your own Google login and impersonate ${sa}; no key file is used.`,
65
+ `Run \`gcloud auth application-default login\` (sign in as ${target.operatorAccount}), then re-run.`,
66
+ ].join("\n"),
67
+ };
68
+ }
69
+
70
+ // The account to impersonate is the one IAM reports, not a string
71
+ // assembled from install.json: what goes into the request is an email
72
+ // Google confirmed exists in the project (CodeQL js/file-access-to-http:
73
+ // local file data never reaches the network unchecked).
74
+ const described = await run(
75
+ [
76
+ "iam",
77
+ "service-accounts",
78
+ "describe",
79
+ sa,
80
+ `--project=${target.projectId}`,
81
+ "--format=value(email)",
82
+ ],
83
+ { env },
84
+ );
85
+ const confirmed = described.ok ? described.stdout.trim().toLowerCase() : "";
86
+ if (!SERVICE_ACCOUNT_EMAIL.test(confirmed) || confirmed !== sa.toLowerCase()) {
87
+ return {
88
+ ok: false,
89
+ reason: "error",
90
+ error: `Could not find ${sa} in project ${target.projectId}${described.ok ? "" : `: ${described.stderr.trim().split("\n").slice(-1)[0] ?? ""}`}. Re-run the installer so it creates the provisioner service account.`,
91
+ };
92
+ }
93
+
94
+ const delays = target.freshGrant ? PROPAGATION_DELAYS_MS : [];
95
+ let status = 0;
96
+ let detail = "";
97
+ for (let attempt = 0; ; attempt++) {
98
+ try {
99
+ const res = await doFetch(
100
+ `https://iamcredentials.googleapis.com/v1/projects/-/serviceAccounts/${encodeURIComponent(confirmed)}:generateAccessToken`,
101
+ {
102
+ method: "POST",
103
+ headers: {
104
+ authorization: `Bearer ${sourceToken}`,
105
+ "content-type": "application/json",
106
+ },
107
+ body: JSON.stringify({
108
+ scope: ["https://www.googleapis.com/auth/cloud-platform"],
109
+ lifetime: "300s",
110
+ }),
111
+ },
112
+ );
113
+ status = res.status;
114
+ // Drain the body without keeping the minted token; only the error text matters.
115
+ const text = await res.text();
116
+ if (res.ok) return { ok: true };
117
+ detail = errorMessage(text);
118
+ } catch (e) {
119
+ return {
120
+ ok: false,
121
+ reason: "error",
122
+ error: `Could not reach the IAM Credentials API: ${e instanceof Error ? e.message : String(e)}`,
123
+ };
124
+ }
125
+ const delay = delays[attempt];
126
+ if (status !== 403 || delay === undefined) break;
127
+ await sleep(delay);
128
+ }
129
+
130
+ if (status !== 403) {
131
+ return {
132
+ ok: false,
133
+ reason: "error",
134
+ error: `Impersonating ${sa} failed (HTTP ${status}): ${detail}`,
135
+ };
136
+ }
137
+ const adcAccount = await tokenAccount(doFetch, sourceToken);
138
+ const mismatch =
139
+ adcAccount && adcAccount.toLowerCase() !== target.operatorAccount.trim().toLowerCase();
140
+ return {
141
+ ok: false,
142
+ reason: "denied",
143
+ error: [
144
+ `Your Application Default Credentials${adcAccount ? ` (${adcAccount})` : ""} may not impersonate ${sa}: ${detail}`,
145
+ mismatch
146
+ ? `They belong to another account than gcloud (${target.operatorAccount}), which holds ${TOKEN_CREATOR_ROLE} on it. Run \`gcloud auth application-default login\` as ${target.operatorAccount}, then re-run.`
147
+ : `The account needs ${TOKEN_CREATOR_ROLE} on ${sa}. A grant made moments ago can take a few minutes to apply: wait, then re-run. Otherwise ask a project Owner to run:\n gcloud iam service-accounts add-iam-policy-binding ${sa} --project=${target.projectId} --member=${operatorMember(adcAccount || target.operatorAccount)} --role=${TOKEN_CREATOR_ROLE} --condition=None`,
148
+ ].join("\n"),
149
+ };
150
+ }
151
+
152
+ function errorMessage(body: string): string {
153
+ try {
154
+ const parsed = JSON.parse(body) as { error?: { message?: string } };
155
+ if (parsed.error?.message) return parsed.error.message;
156
+ } catch {
157
+ // not JSON — fall through to the raw text
158
+ }
159
+ return body.trim().slice(0, 300) || "(no body)";
160
+ }
161
+
162
+ /** The email an access token belongs to (Google's tokeninfo), or "" when unknown. */
163
+ async function tokenAccount(doFetch: typeof fetch, accessToken: string): Promise<string> {
164
+ try {
165
+ const res = await doFetch("https://oauth2.googleapis.com/tokeninfo", {
166
+ method: "POST",
167
+ headers: { "content-type": "application/x-www-form-urlencoded" },
168
+ body: new URLSearchParams({ access_token: accessToken }).toString(),
169
+ });
170
+ if (!res.ok) return "";
171
+ const info = (await res.json()) as { email?: unknown };
172
+ return typeof info.email === "string" ? info.email : "";
173
+ } catch {
174
+ return "";
175
+ }
176
+ }