From 74185d1460dffe9b277631eaac78f008401be76f Mon Sep 17 00:00:00 2001 From: Eli Polonsky Date: Wed, 23 Jul 2025 09:32:50 +0300 Subject: [PATCH] mid work --- ...lemetry-send-to-file-unstable.integtest.ts | 19 +++++++++++++++++++ packages/aws-cdk/lib/cli/cli.ts | 8 ++++---- 2 files changed, 23 insertions(+), 4 deletions(-) create mode 100644 packages/@aws-cdk-testing/cli-integ/tests/cli-integ-tests/cli-telemetry/cdk-cli-telemetry-send-to-file-unstable.integtest.ts diff --git a/packages/@aws-cdk-testing/cli-integ/tests/cli-integ-tests/cli-telemetry/cdk-cli-telemetry-send-to-file-unstable.integtest.ts b/packages/@aws-cdk-testing/cli-integ/tests/cli-integ-tests/cli-telemetry/cdk-cli-telemetry-send-to-file-unstable.integtest.ts new file mode 100644 index 000000000..736d96c35 --- /dev/null +++ b/packages/@aws-cdk-testing/cli-integ/tests/cli-integ-tests/cli-telemetry/cdk-cli-telemetry-send-to-file-unstable.integtest.ts @@ -0,0 +1,19 @@ +import * as path from 'path'; +import * as fs from 'fs-extra'; +import { integTest, withDefaultFixture } from '../../../lib'; + +jest.setTimeout(2 * 60 * 60_000); // Includes the time to acquire locks, worst-case single-threaded runtime + +integTest( + 'sending cli telemetry to file fails if not invoked with --unstable', + withDefaultFixture(async (fixture) => { + const telemetryFile = path.join(fixture.integTestDir, `telemetry-${Date.now()}.json`); + try { + await fixture.cdk(['list', `--telemetry-file=${telemetryFile}`]); + throw new Error('Expected command to fail'); + } catch (error) { + expect(fs.existsSync(telemetryFile)).toBeFalsy(); + expect(fixture.output.toString()).toContain('Unstable feature use'); + } + }), +); diff --git a/packages/aws-cdk/lib/cli/cli.ts b/packages/aws-cdk/lib/cli/cli.ts index d9d21e743..fedea4592 100644 --- a/packages/aws-cdk/lib/cli/cli.ts +++ b/packages/aws-cdk/lib/cli/cli.ts @@ -99,6 +99,10 @@ export async function exec(args: string[], synthesizer?: Synthesizer): Promise