From 873da32deb2c6ddd9867277ee617f61796847c8e Mon Sep 17 00:00:00 2001 From: Simo Kinnunen Date: Wed, 19 Aug 2026 02:58:42 +0900 Subject: [PATCH] feat(cli): allow overriding the events endpoint via CHECKLY_MQTT_URL [RED-876] In the local environment the MQTT/events endpoint was hardcoded, so setups that serve the event stream from a different broker had no way to point the CLI at it and 'checkly test' would wait for run events forever. The new CHECKLY_MQTT_URL variable overrides the local endpoint, mirroring how CHECKLY_API_URL overrides the API URL. Co-Authored-By: Claude Fable 5 --- packages/cli/src/services/__tests__/config.spec.ts | 9 +++++++++ packages/cli/src/services/config.ts | 4 +++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/packages/cli/src/services/__tests__/config.spec.ts b/packages/cli/src/services/__tests__/config.spec.ts index 4b63d998b..671ad1997 100644 --- a/packages/cli/src/services/__tests__/config.spec.ts +++ b/packages/cli/src/services/__tests__/config.spec.ts @@ -12,4 +12,13 @@ describe('config', () => { expect(Conf).toHaveBeenCalledTimes(0) delete process.env.CHECKLY_API_KEY }) + + it('should let CHECKLY_MQTT_URL override the events endpoint in the local environment', () => { + process.env.CHECKLY_ENV = 'local' + expect(config.getMqttUrl()).toEqual('wss://events-local.checklyhq.com') + process.env.CHECKLY_MQTT_URL = 'ws://localhost:8085/mqtt' + expect(config.getMqttUrl()).toEqual(process.env.CHECKLY_MQTT_URL) + delete process.env.CHECKLY_MQTT_URL + delete process.env.CHECKLY_ENV + }) }) diff --git a/packages/cli/src/services/config.ts b/packages/cli/src/services/config.ts index b5639fad3..54ecc269f 100644 --- a/packages/cli/src/services/config.ts +++ b/packages/cli/src/services/config.ts @@ -89,7 +89,9 @@ class ChecklyConfig { getMqttUrl (): string { const environments = { - local: 'wss://events-local.checklyhq.com', + // Overridable for local development setups whose event stream is served + // from a different broker, mirroring how CHECKLY_API_URL overrides the API. + local: process.env.CHECKLY_MQTT_URL || 'wss://events-local.checklyhq.com', development: 'wss://events-dev.checklyhq.com', staging: 'wss://events-test.checklyhq.com', production: 'wss://events.checklyhq.com',