我在一条azure devops管道中运行pulumi。我需要找到管道服务主体ObjectId
var clientConfig = Output.Create(Pulumi.Azure.Core.Invokes.GetClientConfig());
var clientId = clientConfig.Apply(c => c.ObjectId);这给了我作为输出的应用程序ObjectId,现在我如何才能找到我的服务主体ObjectId。
我不能这样做,因为clientId是Output<string>,而ObjectId需要string
var adApp = Output.Create(Pulumi.AzureAD.Invokes.GetApplication(new GetApplicationArgs { ObjectId = clientId}));
var adSp = Output.Create(Pulumi.AzureAD.Invokes.GetServicePrincipal(new GetServicePrincipalArgs { ApplicationId = adApp.App(a => a.ApplicationId)});发布于 2020-03-25 23:31:43
您应该在这里使用Apply方法:
var adApp = clientId.Apply(id =>
Pulumi.AzureAD.Invokes.GetApplication(
new GetApplicationArgs { ObjectId = id }));
var adSp = adApp.ApplicationId.Apply(appid =>
Pulumi.AzureAD.Invokes.GetServicePrincipal(
new GetServicePrincipalArgs { ApplicationId = appid }));https://stackoverflow.com/questions/60851722
复制相似问题