如何在未安装 cdk 时使用上下文参数执行 cdk 命令,即使用 npm 运行 cdk?
How to execute cdk commands with contextual parameters when cdk is not installed i.e., using npm run cdk?
我有一个名为 Temp 的 cdk 堆栈,我想向其传递上下文参数。
new MyStack(app, `Temp`);
当我运行在bash中执行以下命令时,我成功获得了合成模板:
cdk synth Temp -c param1=abc
然而,当我 运行 以下内容时,我收到一条错误消息 找不到匹配 'param1=abc' 的堆栈。使用"list"打印清单
npm run cdk synth Temp -c param1=abc
请指教如何在未安装 cdk 时使用上下文参数执行 cdk synth?
使用 CfnParameter
将参数传递给您的堆栈,检查 CfnParameter
API link
首先创建你的 CfnParameter
:
const parameterName = new CfnParameter(this, "parameterName", {type:"String"});
将其传递到您的堆栈:
new MyStack(app, 'Temp', { paramPassed: parameterName.valueAsString});
运行 cdk 合成器:
cdk synth
将参数传递给您的堆栈:
cdk deploy Temp --parameters parameterName=stackParamValue
检查这个 documentation 由 AWS
提供
它的工作原理是添加 -- 如下:
npm run cdk synth Temp -- -c param1=abc
感谢https://jurosh.com/blog/npm-pass-parameters-into-script
我们可以使用特殊的 npm 命令——并将参数直接传递到所有 运行 脚本中。像这样:npm start -- --server=localhost
我有一个名为 Temp 的 cdk 堆栈,我想向其传递上下文参数。
new MyStack(app, `Temp`);
当我运行在bash中执行以下命令时,我成功获得了合成模板:
cdk synth Temp -c param1=abc
然而,当我 运行 以下内容时,我收到一条错误消息 找不到匹配 'param1=abc' 的堆栈。使用"list"打印清单
npm run cdk synth Temp -c param1=abc
请指教如何在未安装 cdk 时使用上下文参数执行 cdk synth?
使用 CfnParameter
将参数传递给您的堆栈,检查 CfnParameter
API link
首先创建你的
CfnParameter
:const parameterName = new CfnParameter(this, "parameterName", {type:"String"});
将其传递到您的堆栈:
new MyStack(app, 'Temp', { paramPassed: parameterName.valueAsString});
运行 cdk 合成器:
cdk synth
将参数传递给您的堆栈:
cdk deploy Temp --parameters parameterName=stackParamValue
检查这个 documentation 由 AWS
提供它的工作原理是添加 -- 如下:
npm run cdk synth Temp -- -c param1=abc
感谢https://jurosh.com/blog/npm-pass-parameters-into-script
我们可以使用特殊的 npm 命令——并将参数直接传递到所有 运行 脚本中。像这样:npm start -- --server=localhost