Skip to content

Commit f567e6d

Browse files
committed
Merge remote-tracking branch 'origin/main' into helm/replace-cluster-role
2 parents 5465393 + afc9a6a commit f567e6d

File tree

11 files changed

+1916
-25
lines changed

11 files changed

+1916
-25
lines changed

apps/webapp/app/env.server.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -229,15 +229,21 @@ const EnvironmentSchema = z.object({
229229
DEPOT_TOKEN: z.string().optional(),
230230
DEPOT_ORG_ID: z.string().optional(),
231231
DEPOT_REGION: z.string().default("us-east-1"),
232+
233+
// Deployment registry
232234
DEPLOY_REGISTRY_HOST: z.string().min(1),
233235
DEPLOY_REGISTRY_USERNAME: z.string().optional(),
234236
DEPLOY_REGISTRY_PASSWORD: z.string().optional(),
235237
DEPLOY_REGISTRY_NAMESPACE: z.string().min(1).default("trigger"),
238+
DEPLOY_REGISTRY_ECR_TAGS: z.string().optional(), // csv, for example: "key1=value1,key2=value2"
239+
DEPLOY_REGISTRY_ECR_ASSUME_ROLE_ARN: z.string().optional(),
240+
DEPLOY_REGISTRY_ECR_ASSUME_ROLE_EXTERNAL_ID: z.string().optional(),
236241
DEPLOY_IMAGE_PLATFORM: z.string().default("linux/amd64"),
237242
DEPLOY_TIMEOUT_MS: z.coerce
238243
.number()
239244
.int()
240245
.default(60 * 1000 * 8), // 8 minutes
246+
241247
OBJECT_STORE_BASE_URL: z.string().optional(),
242248
OBJECT_STORE_ACCESS_KEY_ID: z.string().optional(),
243249
OBJECT_STORE_SECRET_ACCESS_KEY: z.string().optional(),

apps/webapp/app/services/platform.v3.server.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,8 @@ function initializeMachinePresets(): {
102102
};
103103
}
104104

105+
logger.info("🎛️ Overriding machine presets", { overrides });
106+
105107
return {
106108
defaultMachine: overrideDefaultMachine(defaultMachineFromPlatform, overrides.defaultMachine),
107109
machines: overrideMachines(machinesFromPlatform, overrides.machines),

apps/webapp/app/services/realtimeClient.server.ts

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -292,7 +292,7 @@ export class RealtimeClient {
292292
): URL {
293293
const $url = new URL(url.toString());
294294

295-
const electricOrigin = this.#resolveElectricOrigin(environment.id);
295+
const electricOrigin = this.#resolveElectricOrigin($url, whereClause, environment.id);
296296
const electricUrl = new URL(`${electricOrigin}/v1/shape`);
297297

298298
// Copy over all the url search params to the electric url
@@ -483,14 +483,30 @@ export class RealtimeClient {
483483
return `${this.options.keyPrefix}:${environmentId}`;
484484
}
485485

486-
#resolveElectricOrigin(environmentId: string) {
486+
#resolveElectricOrigin(url: URL, whereClause: string, environmentId: string) {
487487
if (typeof this.options.electricOrigin === "string") {
488488
return this.options.electricOrigin;
489489
}
490490

491-
const index = jumpHash(environmentId, this.options.electricOrigin.length);
491+
const shardKey = this.#getShardKey(whereClause, environmentId);
492492

493-
return this.options.electricOrigin[index] ?? this.options.electricOrigin[0];
493+
const index = jumpHash(shardKey, this.options.electricOrigin.length);
494+
495+
const origin = this.options.electricOrigin[index] ?? this.options.electricOrigin[0];
496+
497+
logger.debug("[realtimeClient] resolveElectricOrigin", {
498+
whereClause,
499+
environmentId,
500+
shardKey,
501+
index,
502+
electricOrigin: origin,
503+
});
504+
505+
return origin;
506+
}
507+
508+
#getShardKey(whereClause: string, environmentId: string) {
509+
return [environmentId, whereClause].join(":");
494510
}
495511

496512
#registerCommands() {

0 commit comments

Comments
 (0)