diff --git a/modules/minio/provisioner/index.ts b/modules/minio/provisioner/index.ts index fc999a1..a69a37d 100644 --- a/modules/minio/provisioner/index.ts +++ b/modules/minio/provisioner/index.ts @@ -28,7 +28,7 @@ runProvisioner("s3-bucket", { try { await minio.removeAccessKey(accessKeyId); } catch { /* none yet — first provision */ } const key = await minio.createAccessKey(bucket, accessKeyId); - await emit("module.minio.bucket.created", { + await announce("module.minio.bucket.created", { bucket, consumer: grant.consumer, node: grant.node, @@ -61,6 +61,16 @@ runProvisioner("s3-bucket", { console.error(`[minio] bucket ${bucket} not removed (likely non-empty), access revoked: ${err}`); } - await emit("module.minio.bucket.removed", { bucket, consumer: grant.consumer, node: grant.node }); + await announce("module.minio.bucket.removed", { bucket, consumer: grant.consumer, node: grant.node }); }, }); + +/** Emit best-effort: with no broker bound (a provisioner is not yet a runtime — novox/hq ADR 0052) + * the event is logged and dropped, never allowed to throw back and fail a bucket that was made. */ +async function announce(type: string, body: unknown): Promise { + try { + await emit(type, body); + } catch (err) { + console.error(`[minio] could not emit ${type}: ${err}`); + } +}