@fnndsc/stratus 0.2.1 → 0.4.0

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 (122) hide show
  1. package/chris/values-openshift.yaml +59 -0
  2. package/dist/backend.d.ts +9 -3
  3. package/dist/backend.js +32 -8
  4. package/dist/backend.js.map +1 -1
  5. package/dist/cloud/builder.d.ts +16 -1
  6. package/dist/cloud/builder.js +1 -1
  7. package/dist/cloud/builder.js.map +1 -1
  8. package/dist/cloud/fake/builder.d.ts +13 -1
  9. package/dist/cloud/fake/builder.js +26 -9
  10. package/dist/cloud/fake/builder.js.map +1 -1
  11. package/dist/cloud/fake/driver.d.ts +1 -1
  12. package/dist/cloud/fake/driver.js +9 -9
  13. package/dist/cloud/fake/driver.js.map +1 -1
  14. package/dist/cloud/oci/api.js +15 -15
  15. package/dist/cloud/oci/api.js.map +1 -1
  16. package/dist/cloud/oci/buildApi.d.ts +11 -0
  17. package/dist/cloud/oci/buildApi.js +40 -9
  18. package/dist/cloud/oci/buildApi.js.map +1 -1
  19. package/dist/cloud/oci/builder.d.ts +42 -1
  20. package/dist/cloud/oci/builder.js +100 -16
  21. package/dist/cloud/oci/builder.js.map +1 -1
  22. package/dist/cloud/oci/driver.d.ts +1 -1
  23. package/dist/cloud/oci/driver.js +21 -21
  24. package/dist/cloud/oci/driver.js.map +1 -1
  25. package/dist/cloud/oci/errors.d.ts +13 -0
  26. package/dist/cloud/oci/errors.js +16 -0
  27. package/dist/cloud/oci/errors.js.map +1 -0
  28. package/dist/cloud/oci/resourceApi.js +22 -22
  29. package/dist/cloud/oci/resourceApi.js.map +1 -1
  30. package/dist/cloud/oci/resourceMap.d.ts +3 -3
  31. package/dist/cloud/oci/resourceMap.js +3 -3
  32. package/dist/cloud/oci/resourceMap.js.map +1 -1
  33. package/dist/cloud/oci/rmApi.js +7 -7
  34. package/dist/cloud/oci/rmApi.js.map +1 -1
  35. package/dist/cloud/oci/stackVars.d.ts +5 -3
  36. package/dist/cloud/oci/stackVars.js +3 -3
  37. package/dist/cloud/oci/stackVars.js.map +1 -1
  38. package/dist/cluster/chris.d.ts +156 -0
  39. package/dist/cluster/chris.js +493 -0
  40. package/dist/cluster/chris.js.map +1 -0
  41. package/dist/cluster/fakeKube.d.ts +6 -0
  42. package/dist/cluster/fakeKube.js +21 -0
  43. package/dist/cluster/fakeKube.js.map +1 -1
  44. package/dist/cluster/kubeHttp.d.ts +7 -0
  45. package/dist/cluster/kubeHttp.js +26 -1
  46. package/dist/cluster/kubeHttp.js.map +1 -1
  47. package/dist/commands/build.d.ts +33 -0
  48. package/dist/commands/build.js +123 -22
  49. package/dist/commands/build.js.map +1 -1
  50. package/dist/commands/capacity.d.ts +1 -1
  51. package/dist/commands/capacity.js +2 -2
  52. package/dist/commands/capacity.js.map +1 -1
  53. package/dist/commands/domain.js +13 -12
  54. package/dist/commands/domain.js.map +1 -1
  55. package/dist/commands/protect.d.ts +10 -0
  56. package/dist/commands/protect.js +37 -0
  57. package/dist/commands/protect.js.map +1 -0
  58. package/dist/commands/size.d.ts +10 -0
  59. package/dist/commands/size.js +84 -0
  60. package/dist/commands/size.js.map +1 -0
  61. package/dist/commands/teardown.js +2 -0
  62. package/dist/commands/teardown.js.map +1 -1
  63. package/dist/commands/verify.js +4 -10
  64. package/dist/commands/verify.js.map +1 -1
  65. package/dist/domain/adopt.d.ts +11 -1
  66. package/dist/domain/adopt.js +28 -2
  67. package/dist/domain/adopt.js.map +1 -1
  68. package/dist/domain/expect.d.ts +32 -0
  69. package/dist/domain/expect.js +53 -0
  70. package/dist/domain/expect.js.map +1 -0
  71. package/dist/domain/manifests.d.ts +17 -0
  72. package/dist/domain/manifests.js +36 -0
  73. package/dist/domain/manifests.js.map +1 -0
  74. package/dist/domain/readout.d.ts +64 -0
  75. package/dist/domain/readout.js +188 -0
  76. package/dist/domain/readout.js.map +1 -0
  77. package/dist/domain/sizing.d.ts +1 -1
  78. package/dist/domain/sizing.js +3 -3
  79. package/dist/domain/sizing.js.map +1 -1
  80. package/dist/domain/spec.d.ts +1 -1
  81. package/dist/domain/spec.js +1 -1
  82. package/dist/domain/spec.js.map +1 -1
  83. package/dist/domain/state.d.ts +6 -2
  84. package/dist/domain/state.js +11 -11
  85. package/dist/domain/state.js.map +1 -1
  86. package/dist/domain/steps.d.ts +18 -20
  87. package/dist/domain/steps.js +122 -11
  88. package/dist/domain/steps.js.map +1 -1
  89. package/dist/domain/verify.d.ts +39 -0
  90. package/dist/domain/verify.js +64 -17
  91. package/dist/domain/verify.js.map +1 -1
  92. package/dist/domain/view.d.ts +4 -2
  93. package/dist/domain/view.js +7 -4
  94. package/dist/domain/view.js.map +1 -1
  95. package/dist/domains/harborOci.d.ts +1 -1
  96. package/dist/domains/harborOci.js +1 -1
  97. package/dist/domains/harborOci.js.map +1 -1
  98. package/dist/index.d.ts +7 -7
  99. package/dist/index.js +7 -7
  100. package/dist/index.js.map +1 -1
  101. package/dist/installer/account.d.ts +16 -0
  102. package/dist/installer/account.js +33 -0
  103. package/dist/installer/account.js.map +1 -0
  104. package/dist/names.d.ts +1 -1
  105. package/dist/names.js +2 -2
  106. package/dist/names.js.map +1 -1
  107. package/dist/prompt.d.ts +1 -1
  108. package/dist/prompt.js +2 -2
  109. package/dist/prompt.js.map +1 -1
  110. package/dist/stratus.js +5 -2
  111. package/dist/stratus.js.map +1 -1
  112. package/dist/vfs/domains.d.ts +3 -0
  113. package/dist/vfs/domains.js +12 -4
  114. package/dist/vfs/domains.js.map +1 -1
  115. package/dist/vfs/resources.d.ts +4 -4
  116. package/dist/vfs/resources.js +14 -14
  117. package/dist/vfs/resources.js.map +1 -1
  118. package/dist/vfs/tenancy.d.ts +3 -3
  119. package/dist/vfs/tenancy.js +10 -10
  120. package/dist/vfs/tenancy.js.map +1 -1
  121. package/manifests/tenant.mise +27 -0
  122. package/package.json +8 -6
@@ -31,7 +31,7 @@ async function pages_drain(page_get) {
31
31
  return items;
32
32
  }
33
33
  /** Tags as the SDK gives them, with absent ones as empty. */
34
- function tags_of(freeform, defined) {
34
+ function tags_build(freeform, defined) {
35
35
  return { freeformTags: freeform ?? {}, definedTags: defined ?? {} };
36
36
  }
37
37
  /**
@@ -43,7 +43,7 @@ function tags_of(freeform, defined) {
43
43
  export function ociApi_make(options = {}) {
44
44
  const provider = new common.ConfigFileAuthenticationDetailsProvider(options.configFile, options.profile);
45
45
  const clients = new Map();
46
- const identityClient_for = (region) => {
46
+ const identityClient_resolve = (region) => {
47
47
  const key = `identity/${region}`;
48
48
  let client = clients.get(key);
49
49
  if (client === undefined) {
@@ -53,7 +53,7 @@ export function ociApi_make(options = {}) {
53
53
  }
54
54
  return client;
55
55
  };
56
- const limitsClient_for = (region) => {
56
+ const limitsClient_resolve = (region) => {
57
57
  const key = `limits/${region}`;
58
58
  let client = clients.get(key);
59
59
  if (client === undefined) {
@@ -63,7 +63,7 @@ export function ociApi_make(options = {}) {
63
63
  }
64
64
  return client;
65
65
  };
66
- const computeClient_for = (region) => {
66
+ const computeClient_resolve = (region) => {
67
67
  const key = `compute/${region}`;
68
68
  let client = clients.get(key);
69
69
  if (client === undefined) {
@@ -82,22 +82,22 @@ export function ociApi_make(options = {}) {
82
82
  region: homeRegion,
83
83
  }),
84
84
  async tenancy_get(tenancyId) {
85
- const answer = await identityClient_for(homeRegion).getTenancy({ tenancyId });
85
+ const answer = await identityClient_resolve(homeRegion).getTenancy({ tenancyId });
86
86
  const tenancy = answer.tenancy;
87
87
  return {
88
88
  id: tenancy.id ?? tenancyId,
89
89
  name: tenancy.name ?? '',
90
90
  description: tenancy.description ?? '',
91
91
  homeRegionKey: tenancy.homeRegionKey ?? '',
92
- ...tags_of(tenancy.freeformTags, tenancy.definedTags),
92
+ ...tags_build(tenancy.freeformTags, tenancy.definedTags),
93
93
  };
94
94
  },
95
95
  async userName_get(userId) {
96
- const answer = await identityClient_for(homeRegion).getUser({ userId });
96
+ const answer = await identityClient_resolve(homeRegion).getUser({ userId });
97
97
  return answer.user.name;
98
98
  },
99
99
  async compartments_list(parentId) {
100
- const client = identityClient_for(homeRegion);
100
+ const client = identityClient_resolve(homeRegion);
101
101
  const items = await pages_drain(async (page) => {
102
102
  const answer = await client.listCompartments({
103
103
  compartmentId: parentId,
@@ -115,22 +115,22 @@ export function ociApi_make(options = {}) {
115
115
  description: compartment.description,
116
116
  lifecycleState: String(compartment.lifecycleState),
117
117
  timeCreated: new Date(compartment.timeCreated).toISOString(),
118
- ...tags_of(compartment.freeformTags, compartment.definedTags),
118
+ ...tags_build(compartment.freeformTags, compartment.definedTags),
119
119
  }));
120
120
  },
121
121
  async regionSubscriptions_list(tenancyId) {
122
- const answer = await identityClient_for(homeRegion).listRegionSubscriptions({ tenancyId });
122
+ const answer = await identityClient_resolve(homeRegion).listRegionSubscriptions({ tenancyId });
123
123
  return answer.items
124
124
  .filter((subscription) => String(subscription.status) === 'READY')
125
125
  .map((subscription) => subscription.regionName)
126
126
  .sort();
127
127
  },
128
128
  async availabilityDomains_list(region, tenancyId) {
129
- const answer = await identityClient_for(region).listAvailabilityDomains({ compartmentId: tenancyId });
129
+ const answer = await identityClient_resolve(region).listAvailabilityDomains({ compartmentId: tenancyId });
130
130
  return answer.items.map((domain) => domain.name ?? '').filter((name) => name !== '').sort();
131
131
  },
132
132
  async limitServices_list(region, tenancyId) {
133
- const client = limitsClient_for(region);
133
+ const client = limitsClient_resolve(region);
134
134
  const items = await pages_drain(async (page) => {
135
135
  const answer = await client.listServices({ compartmentId: tenancyId, ...(page !== undefined ? { page } : {}) });
136
136
  return { items: answer.items, opcNextPage: answer.opcNextPage };
@@ -138,7 +138,7 @@ export function ociApi_make(options = {}) {
138
138
  return items.map((service) => service.name ?? '').filter((name) => name !== '').sort();
139
139
  },
140
140
  async limitValues_list(region, tenancyId, service) {
141
- const client = limitsClient_for(region);
141
+ const client = limitsClient_resolve(region);
142
142
  const items = await pages_drain(async (page) => {
143
143
  const answer = await client.listLimitValues({ compartmentId: tenancyId, serviceName: service, ...(page !== undefined ? { page } : {}) });
144
144
  return { items: answer.items, opcNextPage: answer.opcNextPage };
@@ -151,7 +151,7 @@ export function ociApi_make(options = {}) {
151
151
  }));
152
152
  },
153
153
  async resourceAvailability_get(region, tenancyId, service, limitName, availabilityDomain) {
154
- const answer = await limitsClient_for(region).getResourceAvailability({
154
+ const answer = await limitsClient_resolve(region).getResourceAvailability({
155
155
  serviceName: service,
156
156
  limitName,
157
157
  compartmentId: tenancyId,
@@ -163,7 +163,7 @@ export function ociApi_make(options = {}) {
163
163
  return { used: availability.used, available: availability.available };
164
164
  },
165
165
  async shapes_list(region, tenancyId) {
166
- const client = computeClient_for(region);
166
+ const client = computeClient_resolve(region);
167
167
  const items = await pages_drain(async (page) => {
168
168
  const answer = await client.listShapes({ compartmentId: tenancyId, ...(page !== undefined ? { page } : {}) });
169
169
  return { items: answer.items, opcNextPage: answer.opcNextPage };
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/cloud/oci/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/cloud/oci/api.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,17 @@ export interface OciBuildApi {
23
23
  }>;
24
24
  /** A compartment's lifecycle state. */
25
25
  compartmentState_get(compartmentId: string): Promise<string>;
26
+ /** The compartment a DNS zone of a name lives in, anywhere in the tenancy, or null. */
27
+ zoneCompartment_find(zone: string): Promise<string | null>;
28
+ /** The names of the DNS zones anywhere in the tenancy, sorted. */
29
+ zoneNames_list(): Promise<string[]>;
30
+ /** The compartment a tag namespace of a name lives in, anywhere in the tenancy, or null. Its name is the tenancy's, not a compartment's. */
31
+ tagNamespaceCompartment_find(namespace: string): Promise<string | null>;
32
+ /** An active compartment of a name directly under a parent, made (with the tags given) when there is none; its id. */
33
+ compartmentChild_ensure(parentId: string, name: string, description: string, tags: Record<string, string>): Promise<{
34
+ id: string;
35
+ made: boolean;
36
+ }>;
26
37
  /** Whether a tag namespace holds a tag, in a compartment. */
27
38
  tag_exists(compartmentId: string, namespace: string, tag: string): Promise<boolean>;
28
39
  /** How many of a limit are free, region-wide. */
@@ -4,15 +4,7 @@ import * as dns from 'oci-dns';
4
4
  import * as identity from 'oci-identity';
5
5
  import * as limits from 'oci-limits';
6
6
  import * as objectstorage from 'oci-objectstorage';
7
- /**
8
- * Whether an SDK error is a not-found.
9
- *
10
- * @param error - The error.
11
- * @returns True for a 404.
12
- */
13
- function notFound(error) {
14
- return error.statusCode === 404;
15
- }
7
+ import { notFound } from './errors.js';
16
8
  /**
17
9
  * The build's calls over the SDK.
18
10
  *
@@ -29,6 +21,12 @@ export function ociBuildApi_make(options) {
29
21
  const blocks = regional(new core.BlockstorageClient({ authenticationDetailsProvider: provider }));
30
22
  const tenancyId = provider.getTenantId();
31
23
  let namespace = null;
24
+ // The root and every active compartment beneath it: where a shared thing
25
+ // (the zone, the tag namespace) may live.
26
+ const compartments_all = async () => {
27
+ const beneath = (await ident.listCompartments({ compartmentId: tenancyId, compartmentIdInSubtree: true, lifecycleState: identity.models.Compartment.LifecycleState.Active })).items;
28
+ return [tenancyId, ...beneath.map((compartment) => compartment.id).filter((id) => typeof id === 'string')];
29
+ };
32
30
  const namespace_get = async () => {
33
31
  if (namespace === null)
34
32
  namespace = (await store.getNamespace({ compartmentId: tenancyId })).value;
@@ -42,6 +40,39 @@ export function ociBuildApi_make(options) {
42
40
  async compartmentState_get(compartmentId) {
43
41
  return String((await ident.getCompartment({ compartmentId })).compartment.lifecycleState);
44
42
  },
43
+ async zoneCompartment_find(zone) {
44
+ for (const compartmentId of await compartments_all()) {
45
+ const zones = (await dnsClient.listZones({ compartmentId, name: zone })).items;
46
+ if (zones.length > 0)
47
+ return compartmentId;
48
+ }
49
+ return null;
50
+ },
51
+ async zoneNames_list() {
52
+ const names = new Set();
53
+ for (const compartmentId of await compartments_all()) {
54
+ for (const zone of (await dnsClient.listZones({ compartmentId })).items)
55
+ if (typeof zone.name === 'string')
56
+ names.add(zone.name);
57
+ }
58
+ return [...names].sort();
59
+ },
60
+ async tagNamespaceCompartment_find(namespaceName) {
61
+ for (const compartmentId of await compartments_all()) {
62
+ const spaces = (await ident.listTagNamespaces({ compartmentId })).items;
63
+ if (spaces.some((space) => space.name === namespaceName))
64
+ return compartmentId;
65
+ }
66
+ return null;
67
+ },
68
+ async compartmentChild_ensure(parentId, name, description, tags) {
69
+ const children = (await ident.listCompartments({ compartmentId: parentId, lifecycleState: identity.models.Compartment.LifecycleState.Active })).items;
70
+ const found = children.find((child) => child.name === name);
71
+ if (found?.id !== undefined)
72
+ return { id: found.id, made: false };
73
+ const made = (await ident.createCompartment({ createCompartmentDetails: { compartmentId: parentId, name, description, freeformTags: tags } })).compartment;
74
+ return { id: made.id ?? '', made: true };
75
+ },
45
76
  async tag_exists(compartmentId, namespaceName, tag) {
46
77
  const spaces = (await ident.listTagNamespaces({ compartmentId, lifecycleState: identity.models.TagNamespace.LifecycleState.Active })).items;
47
78
  const space = spaces.find((entry) => entry.name === namespaceName);
@@ -1 +1 @@
1
- {"version":3,"file":"buildApi.js","sourceRoot":"","sources":["../../../src/cloud/oci/buildApi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"buildApi.js","sourceRoot":"","sources":["../../../src/cloud/oci/buildApi.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,8 @@ export interface OciBuilderOptions {
20
20
  readonly zip_fetch?: () => Promise<Buffer>;
21
21
  /** How often a job is asked again, in milliseconds. */
22
22
  readonly pollMs?: number;
23
+ /** How long a call may answer not found for something just made before the step fails; ten minutes when absent. */
24
+ readonly visibleWaitMs?: number;
23
25
  /** The build's other OCI calls in a region; absent, only adoption and re-plans work. */
24
26
  readonly api?: (region: string) => OciBuildApi;
25
27
  /** The read driver, for the fit per availability domain. */
@@ -65,6 +67,10 @@ export declare function stackZip_fetch(): Promise<Buffer>;
65
67
  * @throws Error - When it is not.
66
68
  */
67
69
  export declare function stackZip_check(zip: Buffer): Buffer;
70
+ /** The tag namespace the stack attributes what it makes with: one per tenancy. */
71
+ export declare const TAG_NAMESPACE: string;
72
+ /** The compartment every built domain's own compartment sits in, under the tenancy root. */
73
+ export declare const DOMAINS_COMPARTMENT: string;
68
74
  /** OCI's build half, over Resource Manager. */
69
75
  export declare class OciBuilder implements CloudBuilder {
70
76
  private readonly options;
@@ -122,7 +128,42 @@ export declare class OciBuilder implements CloudBuilder {
122
128
  * @returns The calls.
123
129
  * @throws Error - When the builder was made without them.
124
130
  */
125
- private api_in;
131
+ private api_resolve;
132
+ zones_list(region: string): Promise<string[]>;
133
+ /**
134
+ * The domain's compartment, `domains/<name>` under the tenancy root.
135
+ * Compartments are free; making one is still a change to the tenancy, so
136
+ * it runs in the build (the `tasks` tier), never at `domain new`.
137
+ *
138
+ * @param request - The domain, and the region its calls go through.
139
+ * @param call - The step's log and stop.
140
+ * @returns The compartment's id, and whether this call made it.
141
+ */
142
+ compartment_ensure(request: {
143
+ domain: string;
144
+ region: string;
145
+ }, call: BuildCall): Promise<{
146
+ id: string;
147
+ made: boolean;
148
+ }>;
149
+ /**
150
+ * Runs a call again while the cloud answers not found, for a bounded time:
151
+ * what was just made is not at once visible everywhere.
152
+ *
153
+ * @param run - The call.
154
+ * @param waiting - What the log says while it waits.
155
+ * @param call - The step's log and stop.
156
+ * @returns What the call answered.
157
+ */
158
+ private notFound_outwait;
159
+ /**
160
+ * Waits until a compartment is active: a new one takes a moment to be usable.
161
+ *
162
+ * @param api - The build calls.
163
+ * @param id - The compartment.
164
+ * @param call - The step's log and stop.
165
+ */
166
+ private compartment_awaitActive;
126
167
  preflight(request: {
127
168
  domain: string;
128
169
  spec: DomainSpec;
@@ -23,7 +23,8 @@
23
23
  import { createHash } from 'node:crypto';
24
24
  import { Readable } from 'node:stream';
25
25
  import { planRows_read } from './planRead.js';
26
- import { familyShape_of, stackVariables_build } from './stackVars.js';
26
+ import { notFound } from './errors.js';
27
+ import { familyShape_resolve, stackVariables_build } from './stackVars.js';
27
28
  import { specFit_read } from '../../domain/sizing.js';
28
29
  /** The stack release stratus builds with: Oracle's zip of `create-cluster`, pinned. */
29
30
  export const STACK_RELEASE = {
@@ -90,6 +91,10 @@ function poll_wait(ms, signal) {
90
91
  signal.addEventListener('abort', () => { clearTimeout(timer); resolve(); }, { once: true });
91
92
  });
92
93
  }
94
+ /** The tag namespace the stack attributes what it makes with: one per tenancy. */
95
+ export const TAG_NAMESPACE = 'openshift-tags';
96
+ /** The compartment every built domain's own compartment sits in, under the tenancy root. */
97
+ export const DOMAINS_COMPARTMENT = 'domains';
93
98
  /** OCI's build half, over Resource Manager. */
94
99
  export class OciBuilder {
95
100
  options;
@@ -202,13 +207,79 @@ export class OciBuilder {
202
207
  * @returns The calls.
203
208
  * @throws Error - When the builder was made without them.
204
209
  */
205
- api_in(region) {
210
+ api_resolve(region) {
206
211
  if (this.options.api === undefined)
207
212
  throw new Error('this builder adopts and re-plans only');
208
213
  return this.options.api(region);
209
214
  }
215
+ async zones_list(region) {
216
+ return await this.api_resolve(region).zoneNames_list();
217
+ }
218
+ /**
219
+ * The domain's compartment, `domains/<name>` under the tenancy root.
220
+ * Compartments are free; making one is still a change to the tenancy, so
221
+ * it runs in the build (the `tasks` tier), never at `domain new`.
222
+ *
223
+ * @param request - The domain, and the region its calls go through.
224
+ * @param call - The step's log and stop.
225
+ * @returns The compartment's id, and whether this call made it.
226
+ */
227
+ async compartment_ensure(request, call) {
228
+ const api = this.api_resolve(request.region);
229
+ const tenancy = await api.tenancy_get();
230
+ const parent = await api.compartmentChild_ensure(tenancy.id, DOMAINS_COMPARTMENT, 'The Trusted Domains stratus builds, one compartment each', { 'mise-role': 'domains' });
231
+ call.log(parent.made ? `made the compartment ${DOMAINS_COMPARTMENT} under ${tenancy.name}` : `${DOMAINS_COMPARTMENT} is there`);
232
+ await this.compartment_awaitActive(api, parent.id, call);
233
+ // A compartment just made may answer not found for a while, even after it reads ACTIVE.
234
+ const own = await this.notFound_outwait(() => api.compartmentChild_ensure(parent.id, request.domain, `The Trusted Domain ${request.domain}`, { 'mise-domain': request.domain }), `${DOMAINS_COMPARTMENT} is not yet usable`, call);
235
+ call.log(own.made ? `made the compartment ${DOMAINS_COMPARTMENT}/${request.domain}` : `${DOMAINS_COMPARTMENT}/${request.domain} is there`);
236
+ await this.compartment_awaitActive(api, own.id, call);
237
+ return own;
238
+ }
239
+ /**
240
+ * Runs a call again while the cloud answers not found, for a bounded time:
241
+ * what was just made is not at once visible everywhere.
242
+ *
243
+ * @param run - The call.
244
+ * @param waiting - What the log says while it waits.
245
+ * @param call - The step's log and stop.
246
+ * @returns What the call answered.
247
+ */
248
+ async notFound_outwait(run, waiting, call) {
249
+ const pollMs = this.options.pollMs ?? 10_000;
250
+ const until = Date.now() + (this.options.visibleWaitMs ?? 600_000);
251
+ for (;;) {
252
+ try {
253
+ return await run();
254
+ }
255
+ catch (error) {
256
+ if (!notFound(error) || Date.now() >= until || call.signal.aborted)
257
+ throw error;
258
+ call.log(`${waiting}; waiting`);
259
+ await poll_wait(pollMs, call.signal);
260
+ }
261
+ }
262
+ }
263
+ /**
264
+ * Waits until a compartment is active: a new one takes a moment to be usable.
265
+ *
266
+ * @param api - The build calls.
267
+ * @param id - The compartment.
268
+ * @param call - The step's log and stop.
269
+ */
270
+ async compartment_awaitActive(api, id, call) {
271
+ for (;;) {
272
+ const state = await this.notFound_outwait(() => api.compartmentState_get(id), `${id} is not yet found`, call);
273
+ if (state === 'ACTIVE')
274
+ return;
275
+ if (call.signal.aborted)
276
+ throw new Error(`stopped while ${id} was ${state}`);
277
+ call.log(`compartment ${state.toLowerCase()}; waiting`);
278
+ await poll_wait(this.options.pollMs ?? 5000, call.signal);
279
+ }
280
+ }
210
281
  async preflight(request, call) {
211
- const api = this.api_in(request.region);
282
+ const api = this.api_resolve(request.region);
212
283
  const checks = [];
213
284
  const check = async (name, run) => {
214
285
  let result;
@@ -229,13 +300,14 @@ export class OciBuilder {
229
300
  return { ok: state.toUpperCase() === 'ACTIVE', note: state.toLowerCase() };
230
301
  });
231
302
  await check('attribution tag', async () => {
232
- const ok = request.compartmentId !== '' && await api.tag_exists(request.compartmentId, 'openshift-tags', 'openshift-resource');
233
- return { ok, note: ok ? 'openshift-tags.openshift-resource exists' : 'openshift-tags.openshift-resource is missing in the compartment' };
303
+ const home = await api.tagNamespaceCompartment_find(TAG_NAMESPACE);
304
+ const ok = home !== null && await api.tag_exists(home, TAG_NAMESPACE, 'openshift-resource');
305
+ return { ok, note: ok ? `${TAG_NAMESPACE}.openshift-resource exists${home === request.compartmentId ? '' : ', shared from another compartment'}` : `${TAG_NAMESPACE}.openshift-resource is missing in the tenancy` };
234
306
  });
235
307
  await check('spec', async () => {
236
308
  if (request.spec.workers.count > 0)
237
309
  return { ok: false, note: 'workers are not proven on OCI yet: a compact cluster (workers 0) only' };
238
- familyShape_of(request.spec.family);
310
+ familyShape_resolve(request.spec.family);
239
311
  return { ok: true, note: `${request.spec.family}, compact, ${request.spec.controlPlane.count} nodes` };
240
312
  });
241
313
  await check('room', async () => {
@@ -250,7 +322,10 @@ export class OciBuilder {
250
322
  return { ok: free !== null && free >= 3, note: `3 needed, ${free ?? 'unknown'} free` };
251
323
  });
252
324
  await check('zone', async () => {
253
- const served = await api.zoneNameservers_get(request.baseDomain, request.compartmentId);
325
+ const zoneHome = await api.zoneCompartment_find(request.baseDomain);
326
+ if (zoneHome === null)
327
+ return { ok: false, note: `no zone ${request.baseDomain} in the tenancy` };
328
+ const served = await api.zoneNameservers_get(request.baseDomain, zoneHome);
254
329
  const resolved = this.options.nameservers_resolve === undefined ? [] : (await this.options.nameservers_resolve(request.baseDomain)).map((name) => name.replace(/\.$/, '')).sort();
255
330
  const same = served.length > 0 && JSON.stringify(served) === JSON.stringify(resolved);
256
331
  return { ok: same, note: same ? `${request.baseDomain} is delegated to OCI's name servers` : `${request.baseDomain}: OCI serves ${served.join(' ') || 'nothing'}, the world asks ${resolved.join(' ') || 'nobody'}` };
@@ -262,13 +337,16 @@ export class OciBuilder {
262
337
  return checks;
263
338
  }
264
339
  async iso_store(request, call) {
265
- const api = this.api_in(request.region);
340
+ const api = this.api_resolve(request.region);
266
341
  const bucket = this.options.bucket ?? ISO_BUCKET;
267
342
  const object = `${request.domain}-discovery.iso`;
268
343
  await api.bucket_ensure(bucket, request.compartmentId);
269
- const image = await (this.options.iso_fetch ?? iso_fetch)(request.url);
270
- call.log(`copying the discovery image into ${bucket}/${object}${image.length !== undefined ? ` (${Math.round(image.length / 1_048_576)} MiB)` : ''}`);
271
- await api.object_put(bucket, object, image.body, image.length);
344
+ // A bucket just made may refuse an object as not found for a while; the image is a stream, so each try fetches it again.
345
+ await this.notFound_outwait(async () => {
346
+ const image = await (this.options.iso_fetch ?? iso_fetch)(request.url);
347
+ call.log(`copying the discovery image into ${bucket}/${object}${image.length !== undefined ? ` (${Math.round(image.length / 1_048_576)} MiB)` : ''}`);
348
+ await api.object_put(bucket, object, image.body, image.length);
349
+ }, `${bucket} is not yet usable`, call);
272
350
  const expires = new Date(Date.now() + (this.options.linkDays ?? 7) * 24 * 3600 * 1000);
273
351
  const link = await api.link_create(bucket, object, `${object}-link`, expires);
274
352
  call.log(`linked until ${expires.toISOString().slice(0, 10)}`);
@@ -284,9 +362,12 @@ export class OciBuilder {
284
362
  const sshPublicKey = this.options.sshPublicKey?.() ?? null;
285
363
  if (sshPublicKey === null)
286
364
  throw new Error('no SSH public key on the host');
287
- const tenancyId = (await this.api_in(request.region).tenancy_get()).id;
365
+ const api = this.api_resolve(request.region);
366
+ const tenancyId = (await api.tenancy_get()).id;
367
+ const tagHome = await api.tagNamespaceCompartment_find(TAG_NAMESPACE);
288
368
  const variables = stackVariables_build({
289
369
  domain: request.domain, spec: request.spec, tenancyId, compartmentId: request.compartmentId, region: request.region,
370
+ ...(tagHome !== null ? { tagNamespaceCompartmentId: tagHome } : {}),
290
371
  baseDomain: request.baseDomain, isoLink: request.isoLink, sshPublicKey: sshPublicKey.trim(),
291
372
  });
292
373
  const stack = await rm.stack_create({
@@ -326,11 +407,13 @@ export class OciBuilder {
326
407
  };
327
408
  }
328
409
  async dns_upsert(request, call) {
329
- const api = this.api_in(request.region);
410
+ const api = this.api_resolve(request.region);
330
411
  const cluster = `${request.domain}.${request.baseDomain}`;
331
412
  const records = [[`api.${cluster}`, request.outputs.apiIp], [`api-int.${cluster}`, request.outputs.apiIntIp], [`*.apps.${cluster}`, request.outputs.appsIp]];
413
+ // The zone is shared and lives where it was made, not in the domain's own compartment.
414
+ const zoneHome = (await api.zoneCompartment_find(request.baseDomain)) ?? request.compartmentId;
332
415
  for (const [name, address] of records) {
333
- await api.record_upsert(request.baseDomain, name, address, request.compartmentId);
416
+ await api.record_upsert(request.baseDomain, name, address, zoneHome);
334
417
  call.log(`${name} -> ${address}`);
335
418
  }
336
419
  return records.map(([name]) => name);
@@ -339,15 +422,16 @@ export class OciBuilder {
339
422
  return this.options.rm(request.region).stackResources_count(request.stackRef);
340
423
  }
341
424
  async teardown_run(request, call) {
342
- const api = this.api_in(request.region);
425
+ const api = this.api_resolve(request.region);
343
426
  const gone = [];
344
427
  if (request.stackRef !== undefined) {
345
428
  await this.job_run(this.options.rm(request.region), request.stackRef, { kind: 'destroy' }, `${request.domain}: destroy`, call);
346
429
  gone.push(`the stack's resources (${request.stackRef})`);
347
430
  }
348
431
  const cluster = `${request.domain}.${request.baseDomain}`;
432
+ const zoneHome = (await api.zoneCompartment_find(request.baseDomain)) ?? request.compartmentId;
349
433
  for (const name of [`api.${cluster}`, `api-int.${cluster}`, `*.apps.${cluster}`]) {
350
- await api.record_delete(request.baseDomain, name, request.compartmentId);
434
+ await api.record_delete(request.baseDomain, name, zoneHome);
351
435
  call.log(`record ${name} removed`);
352
436
  }
353
437
  gone.push('3 DNS records');
@@ -1 +1 @@
1
- {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../src/cloud/oci/builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../src/cloud/oci/builder.ts"],"names":[],"mappings":"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"}