44 lines
1.2 KiB
PL/PgSQL
44 lines
1.2 KiB
PL/PgSQL
BEGIN;
|
|
|
|
SET ROLE capability_role;
|
|
|
|
INSERT INTO capability.notification_bindings (
|
|
binding_id, capability_id, owner_principal_id, revision, state, https_origin,
|
|
delivery_path, receipt_path, protocol, secret_ref, verified_at_unix_millis, health
|
|
)
|
|
VALUES (
|
|
'domovoy-notification-binding',
|
|
'prospective-notification-delivery',
|
|
'domovoy-creator-principal',
|
|
2,
|
|
'ACTIVE',
|
|
'https://assistant.cin.su',
|
|
'/delivery/v1/deliveries',
|
|
'/delivery/v1/receipts',
|
|
'IDEMPOTENT_RECEIPT_V1',
|
|
'domovoy-notification-write-v1',
|
|
FLOOR(EXTRACT(EPOCH FROM clock_timestamp()) * 1000)::bigint,
|
|
'AVAILABLE'
|
|
)
|
|
ON CONFLICT (binding_id, revision) DO UPDATE SET
|
|
https_origin = EXCLUDED.https_origin,
|
|
verified_at_unix_millis = EXCLUDED.verified_at_unix_millis,
|
|
health = EXCLUDED.health;
|
|
|
|
INSERT INTO capability.notification_binding_heads (
|
|
capability_id, owner_principal_id, binding_id, revision
|
|
)
|
|
VALUES (
|
|
'prospective-notification-delivery',
|
|
'domovoy-creator-principal',
|
|
'domovoy-notification-binding',
|
|
2
|
|
)
|
|
ON CONFLICT (capability_id, owner_principal_id) DO UPDATE SET
|
|
binding_id = EXCLUDED.binding_id,
|
|
revision = EXCLUDED.revision
|
|
WHERE capability.notification_binding_heads.revision < EXCLUDED.revision;
|
|
|
|
RESET ROLE;
|
|
COMMIT;
|