@caelo-cms/provisioning 0.10.60 → 0.10.62

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 (286) hide show
  1. package/caddy/Caddyfile.production +7 -0
  2. package/caddy/Caddyfile.staging +7 -0
  3. package/dist/admin-internal-answer.d.ts +12 -0
  4. package/dist/admin-internal-answer.d.ts.map +1 -0
  5. package/dist/admin-internal-answer.js +32 -0
  6. package/dist/admin-internal-answer.js.map +1 -0
  7. package/dist/admin-internal-google.d.ts +4 -0
  8. package/dist/admin-internal-google.d.ts.map +1 -0
  9. package/dist/admin-internal-google.js +161 -0
  10. package/dist/admin-internal-google.js.map +1 -0
  11. package/dist/admin-internal-self-hosted.d.ts +30 -0
  12. package/dist/admin-internal-self-hosted.d.ts.map +1 -0
  13. package/dist/admin-internal-self-hosted.js +92 -0
  14. package/dist/admin-internal-self-hosted.js.map +1 -0
  15. package/dist/admin-internal.d.ts +33 -12
  16. package/dist/admin-internal.d.ts.map +1 -1
  17. package/dist/admin-internal.js +27 -159
  18. package/dist/admin-internal.js.map +1 -1
  19. package/dist/agent/command.d.ts +7 -0
  20. package/dist/agent/command.d.ts.map +1 -1
  21. package/dist/agent/command.js +1 -0
  22. package/dist/agent/command.js.map +1 -1
  23. package/dist/agent/lock.d.ts +13 -1
  24. package/dist/agent/lock.d.ts.map +1 -1
  25. package/dist/agent/lock.js +62 -5
  26. package/dist/agent/lock.js.map +1 -1
  27. package/dist/agent/run.d.ts +5 -1
  28. package/dist/agent/run.d.ts.map +1 -1
  29. package/dist/agent/run.js +8 -1
  30. package/dist/agent/run.js.map +1 -1
  31. package/dist/agent-db.js +192 -90
  32. package/dist/caddy.d.ts.map +1 -1
  33. package/dist/caddy.js +11 -1
  34. package/dist/caddy.js.map +1 -1
  35. package/dist/cli-routing.js +1 -1
  36. package/dist/cli-routing.js.map +1 -1
  37. package/dist/cli.js +95 -38
  38. package/dist/cli.js.map +1 -1
  39. package/dist/compose.d.ts +7 -0
  40. package/dist/compose.d.ts.map +1 -1
  41. package/dist/compose.js +5 -0
  42. package/dist/compose.js.map +1 -1
  43. package/dist/converge-job-gcp.d.ts.map +1 -1
  44. package/dist/converge-job-gcp.js +10 -7
  45. package/dist/converge-job-gcp.js.map +1 -1
  46. package/dist/converge-job-preflight.d.ts +21 -0
  47. package/dist/converge-job-preflight.d.ts.map +1 -0
  48. package/dist/converge-job-preflight.js +111 -0
  49. package/dist/converge-job-preflight.js.map +1 -0
  50. package/dist/converge-job.d.ts +8 -2
  51. package/dist/converge-job.d.ts.map +1 -1
  52. package/dist/converge-job.js +14 -0
  53. package/dist/converge-job.js.map +1 -1
  54. package/dist/gateway-credentials.d.ts +5 -3
  55. package/dist/gateway-credentials.d.ts.map +1 -1
  56. package/dist/gateway-credentials.js +5 -8
  57. package/dist/gateway-credentials.js.map +1 -1
  58. package/dist/gcloud.d.ts +29 -0
  59. package/dist/gcloud.d.ts.map +1 -1
  60. package/dist/gcloud.js +66 -0
  61. package/dist/gcloud.js.map +1 -1
  62. package/dist/infra-contract.d.ts +1 -1
  63. package/dist/infra-contract.d.ts.map +1 -1
  64. package/dist/infra-contract.js +10 -1
  65. package/dist/infra-contract.js.map +1 -1
  66. package/dist/install-job.d.ts +3 -1
  67. package/dist/install-job.d.ts.map +1 -1
  68. package/dist/install-job.js.map +1 -1
  69. package/dist/install-state.d.ts +10 -0
  70. package/dist/install-state.d.ts.map +1 -1
  71. package/dist/install-state.js +12 -0
  72. package/dist/install-state.js.map +1 -1
  73. package/dist/lifecycle.d.ts +12 -0
  74. package/dist/lifecycle.d.ts.map +1 -1
  75. package/dist/lifecycle.js +113 -28
  76. package/dist/lifecycle.js.map +1 -1
  77. package/dist/mcp-iap.d.ts +2 -0
  78. package/dist/mcp-iap.d.ts.map +1 -1
  79. package/dist/mcp-iap.js +50 -17
  80. package/dist/mcp-iap.js.map +1 -1
  81. package/dist/operator-access.d.ts +1 -2
  82. package/dist/operator-access.d.ts.map +1 -1
  83. package/dist/operator-access.js +1 -2
  84. package/dist/operator-access.js.map +1 -1
  85. package/dist/owner-reset.d.ts +16 -19
  86. package/dist/owner-reset.d.ts.map +1 -1
  87. package/dist/owner-reset.js +92 -19
  88. package/dist/owner-reset.js.map +1 -1
  89. package/dist/preview-plan.d.ts +71 -0
  90. package/dist/preview-plan.d.ts.map +1 -0
  91. package/dist/preview-plan.js +168 -0
  92. package/dist/preview-plan.js.map +1 -0
  93. package/dist/public-role-isolation.d.ts +2 -0
  94. package/dist/public-role-isolation.d.ts.map +1 -1
  95. package/dist/public-role-isolation.js +9 -3
  96. package/dist/public-role-isolation.js.map +1 -1
  97. package/dist/release-contract.d.ts.map +1 -1
  98. package/dist/release-contract.js +4 -0
  99. package/dist/release-contract.js.map +1 -1
  100. package/dist/self-hosted-internal-secret.d.ts +27 -0
  101. package/dist/self-hosted-internal-secret.d.ts.map +1 -0
  102. package/dist/self-hosted-internal-secret.js +69 -0
  103. package/dist/self-hosted-internal-secret.js.map +1 -0
  104. package/dist/self-hosted-release.d.ts +3 -1
  105. package/dist/self-hosted-release.d.ts.map +1 -1
  106. package/dist/self-hosted-release.js +6 -2
  107. package/dist/self-hosted-release.js.map +1 -1
  108. package/dist/self-hosted-upgrade.d.ts +13 -1
  109. package/dist/self-hosted-upgrade.d.ts.map +1 -1
  110. package/dist/self-hosted-upgrade.js +26 -2
  111. package/dist/self-hosted-upgrade.js.map +1 -1
  112. package/dist/stack-converge.d.ts +5 -2
  113. package/dist/stack-converge.d.ts.map +1 -1
  114. package/dist/stack-converge.js +73 -8
  115. package/dist/stack-converge.js.map +1 -1
  116. package/dist/staging-admin.d.ts +4 -1
  117. package/dist/staging-admin.d.ts.map +1 -1
  118. package/dist/staging-admin.js.map +1 -1
  119. package/dist/state-backend.d.ts +3 -2
  120. package/dist/state-backend.d.ts.map +1 -1
  121. package/dist/state-backend.js +3 -2
  122. package/dist/state-backend.js.map +1 -1
  123. package/dist/state-command.d.ts +17 -0
  124. package/dist/state-command.d.ts.map +1 -1
  125. package/dist/state-command.js +34 -5
  126. package/dist/state-command.js.map +1 -1
  127. package/dist/state-migrate.d.ts +14 -3
  128. package/dist/state-migrate.d.ts.map +1 -1
  129. package/dist/state-migrate.js +31 -7
  130. package/dist/state-migrate.js.map +1 -1
  131. package/dist/state-pulumi.d.ts +0 -2
  132. package/dist/state-pulumi.d.ts.map +1 -1
  133. package/dist/state-pulumi.js +19 -20
  134. package/dist/state-pulumi.js.map +1 -1
  135. package/dist/static-security-headers.d.ts +86 -0
  136. package/dist/static-security-headers.d.ts.map +1 -0
  137. package/dist/static-security-headers.js +126 -0
  138. package/dist/static-security-headers.js.map +1 -0
  139. package/dist/static-svg-gcp.d.ts +28 -0
  140. package/dist/static-svg-gcp.d.ts.map +1 -0
  141. package/dist/static-svg-gcp.js +106 -0
  142. package/dist/static-svg-gcp.js.map +1 -0
  143. package/dist/upgrade/app-roll.d.ts +3 -0
  144. package/dist/upgrade/app-roll.d.ts.map +1 -1
  145. package/dist/upgrade/app-roll.js +12 -5
  146. package/dist/upgrade/app-roll.js.map +1 -1
  147. package/dist/upgrade/backup.d.ts +2 -0
  148. package/dist/upgrade/backup.d.ts.map +1 -1
  149. package/dist/upgrade/backup.js +5 -4
  150. package/dist/upgrade/backup.js.map +1 -1
  151. package/dist/upgrade/converge.d.ts +7 -0
  152. package/dist/upgrade/converge.d.ts.map +1 -1
  153. package/dist/upgrade/converge.js +19 -7
  154. package/dist/upgrade/converge.js.map +1 -1
  155. package/dist/upgrade/gcp-lookup.d.ts +38 -3
  156. package/dist/upgrade/gcp-lookup.d.ts.map +1 -1
  157. package/dist/upgrade/gcp-lookup.js +31 -9
  158. package/dist/upgrade/gcp-lookup.js.map +1 -1
  159. package/dist/upgrade/health.d.ts +31 -5
  160. package/dist/upgrade/health.d.ts.map +1 -1
  161. package/dist/upgrade/health.js +114 -25
  162. package/dist/upgrade/health.js.map +1 -1
  163. package/dist/upgrade/release-images.d.ts +17 -0
  164. package/dist/upgrade/release-images.d.ts.map +1 -1
  165. package/dist/upgrade/release-images.js +23 -12
  166. package/dist/upgrade/release-images.js.map +1 -1
  167. package/dist/upgrade/reporter.d.ts +2 -0
  168. package/dist/upgrade/reporter.d.ts.map +1 -1
  169. package/dist/upgrade/reporter.js +1 -0
  170. package/dist/upgrade/reporter.js.map +1 -1
  171. package/dist/upgrade/upgrade.d.ts +11 -1
  172. package/dist/upgrade/upgrade.d.ts.map +1 -1
  173. package/dist/upgrade/upgrade.js +5 -2
  174. package/dist/upgrade/upgrade.js.map +1 -1
  175. package/dist/upgrader-gcp.d.ts +12 -2
  176. package/dist/upgrader-gcp.d.ts.map +1 -1
  177. package/dist/upgrader-gcp.js +22 -13
  178. package/dist/upgrader-gcp.js.map +1 -1
  179. package/dist/upgrader-iam-preflight.d.ts +16 -3
  180. package/dist/upgrader-iam-preflight.d.ts.map +1 -1
  181. package/dist/upgrader-iam-preflight.js +9 -4
  182. package/dist/upgrader-iam-preflight.js.map +1 -1
  183. package/dist/upgrader-job.d.ts.map +1 -1
  184. package/dist/upgrader-job.js +10 -8
  185. package/dist/upgrader-job.js.map +1 -1
  186. package/dist/upgrader-reporter.d.ts.map +1 -1
  187. package/dist/upgrader-reporter.js +1 -0
  188. package/dist/upgrader-reporter.js.map +1 -1
  189. package/dist/wizards/gcp-pulumi.d.ts +70 -23
  190. package/dist/wizards/gcp-pulumi.d.ts.map +1 -1
  191. package/dist/wizards/gcp-pulumi.js +118 -39
  192. package/dist/wizards/gcp-pulumi.js.map +1 -1
  193. package/dist/wizards/gcp.d.ts.map +1 -1
  194. package/dist/wizards/gcp.js +67 -11
  195. package/dist/wizards/gcp.js.map +1 -1
  196. package/package.json +2 -2
  197. package/src/admin-internal-answer.ts +43 -0
  198. package/src/admin-internal-google.ts +187 -0
  199. package/src/admin-internal-self-hosted.test.ts +70 -0
  200. package/src/admin-internal-self-hosted.ts +128 -0
  201. package/src/admin-internal.ts +59 -174
  202. package/src/admin-memory.test.ts +1 -0
  203. package/src/agent/command.ts +3 -0
  204. package/src/agent/lock-config.test.ts +57 -2
  205. package/src/agent/lock.ts +68 -5
  206. package/src/agent/run.test.ts +18 -1
  207. package/src/agent/run.ts +17 -6
  208. package/src/caddy-redirects.test.ts +1 -0
  209. package/src/caddy.ts +12 -0
  210. package/src/cli-routing.ts +1 -1
  211. package/src/cli.ts +102 -44
  212. package/src/compose.ts +12 -0
  213. package/src/converge-job-gcp.ts +16 -11
  214. package/src/converge-job-preflight.test.ts +108 -0
  215. package/src/converge-job-preflight.ts +124 -0
  216. package/src/converge-job.test.ts +50 -0
  217. package/src/converge-job.ts +38 -2
  218. package/src/gateway-credentials.test.ts +4 -3
  219. package/src/gateway-credentials.ts +6 -10
  220. package/src/gateway-env-isolation.test.ts +1 -0
  221. package/src/gcloud.test.ts +93 -1
  222. package/src/gcloud.ts +82 -0
  223. package/src/index.test.ts +38 -1
  224. package/src/infra-contract.test.ts +4 -3
  225. package/src/infra-contract.ts +10 -1
  226. package/src/install-job.ts +5 -2
  227. package/src/install-state.ts +13 -0
  228. package/src/lifecycle.ts +134 -28
  229. package/src/mcp-iap.test.ts +66 -5
  230. package/src/mcp-iap.ts +55 -17
  231. package/src/operator-access.ts +1 -2
  232. package/src/owner-reset-providers.test.ts +370 -0
  233. package/src/owner-reset.test.ts +2 -2
  234. package/src/owner-reset.ts +108 -19
  235. package/src/preview-plan.test.ts +233 -0
  236. package/src/preview-plan.ts +226 -0
  237. package/src/public-role-isolation.test.ts +13 -2
  238. package/src/public-role-isolation.ts +14 -4
  239. package/src/release-contract.ts +4 -0
  240. package/src/self-hosted-compose.test.ts +25 -0
  241. package/src/self-hosted-internal-secret.test.ts +61 -0
  242. package/src/self-hosted-internal-secret.ts +80 -0
  243. package/src/self-hosted-release.ts +10 -3
  244. package/src/self-hosted-upgrade.test.ts +35 -1
  245. package/src/self-hosted-upgrade.ts +40 -3
  246. package/src/stack-contract.test.ts +1 -0
  247. package/src/stack-converge.test.ts +89 -5
  248. package/src/stack-converge.ts +81 -8
  249. package/src/staging-admin.test.ts +1 -1
  250. package/src/staging-admin.ts +2 -1
  251. package/src/state-backend.ts +3 -2
  252. package/src/state-command.test.ts +31 -0
  253. package/src/state-command.ts +35 -8
  254. package/src/state-migrate.test.ts +58 -7
  255. package/src/state-migrate.ts +48 -10
  256. package/src/state-pulumi.ts +20 -21
  257. package/src/static-security-headers.test.ts +124 -0
  258. package/src/static-security-headers.ts +154 -0
  259. package/src/static-svg-gcp.test.ts +133 -0
  260. package/src/static-svg-gcp.ts +140 -0
  261. package/src/upgrade/app-roll.ts +18 -7
  262. package/src/upgrade/backup.ts +14 -5
  263. package/src/upgrade/converge.ts +25 -7
  264. package/src/upgrade/gcp-lookup.test.ts +80 -1
  265. package/src/upgrade/gcp-lookup.ts +61 -11
  266. package/src/upgrade/health.test.ts +132 -8
  267. package/src/upgrade/health.ts +169 -31
  268. package/src/upgrade/release-images.test.ts +17 -0
  269. package/src/upgrade/release-images.ts +26 -14
  270. package/src/upgrade/reporter.ts +3 -0
  271. package/src/upgrade/upgrade.test.ts +137 -8
  272. package/src/upgrade/upgrade.ts +14 -2
  273. package/src/upgrader-gcp.ts +28 -13
  274. package/src/upgrader-iam-preflight.test.ts +6 -3
  275. package/src/upgrader-iam-preflight.ts +26 -5
  276. package/src/upgrader-job.ts +14 -6
  277. package/src/upgrader-reporter.ts +1 -0
  278. package/src/wizards/gcp-pulumi.test.ts +1 -1
  279. package/src/wizards/gcp-pulumi.ts +147 -38
  280. package/src/wizards/gcp.ts +89 -9
  281. package/src/wizards/stack-work-dir.test.ts +175 -0
  282. package/stacks/aws/index.ts +40 -0
  283. package/stacks/azure/index.ts +22 -1
  284. package/stacks/gcp/README.md +4 -0
  285. package/stacks/gcp/index.ts +6 -2
  286. package/stacks/gcp/Pulumi.production.yaml +0 -16
@@ -1 +1 @@
1
- {"version":3,"file":"converge.js","sourceRoot":"","sources":["../../src/upgrade/converge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"converge.js","sourceRoot":"","sources":["../../src/upgrade/converge.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,46 @@
1
+ import { type GcloudResult } from "../gcloud.js";
1
2
  import type { GcloudRunner } from "../gcloud-retry.js";
3
+ /**
4
+ * Whose gcloud credentials a lookup ran with. It decides the fix an auth
5
+ * failure names: the Owner logs in again; a job in the install's project
6
+ * cannot, so it points at the break-glass run instead (#630).
7
+ */
8
+ export type GcloudCredentials = "operator" | "job";
9
+ /**
10
+ * The outcome of finding a deployed resource by name prefix. A failed
11
+ * listing is NOT "not found": expired credentials used to read as
12
+ * "Could not find caelo-production-admin*" while the service was there (#630).
13
+ */
14
+ export type GcpLookup = {
15
+ readonly status: "found";
16
+ readonly name: string;
17
+ } | {
18
+ readonly status: "not-found";
19
+ } | {
20
+ readonly status: "error";
21
+ readonly stderr: string;
22
+ readonly authExpired: boolean;
23
+ };
24
+ /** A lookup that did not find its resource. */
25
+ export type GcpLookupMiss = Exclude<GcpLookup, {
26
+ readonly status: "found";
27
+ }>;
28
+ /** The first name a `--format=value(name)` listing printed, as a {@link GcpLookup}. */
29
+ export declare function lookupFromListing(r: GcloudResult): GcpLookup;
30
+ /**
31
+ * The error for a lookup that found nothing, for the operator or the job
32
+ * that ran it.
33
+ *
34
+ * @param what the resource, as the operator knows it, e.g. "caelo-production-admin* Cloud Run service"
35
+ */
36
+ export declare function lookupFailure(lookup: GcpLookupMiss, what: string, credentials: GcloudCredentials): string;
2
37
  /**
3
38
  * Pulumi auto-naming appends a random 7-char suffix to every resource
4
39
  * (e.g. `caelo-production-admin-3efcfea`), so lifecycle commands find the
5
- * deployed name by prefix. Returns the first match, or null when the listing
6
- * fails or finds nothing.
40
+ * deployed name by prefix: the first match, "not-found" when the listing is
41
+ * empty, "error" with gcloud's stderr when the listing itself failed.
7
42
  */
8
- export declare function resolveGcpResourceName(run: GcloudRunner, kind: "run-service" | "sql-instance", prefix: string, projectId: string, region?: string): Promise<string | null>;
43
+ export declare function resolveGcpResourceName(run: GcloudRunner, kind: "run-service" | "sql-instance", prefix: string, projectId: string, region?: string): Promise<GcpLookup>;
9
44
  /** The deployed service as `gcloud run services describe --format=json` returns it. */
10
45
  export declare function describeServiceJson(run: GcloudRunner, projectId: string, region: string, serviceName: string): Promise<string | null>;
11
46
  /** The revision serving traffic now, so a failed roll can go back to it. */
@@ -1 +1 @@
1
- {"version":3,"file":"gcp-lookup.d.ts","sourceRoot":"","sources":["../../src/upgrade/gcp-lookup.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,aAAa,GAAG,cAAc,EACpC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAiCxB;AAsBD,uFAAuF;AACvF,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAGxB;AAED,4EAA4E;AAC5E,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAMxB;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,YAAY;IAC3B,4EAA4E;IAC5E,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,6FAA6F;IAC7F,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CACxC;AAED,6DAA6D;AAC7D,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,EAAE,CAMjE;AAYD;;;GAGG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAgC9B;AAED,uCAAuC;AACvC,wBAAsB,cAAc,CAClC,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAIxB;AAED,oDAAoD;AACpD,wBAAsB,UAAU,CAC9B,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,OAAO,CAAC,CAelB"}
1
+ {"version":3,"file":"gcp-lookup.d.ts","sourceRoot":"","sources":["../../src/upgrade/gcp-lookup.ts"],"names":[],"mappings":"AAUA,OAAO,EAEL,KAAK,YAAY,EAGlB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,UAAU,GAAG,KAAK,CAAC;AAEnD;;;;GAIG;AACH,MAAM,MAAM,SAAS,GACjB;IAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACnD;IAAE,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;CAAE,GAChC;IAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAA;CAAE,CAAC;AAEzF,+CAA+C;AAC/C,MAAM,MAAM,aAAa,GAAG,OAAO,CAAC,SAAS,EAAE;IAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC,CAAC;AAE7E,uFAAuF;AACvF,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,YAAY,GAAG,SAAS,CAS5D;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,iBAAiB,GAC7B,MAAM,CAOR;AAED;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,aAAa,GAAG,cAAc,EACpC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,SAAS,CAAC,CA0BpB;AAsBD,uFAAuF;AACvF,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAGxB;AAED,4EAA4E;AAC5E,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAMxB;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,YAAY;IAC3B,4EAA4E;IAC5E,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,6FAA6F;IAC7F,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CACxC;AAED,6DAA6D;AAC7D,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,EAAE,CAMjE;AAYD;;;GAGG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAgC9B;AAED,uCAAuC;AACvC,wBAAsB,cAAc,CAClC,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAIxB;AAED,oDAAoD;AACpD,wBAAsB,UAAU,CAC9B,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,OAAO,CAAC,CAelB"}
@@ -6,11 +6,39 @@
6
6
  * by a different identity in the in-cloud upgrader job (epic #696).
7
7
  */
8
8
  import { z } from "zod";
9
+ import { GCLOUD_REAUTH_HINT, gcloudErrorLine, isGcloudAuthError, } from "../gcloud.js";
10
+ /** The first name a `--format=value(name)` listing printed, as a {@link GcpLookup}. */
11
+ export function lookupFromListing(r) {
12
+ if (!r.ok) {
13
+ return { status: "error", stderr: r.stderr, authExpired: isGcloudAuthError(r.stderr) };
14
+ }
15
+ const name = r.stdout
16
+ .split("\n")
17
+ .map((s) => s.trim())
18
+ .find((s) => s.length > 0);
19
+ return name ? { status: "found", name } : { status: "not-found" };
20
+ }
21
+ /**
22
+ * The error for a lookup that found nothing, for the operator or the job
23
+ * that ran it.
24
+ *
25
+ * @param what the resource, as the operator knows it, e.g. "caelo-production-admin* Cloud Run service"
26
+ */
27
+ export function lookupFailure(lookup, what, credentials) {
28
+ if (lookup.status === "not-found")
29
+ return `Could not find the ${what}`;
30
+ const said = gcloudErrorLine(lookup.stderr);
31
+ if (!lookup.authExpired)
32
+ return `Could not list the ${what}: gcloud failed (${said})`;
33
+ return credentials === "operator"
34
+ ? `Could not look up the ${what}: ${GCLOUD_REAUTH_HINT} (gcloud: ${said})`
35
+ : `Could not look up the ${what}: Google rejected this job's credentials (${said}). Nothing was changed. Start the update again; if it fails the same way, run the break-glass upgrade from Cloud Shell, which repairs the job's access.`;
36
+ }
9
37
  /**
10
38
  * Pulumi auto-naming appends a random 7-char suffix to every resource
11
39
  * (e.g. `caelo-production-admin-3efcfea`), so lifecycle commands find the
12
- * deployed name by prefix. Returns the first match, or null when the listing
13
- * fails or finds nothing.
40
+ * deployed name by prefix: the first match, "not-found" when the listing is
41
+ * empty, "error" with gcloud's stderr when the listing itself failed.
14
42
  */
15
43
  export async function resolveGcpResourceName(run, kind, prefix, projectId, region) {
16
44
  const args = kind === "run-service"
@@ -36,13 +64,7 @@ export async function resolveGcpResourceName(run, kind, prefix, projectId, regio
36
64
  `name~^${prefix}`,
37
65
  "--format=value(name)",
38
66
  ];
39
- const r = await run(args);
40
- if (!r.ok)
41
- return null;
42
- return (r.stdout
43
- .split("\n")
44
- .map((s) => s.trim())
45
- .find((s) => s.length > 0) ?? null);
67
+ return lookupFromListing(await run(args));
46
68
  }
47
69
  /** A Cloud Run lookup is regional; there is no default region to guess. */
48
70
  function requiredRegion(region) {
@@ -1 +1 @@
1
- {"version":3,"file":"gcp-lookup.js","sourceRoot":"","sources":["../../src/upgrade/gcp-lookup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gcp-lookup.js","sourceRoot":"","sources":["../../src/upgrade/gcp-lookup.ts"],"names":[],"mappings":"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"}
@@ -22,9 +22,18 @@
22
22
  * that account). The gateway is public by design and gets no credential.
23
23
  *
24
24
  * Before anything changes, {@link HealthProbe.baseline} proves the probe can
25
- * reach both services at all. Otherwise a DNS, certificate or IAP problem
26
- * would only show after migrations, as a "failed" health check that rolls a
27
- * healthy release back.
25
+ * reach both services at all — each answering with its own JSON, so a
26
+ * Google front-end 404 for a gateway whose ingress refuses the request
27
+ * counts as unreachable (#733). Otherwise a DNS, certificate, ingress or IAP
28
+ * problem would only show after migrations, as a "failed" health check that
29
+ * rolls a healthy release back.
30
+ *
31
+ * IAM is eventually consistent (Google: typically under 2 minutes, up to
32
+ * 7). When the converge step that ran just before changed the access the
33
+ * probe relies on — the operator's right to sign as `caelo-mcp@`, that
34
+ * account's IAP access, the gateway's ingress — the baseline keeps retrying
35
+ * a refusal for {@link IAM_PROPAGATION_WINDOW_MS} instead of failing the
36
+ * upgrade on a grant that has not taken effect yet (#734).
28
37
  */
29
38
  import type { GcloudRunner, Sleep } from "../gcloud-retry.js";
30
39
  import type { HttpFetch } from "../runtime-secrets.js";
@@ -36,8 +45,13 @@ export type HealthOutcome = {
36
45
  readonly error: string;
37
46
  };
38
47
  export interface HealthProbe {
39
- /** Reach both services as they serve now (before any change). */
40
- baseline(): Promise<HealthOutcome>;
48
+ /**
49
+ * Reach both services as they serve now (before any change).
50
+ *
51
+ * @param onWait told why the baseline waits, each time it waits for
52
+ * access the converge step just granted to take effect
53
+ */
54
+ baseline(onWait?: (reason: string) => void): Promise<HealthOutcome>;
41
55
  /**
42
56
  * Deep-check both services after the roll, retrying while the new
43
57
  * revisions warm up. `version` is the release the roll targets (null when
@@ -83,10 +97,22 @@ export declare function healthOrigins(target: HealthTarget): {
83
97
  admin: string;
84
98
  gateway: string;
85
99
  };
100
+ /**
101
+ * How long the baseline treats a refusal as access still propagating: IAM's
102
+ * documented worst case for a new binding to take effect.
103
+ */
104
+ export declare const IAM_PROPAGATION_WINDOW_MS: number;
86
105
  export interface HealthProbeDeps {
87
106
  readonly run: GcloudRunner;
88
107
  readonly http: HttpFetch;
89
108
  readonly sleep: Sleep;
109
+ /**
110
+ * Whether the converge step that ran just before changed the access the
111
+ * probe relies on (IAM grants, the gateway's ingress). Only then does the
112
+ * baseline wait for a refusal to clear: a grant that existed before this
113
+ * run and still refuses is missing, and waiting would only delay saying so.
114
+ */
115
+ readonly accessJustChanged: boolean;
90
116
  /** Deep-check attempts while the new revisions warm up (default 12). */
91
117
  readonly attempts?: number;
92
118
  /** Pause between attempts in ms (default 5000). */
@@ -1 +1 @@
1
- {"version":3,"file":"health.d.ts","sourceRoot":"","sources":["../../src/upgrade/health.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD,MAAM,MAAM,aAAa,GACrB;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC9C;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnD,MAAM,WAAW,WAAW;IAC1B,iEAAiE;IACjE,QAAQ,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC;IACnC;;;;;OAKG;IACH,IAAI,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;CAC3E;AAuBD;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,eAAe,EAAE,MAAM,GAAG,IAAI,GAC7B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAuC9E;AAED,iFAAiF;AACjF,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,eAAe,EAAE,MAAM,GACtB,aAAa,CAgBf;AAED,2CAA2C;AAC3C,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,QAAQ,EAAE,KAAK,GAAG,cAAc,CAAC;IAC1C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,qEAAqE;IACrE,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,oEAAoE;IACpE,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;CACpC;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,YAAY,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAOtF;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,wEAAwE;IACxE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,mDAAmD;IACnD,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,2BAA2B;IAC3B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CAC7B;AAKD,4DAA4D;AAC5D,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,eAAe,GAAG,WAAW,CAqH7F"}
1
+ {"version":3,"file":"health.d.ts","sourceRoot":"","sources":["../../src/upgrade/health.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD,MAAM,MAAM,aAAa,GACrB;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC9C;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnD,MAAM,WAAW,WAAW;IAC1B;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACpE;;;;;OAKG;IACH,IAAI,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;CAC3E;AAuBD;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,eAAe,EAAE,MAAM,GAAG,IAAI,GAC7B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAuC9E;AAED,iFAAiF;AACjF,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,eAAe,EAAE,MAAM,GACtB,aAAa,CAgBf;AAED,2CAA2C;AAC3C,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,QAAQ,EAAE,KAAK,GAAG,cAAc,CAAC;IAC1C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,qEAAqE;IACrE,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,oEAAoE;IACpE,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;CACpC;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,YAAY,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAOtF;AAED;;;GAGG;AACH,eAAO,MAAM,yBAAyB,QAAa,CAAC;AAEpD,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB;;;;;OAKG;IACH,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC;IACpC,wEAAwE;IACxE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,mDAAmD;IACnD,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,2BAA2B;IAC3B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CAC7B;AAmBD,4DAA4D;AAC5D,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,eAAe,GAAG,WAAW,CAsN7F"}
@@ -87,7 +87,15 @@ export function healthOrigins(target) {
87
87
  gateway: new URL(target.gatewayServiceUrl).origin,
88
88
  };
89
89
  }
90
+ /**
91
+ * How long the baseline treats a refusal as access still propagating: IAM's
92
+ * documented worst case for a new binding to take effect.
93
+ */
94
+ export const IAM_PROPAGATION_WINDOW_MS = 7 * 60_000;
90
95
  const JWT_LIFETIME_S = 600;
96
+ /** First pause between baseline attempts while access propagates; doubles up to the cap. */
97
+ const SETTLE_FIRST_DELAY_MS = 5_000;
98
+ const SETTLE_MAX_DELAY_MS = 30_000;
91
99
  const IAM_CREDENTIALS = "https://iamcredentials.googleapis.com/v1/projects/-/serviceAccounts";
92
100
  /** The IAP-backed probe of a gcp / gcp-firebase install. */
93
101
  export function createIapHealthProbe(target, deps) {
@@ -109,6 +117,7 @@ export function createIapHealthProbe(target, deps) {
109
117
  return {
110
118
  ok: false,
111
119
  error: `could not sign an IAP credential as ${signer}: ${e instanceof Error ? e.message : String(e)}`,
120
+ denied: false,
112
121
  };
113
122
  }
114
123
  }
@@ -119,6 +128,7 @@ export function createIapHealthProbe(target, deps) {
119
128
  return {
120
129
  ok: false,
121
130
  error: `gcloud auth print-access-token: ${token.stderr.trim() || "empty"}`,
131
+ denied: false,
122
132
  };
123
133
  }
124
134
  const iat = now();
@@ -136,14 +146,41 @@ export function createIapHealthProbe(target, deps) {
136
146
  }),
137
147
  });
138
148
  const text = await res.text();
149
+ if (res.status === 403) {
150
+ return {
151
+ ok: false,
152
+ error: `could not sign an IAP credential as ${signer} (HTTP 403): ${text.slice(0, 300)}`,
153
+ denied: true,
154
+ };
155
+ }
139
156
  if (!res.ok) {
140
157
  return {
141
158
  ok: false,
142
- error: `could not sign an IAP credential as ${signer} (HTTP ${res.status}). Your account needs roles/iam.serviceAccountTokenCreator on it — upgrade's converge step grants it to every IAP-allowlisted user. ${text.slice(0, 300)}`,
159
+ error: `could not sign an IAP credential as ${signer} (HTTP ${res.status}): ${text.slice(0, 300)}`,
160
+ denied: false,
143
161
  };
144
162
  }
145
163
  const jwt = parseJson(text)?.signedJwt;
146
- return jwt ? { ok: true, jwt } : { ok: false, error: "signJwt returned no signedJwt" };
164
+ return jwt
165
+ ? { ok: true, jwt }
166
+ : { ok: false, error: "signJwt returned no signedJwt", denied: false };
167
+ }
168
+ /**
169
+ * What to do about a refused signJwt, depending on whether this run's
170
+ * converge just granted the access or it was there before.
171
+ */
172
+ function signDeniedHelp(waitedMs) {
173
+ const role = "roles/iam.serviceAccountTokenCreator";
174
+ if (deps.accessJustChanged) {
175
+ return `The upgrade's converge step changed who may sign as ${signer} just now (it grants ${role} to every user on the admin's IAP allowlist), and Google IAM had not applied it after ${Math.round(waitedMs / 60_000)} minutes of waiting. The grant exists; nothing was changed: re-run upgrade in a few minutes.`;
176
+ }
177
+ return `Your account may not sign as ${signer}: it lacks ${role} on it. Upgrade's converge step grants that role to every user on the admin's IAP allowlist, so run upgrade as an allowlisted account (gcloud auth login), or add yours to the allowlist. If an upgrade run in the last few minutes granted it, IAM may still be applying it: re-run upgrade in a few minutes.`;
178
+ }
179
+ /** Why the gateway's answer is not the gateway's own, and what fixes it. */
180
+ function gatewayRoutingHelp() {
181
+ return target.provider === "gcp-firebase"
182
+ ? `Requests to its run.app URL do not reach the Caelo gateway: its Cloud Run ingress likely refuses them. The gcp-firebase stack declares ingress "all"; upgrade's converge step sets it. Check it with: gcloud run services describe <gateway service> --region=<region> --project=${target.projectId} --format='value(metadata.annotations."run.googleapis.com/ingress")'`
183
+ : `Requests to ${origins.gateway}/api/ do not reach the Caelo gateway: the load balancer's URL map must route /api/* to the gateway backend. Check the install's load balancer, then re-run upgrade.`;
147
184
  }
148
185
  async function get(url, headers) {
149
186
  try {
@@ -154,31 +191,71 @@ export function createIapHealthProbe(target, deps) {
154
191
  return { reached: false, error: e instanceof Error ? e.message : String(e) };
155
192
  }
156
193
  }
194
+ async function baselineOnce() {
195
+ const token = await iapToken();
196
+ if (!token.ok) {
197
+ return { ok: false, error: token.error, refusal: token.denied ? "sign-denied" : "other" };
198
+ }
199
+ const auth = { Authorization: `Bearer ${token.jwt}` };
200
+ const admin = await get(`${origins.admin}/_caelo/health`, auth);
201
+ if (!admin.reached) {
202
+ return {
203
+ ok: false,
204
+ error: `admin unreachable at ${origins.admin}: ${admin.error}`,
205
+ refusal: "other",
206
+ };
207
+ }
208
+ // The serving (old) admin answers its shallow health JSON. Anything
209
+ // else — IAP's login redirect, a 401/403, an HTML error page — means
210
+ // the probe would not see the new revision either.
211
+ const body = parseJson(admin.text);
212
+ if (!body?.version) {
213
+ return {
214
+ ok: false,
215
+ error: `admin at ${origins.admin} did not answer its health check (HTTP ${admin.status}); IAP may not admit ${signer}`,
216
+ // IAP refuses with 401/403 until a fresh grant to caelo-mcp applies.
217
+ refusal: admin.status === 401 || admin.status === 403 ? "iap-refused" : "other",
218
+ };
219
+ }
220
+ const gateway = await get(`${origins.gateway}/api/_caelo/health`, {});
221
+ if (!gateway.reached) {
222
+ return {
223
+ ok: false,
224
+ error: `gateway unreachable at ${origins.gateway}: ${gateway.error}`,
225
+ refusal: "other",
226
+ };
227
+ }
228
+ // Any JSON counts, whatever the status: a gateway older than its health
229
+ // route answers its own JSON 404. An HTML or empty answer comes from
230
+ // Google's front end, not from Caelo (#733).
231
+ if (parseJson(gateway.text) === null) {
232
+ return {
233
+ ok: false,
234
+ error: `gateway at ${origins.gateway} answered HTTP ${gateway.status} without JSON. ${gatewayRoutingHelp()}`,
235
+ // A just-opened ingress takes a moment, like an IAM grant.
236
+ refusal: "gateway-not-caelo",
237
+ };
238
+ }
239
+ return { ok: true, detail: `admin ${body.version} and gateway reachable` };
240
+ }
157
241
  return {
158
- async baseline() {
159
- const token = await iapToken();
160
- if (!token.ok)
161
- return token;
162
- const auth = { Authorization: `Bearer ${token.jwt}` };
163
- const admin = await get(`${origins.admin}/_caelo/health`, auth);
164
- if (!admin.reached) {
165
- return { ok: false, error: `admin unreachable at ${origins.admin}: ${admin.error}` };
166
- }
167
- // The serving (old) admin answers its shallow health JSON. Anything
168
- // else — IAP's login redirect, a 401/403, an HTML error page — means
169
- // the probe would not see the new revision either.
170
- const body = parseJson(admin.text);
171
- if (!body?.version) {
172
- return {
173
- ok: false,
174
- error: `admin at ${origins.admin} did not answer its health check (HTTP ${admin.status}); IAP may not admit ${signer}`,
175
- };
242
+ async baseline(onWait) {
243
+ const windowMs = deps.accessJustChanged ? IAM_PROPAGATION_WINDOW_MS : 0;
244
+ let waited = 0;
245
+ let delay = SETTLE_FIRST_DELAY_MS;
246
+ for (;;) {
247
+ const outcome = await baselineOnce();
248
+ if (outcome.ok)
249
+ return outcome;
250
+ if (outcome.refusal === "other" || waited >= windowMs) {
251
+ return { ok: false, error: explainRefusal(outcome, waited) };
252
+ }
253
+ onWait?.(`Waiting for the access the converge step just granted to take effect (${Math.round(waited / 1000)}s of up to ${windowMs / 60_000} min): ${outcome.error.slice(0, 200)}`);
254
+ const pause = Math.min(delay, windowMs - waited);
255
+ await deps.sleep(pause);
256
+ waited += pause;
257
+ delay = Math.min(delay * 2, SETTLE_MAX_DELAY_MS);
176
258
  }
177
- const gateway = await get(`${origins.gateway}/api/_caelo/health`, {});
178
- if (!gateway.reached) {
179
- return { ok: false, error: `gateway unreachable at ${origins.gateway}: ${gateway.error}` };
180
- }
181
- return { ok: true, detail: `admin ${body.version} and gateway reachable` };
182
259
  },
183
260
  async deep(expect) {
184
261
  let last = { ok: false, error: "no attempt made" };
@@ -192,6 +269,18 @@ export function createIapHealthProbe(target, deps) {
192
269
  return last;
193
270
  },
194
271
  };
272
+ /**
273
+ * The baseline's final error: a refusal that outlived the wait says the
274
+ * access was granted and has not applied yet (re-run later), apart from
275
+ * a refusal with no fresh grant behind it (missing access).
276
+ */
277
+ function explainRefusal(outcome, waitedMs) {
278
+ if (outcome.refusal === "sign-denied")
279
+ return `${outcome.error}\n${signDeniedHelp(waitedMs)}`;
280
+ if (outcome.refusal === "other" || !deps.accessJustChanged)
281
+ return outcome.error;
282
+ return `${outcome.error}\nThe upgrade's converge step changed this access just now and it had not applied after ${Math.round(waitedMs / 60_000)} minutes of waiting. Nothing was changed: re-run upgrade in a few minutes.`;
283
+ }
195
284
  async function deepOnce(expectedVersion) {
196
285
  const token = await iapToken();
197
286
  if (!token.ok)
@@ -1 +1 @@
1
- {"version":3,"file":"health.js","sourceRoot":"","sources":["../../src/upgrade/health.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"health.js","sourceRoot":"","sources":["../../src/upgrade/health.ts"],"names":[],"mappings":"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"}
@@ -132,6 +132,23 @@ export declare function resolveOpsImageRef(tag: string): Promise<string | null>;
132
132
  * access to the registry's project.
133
133
  */
134
134
  export declare function resolveTagDigest(image: string, tag: string): Promise<DigestResult>;
135
+ /**
136
+ * How to get cosign onto PATH on `platform`. Owner-facing, so it names
137
+ * only verified installs and never the unverified escape hatch: an Owner
138
+ * who cannot install cosign must not be steered to roll unsigned images
139
+ * (#816). Cloud Shell (Linux) is where the break-glass upgrade runs; its
140
+ * `./run.sh upgrade` installs a checksum-verified cosign itself.
141
+ */
142
+ export declare function cosignInstallHint(platform: NodeJS.Platform): string;
143
+ /**
144
+ * Ensure cosign is on PATH; the upgrade's pre-flight runs this before it
145
+ * plans or changes anything, so a missing cosign never stops an upgrade
146
+ * half-way (#816). On macOS with brew it offers `brew install cosign`;
147
+ * elsewhere it prints {@link cosignInstallHint}.
148
+ *
149
+ * @returns whether cosign is callable afterwards
150
+ */
151
+ export declare function ensureCosignAvailable(): Promise<boolean>;
135
152
  /**
136
153
  * P21 ship 4 — verify cosign keyless signatures on every planned
137
154
  * image digest. Sigstore Fulcio + Rekor; the certificate identity
@@ -1 +1 @@
1
- {"version":3,"file":"release-images.d.ts","sourceRoot":"","sources":["../../src/upgrade/release-images.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"release-images.d.ts","sourceRoot":"","sources":["../../src/upgrade/release-images.ts"],"names":[],"mappings":"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"}