MCPcopy Index your code
hub / github.com/coder/coder / watchBuildLogsByTemplateVersionId

Function watchBuildLogsByTemplateVersionId

site/src/api/api.ts:258–292  ·  view source on GitHub ↗
(
	versionId: string,
	{
		onMessage,
		onDone,
		onError,
		after,
	}: WatchBuildLogsByTemplateVersionIdOptions,
)

Source from the content-addressed store, hash-verified

256};
257
258export const watchBuildLogsByTemplateVersionId = (
259 versionId: string,
260 {
261 onMessage,
262 onDone,
263 onError,
264 after,
265 }: WatchBuildLogsByTemplateVersionIdOptions,
266) => {
267 const searchParams = new URLSearchParams({ follow: "true" });
268 if (after !== undefined) {
269 searchParams.append("after", after.toString());
270 }
271
272 const socket = createWebSocket(
273 `/api/v2/templateversions/${versionId}/logs`,
274 searchParams,
275 );
276
277 socket.addEventListener("message", (event) =>
278 onMessage(JSON.parse(event.data) as TypesGen.ProvisionerJobLog),
279 );
280
281 socket.addEventListener("error", () => {
282 onError(new Error("Connection for logs failed."));
283 socket.close();
284 });
285
286 socket.addEventListener("close", () => {
287 // When the socket closes, logs have finished streaming!
288 onDone?.();
289 });
290
291 return socket;
292};
293
294export const watchWorkspaceAgentLogs = (
295 agentId: string,

Callers 1

useWatchVersionLogsFunction · 0.90

Calls 4

createWebSocketFunction · 0.85
parseMethod · 0.80
addEventListenerMethod · 0.65
closeMethod · 0.65

Tested by

no test coverage detected