Skip to content

Commit 0e93043

Browse files
committed
don't send c3 metrics from wrangler init
1 parent 02e2f4f commit 0e93043

File tree

2 files changed

+29
-0
lines changed

2 files changed

+29
-0
lines changed

packages/wrangler/src/__tests__/init.test.ts

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import { File, FormData } from "undici";
99
import { vi } from "vitest";
1010
import { version as wranglerVersion } from "../../package.json";
1111
import { downloadWorker } from "../init";
12+
import { writeMetricsConfig } from "../metrics/metrics-config";
1213
import { getPackageManager } from "../package-manager";
1314
import { mockAccountId, mockApiToken } from "./helpers/mock-account-id";
1415
import { mockConsoleMethods } from "./helpers/mock-console";
@@ -149,6 +150,27 @@ describe("init", () => {
149150
);
150151
});
151152
});
153+
154+
test("if telemetry is disabled in wrangler, then disable for c3 too", async () => {
155+
writeMetricsConfig({
156+
permission: {
157+
enabled: false,
158+
date: new Date(2024, 11, 11),
159+
},
160+
});
161+
await runWrangler("init");
162+
163+
expect(execa).toHaveBeenCalledWith(
164+
"mockpm",
165+
["create", "cloudflare@^2.5.0"],
166+
{
167+
env: {
168+
CREATE_CLOUDFLARE_TELEMETRY_DISABLED: "1",
169+
},
170+
stdio: "inherit",
171+
}
172+
);
173+
});
152174
});
153175

154176
describe("deprecated behavior is retained with --no-delegate-c3", () => {

packages/wrangler/src/init.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import { getC3CommandFromEnv } from "./environment-variables/misc-variables";
1515
import { CommandLineArgsError, FatalError, UserError } from "./errors";
1616
import { getGitVersioon, initializeGit, isInsideGitRepo } from "./git-client";
1717
import { logger } from "./logger";
18+
import { readMetricsConfig } from "./metrics/metrics-config";
1819
import { getPackageManager } from "./package-manager";
1920
import { parsePackageJSON, parseTOML, readFileSync } from "./parse";
2021
import { getBasePath } from "./paths";
@@ -279,8 +280,14 @@ export async function initHandler(args: InitArgs) {
279280
);
280281
logger.log(`🌀 Running ${replacementC3Command}...`);
281282

283+
// if telemetry is disabled in wrangler, prevent c3 from sending metrics too
284+
const metricsConfig = readMetricsConfig();
285+
282286
await execa(packageManager.type, c3Arguments, {
283287
stdio: "inherit",
288+
...(metricsConfig.permission?.enabled === false && {
289+
env: { CREATE_CLOUDFLARE_TELEMETRY_DISABLED: "1" },
290+
}),
284291
});
285292

286293
return;

0 commit comments

Comments
 (0)