Pulumi:查询pulumi堆栈值(如果未给出)

时间:2019-02-21 15:49:32

标签: azure pulumi

这是我的用例:

我只有在构建机器上存在文件(CI服务器中的artifcat)时才创建一个blob资源。

现在,我可能必须在不存在该文件的本地计算机上运行pulumi。但是我不想删除Blob资源。该blob仍存在于Azure上。

if (fs.existsSync(fullFileName)) {
    // On the build server, I update the blob with the new artifact
    const blob = new azure.storage.Blob("myblob-b", {
                    name: fileName,
                    source: fullFileName,
                    resourceGroupName: resourceGroup.name,
                    storageAccountName: storageAccount.name,
                    storageContainerName: zipDeployContainer.name,
                    type: "block"
                })
} else {
    // On my local machine, the artifact does not exists but I want to keep it
    const stackRef = new pulumi.StackReference(`${organization}/${projectName}/${stackName}`);
    const srblob = stackRef.getOutput("zipblob");
    // How do I tell pulumi keep the resource from the stack reference
}

export const zipblob = blob;

1 个答案:

答案 0 :(得分:0)

好吧,我对此并不足够聪明,穿着宽松衣服的人帮助了我。基本上,您可以使用StackReference。特别是getOutput方法。