Skip to content

VersionMetadata

Source: src/Cloudflare/Workers/VersionMetadata.ts

A Cloudflare Workers Version Metadata binding.

Cloudflare provides the deployed Worker version at runtime (id, tag, timestamp).

import * as Effect from "effect/Effect";
Cloudflare.Worker(
"VersionWorker",
{ main: import.meta.filename },
Effect.gen(function* () {
// Attaches the binding to this Worker AND returns a deferred accessor.
const versionMetadata = yield* Cloudflare.VersionMetadata();
return {
fetch: Effect.gen(function* () {
const { id, tag, timestamp } = yield* versionMetadata;
return Response.json({ id, tag, timestamp });
}),
};
}).pipe(Effect.provide(Cloudflare.VersionMetadataBindingLive)),
);
export const Worker = Cloudflare.Worker("Worker", {
main: "./src/worker.ts",
env: {
CF_VERSION_METADATA: Cloudflare.VersionMetadata(),
},
});
export type WorkerEnv = Cloudflare.InferEnv<typeof Worker>;
// { CF_VERSION_METADATA: WorkerVersionMetadata }