hundreds-article-77945
12/17/2021, 8:26 PMpulumi.StringPtrOutput
with pulumi.Sprintf
? I’m getting this: "serviceAccount:<...>.svc.id.goog[%!s(*string=0x140001425d0)/%!s(*string=0x140006169b0)]"
from:
pulumi.Sprintf("serviceAccount:%s.svc.id.goog[%v/%v]", config.Require(ctx, "gcp:project"), namespace.Metadata.Name(), ksa.Metadata.Name()),
The first arg is a string, but the latter two are string pointers.ApplyT
func that converts it to a string from a string pointer// UnwrapString converts a StringPtrOutput to a StringOutput.
//
// If the string is `nil`, an empty string will be returned.
func UnwrapString(sp pulumi.StringPtrOutput) pulumi.StringOutput {
return sp.ApplyT(func(v *string) string {
if v == nil {
return ""
}
return *v
}).(pulumi.StringOutput)
}
pulumi.Sprintf("serviceAccount:%s.svc.id.goog[%v/%v]", config.Require(ctx, "gcp:project"), UnwrapString(namespace.Metadata.Name()), UnwrapString(ksa.Metadata.Name()))
.Elem()
!