Add logs for when permissioned as is dealt with

This commit is contained in:
wendrul
2026-03-09 18:19:32 +01:00
parent 50a945f9c8
commit 937555f876
7 changed files with 61 additions and 53 deletions
+6 -4
View File
@@ -38,7 +38,7 @@ import { requireLogin } from "../../core/auth.ts";
import { validatePath, resolveWorkspace } from "../../core/context.ts";
import type { PermissionedAsContext } from "../../core/permissioned_as.ts";
import {
resolvePermissionedAsEmail,
resolvePermissionedAsRule,
lookupUsernameByEmail,
} from "../../core/permissioned_as.ts";
@@ -175,21 +175,23 @@ export async function pushTrigger<K extends TriggerType>(
preserveFields.preserve_email = true;
if ((trigger as any).edited_by) {
preserveFields.email = (trigger as any).edited_by;
log.info(`Preserving ${(trigger as any).edited_by} as permissioned_as for trigger ${path}`);
}
} else {
// Creating: apply defaultPermissionedAs rule if one matches
const ruleEmail = resolvePermissionedAsEmail(
const rule = resolvePermissionedAsRule(
path,
permissionedAsContext.rules
);
if (ruleEmail) {
if (rule) {
const username = await lookupUsernameByEmail(
workspace,
ruleEmail,
rule.email,
permissionedAsContext.emailToUsernameCache
);
preserveFields.email = username;
preserveFields.preserve_email = true;
log.info(`Setting trigger ${path} to run permissioned as ${rule.email} (matched rule '${rule.path_pattern}' in wmill.yaml)`);
}
}
}