AWS Cloud Development Kit (AWS CDK) — это среда разработки программного обеспечения с открытым исходным кодом, позволяющая определять облачную инфраструктуру в коде и предоставлять ее через AWS CloudFormation. При развертывании стеков AWS CDK иногда необходимо получить имя стека динамически из кода стека.

Чтобы получить имя стека в AWS CDK, вы можете использовать следующий фрагмент кода:

import * as cdk from 'aws-cdk-lib';

const app = new cdk.App();
const stackName = app.node.tryGetContext('stackName');

Функция cdk.App() создает экземпляр класса cdk.App, который представляет приложение AWS CDK. Метод `tryGetContext()` класса `cdk.App` извлекает значение переменной контекста по имени.

Чтобы установить имя стека в качестве переменной контекста, вы можете использовать параметр `— context` при развертывании стека с помощью команды `cdk deploy`. Например, чтобы установить имя стека как «MyStack», вы можете запустить следующую команду:

cdk deploy --context stackName=MyStack

Как только имя стека задано как переменная контекста, вы можете получить его, используя приведенный выше фрагмент кода.

В заключение, получить имя стека динамически в AWS CDK можно с помощью класса cdk.App и метода tryGetContext(). Установив имя стека в качестве переменной контекста во время развертывания, вы можете получить его из кода стека и использовать для любых необходимых операций.