我正在使用 pulumi 的 Typescript API。我注意到,当我调用console.log("\n\n")
pulumi 时,会去掉换行符。我想保留这些换行符以提高部署日志的可读性。
有没有办法指示 pulumi 在输出日志中保留换行符?
我正在使用 pulumi 的 Typescript API。我注意到,当我调用console.log("\n\n")
pulumi 时,会去掉换行符。我想保留这些换行符以提高部署日志的可读性。
有没有办法指示 pulumi 在输出日志中保留换行符?
Pulumi CLI 的当前行为是将您的消息分成几行(用 分割\n
)、修剪每一行、删除空行并显示结果。
虽然丑陋,但您可以使用额外的“零宽度空格”字符强制换行:
console.log("Top line");
console.log("\u200B\n\u200B\n\u200B");
console.log("There will be three empty lines before this line");
您可以使用更简单的东西_
来代替零宽度空间。显然,下划线将是可见的。
跟踪此问题以获得进一步的进展。
Pulumi 不应剥离换行符或以其他方式操纵您的console.log()
输出。我刚刚对此进行了测试,并且带有换行符的字符串按预期使用换行符打印。
代码
import * as aws from "@pulumi/aws";
const bucket = new aws.s3.Bucket("main", {
acl: "private",
})
bucket.onObjectCreated("logger", new aws.lambda.CallbackFunction<aws.s3.BucketEvent, void>("loggerFn", {
memorySize: 128,
callback: (e) => {
for (const rec of e.Records || []) {
const [buck, key] = [rec.s3.bucket.name, rec.s3.object.key];
console.log(`Object created: ${buck}/${key}`);
}
},
}));
console.log(`My
multi-line
string`);
export const bucketName = bucket.bucket;
输出
$ pulumi up -y
Previewing update (dev):
Type Name Plan Info
+ pulumi:pulumi:Stack demo-aws-ts-serverless-dev create 3 ...
+ └─ aws:lambda:Function loggerFn create
Diagnostics:
pulumi:pulumi:Stack (demo-aws-ts-serverless-dev):
My
multi-line
string
Resources:
+ 8 to create
Updating (dev):
Type Name Status Info
+ pulumi:pulumi:Stack demo-aws-ts-serverless-dev created ...
+ └─ aws:lambda:Function loggerFn created
Diagnostics:
pulumi:pulumi:Stack (demo-aws-ts-serverless-dev):
My
multi-line
string
Outputs:
bucketName: "main-b568df3"
Resources:
+ 8 created
...