Skip to content

GetChange

Source: src/AWS/Route53/GetChange.ts

Runtime binding for the GetChange operation (IAM action route53:GetChange on arn:aws:route53:::change/*).

Polls the status of a record change submitted via ChangeResourceRecordSetsPENDING until the change has propagated to all authoritative name servers, then INSYNC. Pass the bare change id (strip a leading /change/ from ChangeInfo.Id). Provide the implementation with Effect.provide(AWS.Route53.GetChangeHttp).

const getChange = yield* AWS.Route53.GetChange();
const status = yield* getChange({
Id: changeId.replace(/^\/change\//, ""),
}).pipe(
Effect.map((r) => r.ChangeInfo.Status),
Effect.repeat({
schedule: Schedule.fixed("2 seconds"),
until: (status) => status === "INSYNC",
times: 30,
}),
);