Pulumi: манипулировать строкой соединения во время развертывания

Я использую Pulumi для развертывания нескольких ресурсов Azure, что отлично работает.

Я развертываю TopicAuthorizationRule, и мне нужно манипулировать строкой соединения, чтобы она работала с триггером функций Azure.

const myPolicy = new azure.eventhub.TopicAuthorizationRule(...);

const myPolicyConnectionString = myPolicy.primaryConnectionString.get();

const goodConnectionString = myPolicyConnectionString .substr(0, myPolicyConnectionString .lastIndexOf(';EntityPath'));

И у меня есть эта ошибка: не могу вызвать ".get" во время обновления или предварительного просмотра

Как я могу сделать эту строковую манипуляцию, чтобы установить ее в AppSettings?

1 ответ

Решение

Значение строки подключения пока неизвестно во время предварительного просмотра, поэтому вы не можете использовать его напрямую. Содержится в значении типа Output<T> который будет решен в update время.

Вы можете преобразовать значения Output<T> используя apply функция:

const goodConnectionString = 
    myPolicy.primaryConnectionString.apply(s => s.substr(0, s.lastIndexOf(';EntityPath'));

который затем может быть использован для назначения AppSettings (без звонка get явно).

Другие вопросы по тегам